system === 'EXCHANGE') { if($this->owner_type === Transaction::class){ $transaction = Transaction::find($this->owner_id); if($transaction->owner_type === Booking::class){ $reference = $transaction->owner->marking; $referenceLink = route('booking.details', $transaction->owner->marking); } if($transaction->owner_type === Wallet::class) { $reference = $transaction->owner->owner->reference; $referenceLink = route('wallet.details', $transaction->owner->owner->reference); } } if($this->owner_type === Group::class){ $transaction = Group::find($this->owner_id); $reference = $transaction->reference; // $referenceLink = route('booking.details', $transaction->owner->marking); } } if($this->system === 'SHIPPING_PORTAL') { if($this->owner_type === Transaction::class){ $transaction = Transaction::find($this->owner_id); } } return [ 'id' => $this->id, 'type' => $this->type, 'system' => $this->system, 'owner_type' => $this->owner_type, 'owner_id' => $this->owner_id, 'reference_link' => $referenceLink, 'reference' => $reference, 'invoice_reference' => $this->invoice_reference, 'receipt_reference' => $this->receipt_reference, 'status' => $this->status ]; } }