'date', 'final_submission_date' => 'date', 'assignment_deadline' => 'date', 'verification_deadline' => 'date', 'payment_amount' => 'integer', 'payment_date' => 'date', 'status' => CooperationStatus::class, ]; } public function proposals(): HasMany { return $this->hasMany(CooperationProposal::class); } public function taskAssignments(): HasMany { return $this->hasMany(TaskAssignment::class); } public function cooperationMedia(): HasMany { return $this->hasMany(CooperationMedia::class); } public function partnerMedia(): BelongsToMany { return $this->belongsToMany(PartnerMedia::class, 'cooperation_media') ->withPivot(['status']) ->withTimestamps(); } public function reports(): HasManyThrough { return $this->hasManyThrough(Report::class, TaskAssignment::class); } }