'date:Y-m-d', 'sign_at' => 'date:Y-m-d', ]; public function receivers(){ return $this->belongsToMany(User::class, 'document_receivers')->withPivot(['seen']);; } public function organizes(){ return $this->belongsToMany(Organize::class, 'document_organizes'); } public function type(){ return $this->belongsTo(DocumentType::class, 'type_id'); } public function attachments(){ return $this->hasMany(Attachment::class); } public function book(){ return $this->belongsTo(Book::class); } public function publisher(){ return $this->belongsTo(Organize::class, 'publisher_id'); } public function signer(){ return $this->belongsTo(Signer::class); } public function creator(){ return $this->belongsTo(User::class, 'creator_id'); } public function writer(){ return $this->belongsTo(User::class, 'writer_id'); } public function linkTo(){ return $this->belongsTo(Document::class, 'link_id'); } public function linked(){ return $this->hasMany(Document::class, 'link_id'); } public function getSeenAttribute(){ $receiver = $this->receivers()->where('id', auth()->id())->first(); if($receiver){ return $receiver->pivot->seen; } return true; } }