hasMany(Address::class, 'company_id', 'id'); } /** * @return HasMany */ public function contacts(): hasMany { return $this->hasMany(Contact::class, 'company_id', 'id'); } /** * @return HasOne */ public function deliveryAddress(): hasOne { return $this->hasOne(Address::class)->where('default', 1); } /** * @return HasMany */ public function modules(): hasMany { return $this->hasMany(CompanyModule::class); } /** * @return hasManyThrough */ public function employees(): hasManyThrough { return $this->hasManyThrough(User::class, CompanyEmployee::class); } /** * @return HasManyThrough */ public function connections(): hasManyThrough { return $this->hasManyThrough(Company::class, CompanyConnections::class); } /** * @return MorphMany */ public function documents(): morphMany { return $this->morphMany(Document::class, 'owner'); } /** * @return HasMany */ public function orders(): hasMany { return $this->hasMany(Order::class); } }