hasMany(Deal::class, 'client_id'); } public function dealsWithContracts() { return $this->hasMany(Deal::class, 'client_id')->whereHas('contracts'); } public function ofAgent(Agent $agent) { return $this->deals->where('agent_id', $agent->id); } }