BelongsTo(CompanyModule::class); } /** * @return BelongsTo */ public function invitee(): BelongsTo { return $this->BelongsTo(CompanyModule::class); } /** * @param Builder $query * @return Builder */ public function scopeApproved(Builder $query) { return $query->whereIn('status', [ApprovalStatus::APPROVED, ApprovalStatus::COMPLETED]); } /** * @return belongsToMany */ public function segments(): belongsToMany { return $this->belongsToMany(Segment::class, (new ConnectionSegment())->getTable(), 'company_connection_id', 'segment_id'); } /** * @return belongsToMany */ public function connectionSegments(): HasMany { return $this->hasMany(ConnectionSegment::class, 'company_connection_id'); } }