belongsTo($this->entity_type, 'entity_id'); } public function voucher() { return $this->belongsTo(Voucher::class, 'entity_id'); } public function sale() { return $this->belongsTo(Sale::class, 'sale_id'); } public function shareWord(): Attribute { return Attribute::make(get: function () { $item = json_decode($this->additional_info_json); if ($item == null) { return ''; } $string = "Hai, aku baru beli voucher {$item->voucher->location->name} di ".route('home.index'); $string .= " voucher {$item->voucher->display_quota} buat {$item->voucher->display_expired} Username : {$item->voucher->username} Password : {$item->voucher->password} "; $string .= 'Cuman Rp'.number_format($this->price, is_float($this->price) ? 2 : 0, ',', '.').' aja, '; if ($item->voucher->discount > 0) { $string .= "lagi ada discount {$item->voucher->discount}% loh. "; } $string .= 'dapatkat penawaran voucher lainnya di '.route('home.index'); return $string; }); } }