'array', 'start_date' => 'date', 'end_date' => 'date', 'is_archived' => 'boolean', 'budget' => 'decimal:2', 'estimated_hours' => 'decimal:2', 'actual_hours' => 'decimal:2', ]; public function projectManager(): BelongsTo { return $this->belongsTo(User::class, 'project_manager_id'); } public function department(): BelongsTo { return $this->belongsTo(Department::class); } public function creator(): BelongsTo { return $this->belongsTo(User::class, 'created_by'); } public function members(): BelongsToMany { return $this->belongsToMany(User::class, 'project_user')->withPivot('role_in_project')->withTimestamps(); } public function tasks(): HasMany { return $this->hasMany(Task::class); } public function sprints(): HasMany { return $this->hasMany(Sprint::class); } public function meetings(): HasMany { return $this->hasMany(Meeting::class); } public function backlogItems(): HasMany { return $this->hasMany(BacklogItem::class); } }