entityType = $entityType; $this->entityManager = $entityManager; } protected function getSeed() : Entity { return $this->seed ?? $this->entityManager->getEntity($this->entityType); } public function hasAssignedUsersField() : bool { if ( $this->getSeed()->hasRelation('assignedUsers') && $this->getSeed()->hasAttribute('assignedUsersIds') ) { return true; } return false; } public function hasAssignedUserField() : bool { if ($this->getSeed()->hasAttribute('assignedUserId')) { return true; } return false; } public function hasCreatedByField() : bool { if ($this->getSeed()->hasAttribute('createdById')) { return true; } return false; } public function hasTeamsField() : bool { if ( $this->getSeed()->hasRelation('teams') && $this->getSeed()->hasAttribute('teamsIds') ) { return true; } return false; } public function hasContactField() : bool { return $this->getSeed()->hasAttribute('contactId') && $this->getSeed()->getRelationParam('contact', 'entity') === 'Contact'; } public function hasContactsRelation() : bool { return $this->getSeed()->hasRelation('contacts') && $this->getSeed()->getRelationParam('contacts', 'entity') === 'Contact'; } public function hasParentField() : bool { return $this->getSeed()->hasAttribute('parentId') && $this->getSeed()->hasRelation('parent'); } public function hasAccountField() : bool { return $this->getSeed()->hasAttribute('accountId') && $this->getSeed()->getRelationParam('account', 'entity') === 'Account'; } public function hasAccountsRelation() : bool { return $this->getSeed()->hasRelation('accounts') && $this->getSeed()->getRelationParam('accounts', 'entity') === 'Account'; } }