GateDefinition
GateDefinition entity - Define un gate (palanca de control). Configuracion data-driven de los gates del sistema. Cada gate tiene roles requeridos para solicitar y aprobar, politica de aprobacion y tipos de evidencia necesarios.
GateDefinition::__construct()
public function __construct():GateDefinition::onPreUpdate()
public function onPreUpdate(): voidGateDefinition::getId()
public function getId(): intGateDefinition::getDomain()
public function getDomain(): stringGateDefinition::getCode()
public function getCode(): stringGateDefinition::getName()
public function getName(): stringGateDefinition::getDescription()
public function getDescription(): ?stringGateDefinition::getRequesterRole()
public function getRequesterRole(): stringGateDefinition::getApproverRole()
public function getApproverRole(): stringGateDefinition::getApprovalPolicy()
public function getApprovalPolicy(): Milpa\Workflow\Enums\ApprovalPolicyReturns the approval policy as an {@see ApprovalPolicy} enum case.
GateDefinition::getApprovalPolicyValue()
public function getApprovalPolicyValue(): stringGateDefinition::getRequiredEvidenceTypes()
public function getRequiredEvidenceTypes(): ?arrayGateDefinition::getRequiredFields()
public function getRequiredFields(): ?arrayGateDefinition::isWaivable()
public function isWaivable(): boolGateDefinition::getFailureAction()
public function getFailureAction(): ?stringGateDefinition::getSuccessAutoActions()
public function getSuccessAutoActions(): ?arrayGateDefinition::getSortOrder()
public function getSortOrder(): intGateDefinition::getMetadata()
public function getMetadata(): ?arrayGateDefinition::getCreatedAt()
public function getCreatedAt(): DateTimeGateDefinition::getUpdatedAt()
public function getUpdatedAt(): DateTimeGateDefinition::getTransitions()
public function getTransitions(): Doctrine\Common\Collections\CollectionGateDefinition::getPassages()
public function getPassages(): Doctrine\Common\Collections\CollectionGateDefinition::setDomain()
public function setDomain(string $domain): selfSets the domain this gate belongs to (e.g. "opportunity", "project").
Parameters
| Name | Type | Description |
|---|---|---|
| $domain | string |
GateDefinition::setCode()
public function setCode(string $code): selfSets the gate's unique code within its domain.
Parameters
| Name | Type | Description |
|---|---|---|
| $code | string |
GateDefinition::setName()
public function setName(string $name): selfSets the gate's human-readable name.
Parameters
| Name | Type | Description |
|---|---|---|
| $name | string |
GateDefinition::setDescription()
public function setDescription(?string $description): selfSets the gate's optional description of its purpose.
Parameters
| Name | Type | Description |
|---|---|---|
| $description | ?string |
GateDefinition::setRequesterRole()
public function setRequesterRole(string $requesterRole): selfSets the role allowed to request this gate.
Parameters
| Name | Type | Description |
|---|---|---|
| $requesterRole | string |
GateDefinition::setApproverRole()
public function setApproverRole(string $approverRole): selfSets the role allowed to approve this gate.
Parameters
| Name | Type | Description |
|---|---|---|
| $approverRole | string |
GateDefinition::setApprovalPolicy()
public function setApprovalPolicy(Milpa\Workflow\Enums\ApprovalPolicy $approvalPolicy): selfSets the gate's approval policy.
Parameters
| Name | Type | Description |
|---|---|---|
| $approvalPolicy | Milpa\Workflow\Enums\ApprovalPolicy |
GateDefinition::setRequiredEvidenceTypes()
public function setRequiredEvidenceTypes(?array $requiredEvidenceTypes): selfSets the evidence types required to pass this gate.
Parameters
| Name | Type | Description |
|---|---|---|
| $requiredEvidenceTypes | (array<string> | null) |
GateDefinition::setRequiredFields()
public function setRequiredFields(?array $requiredFields): selfSets the fields required in the gate passage's metadata.
Parameters
| Name | Type | Description |
|---|---|---|
| $requiredFields | (array<string> | null) |
GateDefinition::setIsWaivable()
public function setIsWaivable(bool $isWaivable): selfSets whether this gate can be waived by an authorized role.
Parameters
| Name | Type | Description |
|---|---|---|
| $isWaivable | bool |
GateDefinition::setFailureAction()
public function setFailureAction(?string $failureAction): selfSets the action taken when this gate fails ("block" or "warn").
Parameters
| Name | Type | Description |
|---|---|---|
| $failureAction | ?string |
GateDefinition::setSuccessAutoActions()
public function setSuccessAutoActions(?array $successAutoActions): selfSets the automatic actions run when this gate is approved.
Parameters
| Name | Type | Description |
|---|---|---|
| $successAutoActions | (array<string> | null) |
GateDefinition::setSortOrder()
public function setSortOrder(int $sortOrder): selfSets the gate's display sort order.
Parameters
| Name | Type | Description |
|---|---|---|
| $sortOrder | int |
GateDefinition::setMetadata()
public function setMetadata(?array $metadata): selfSets additional metadata for the gate.
Parameters
| Name | Type | Description |
|---|---|---|
| $metadata | (array<string, mixed> | null) |
GateDefinition::blocksOnFailure()
public function blocksOnFailure(): boolChecks if the failure action blocks the transition.
GateDefinition::toArray()
public function toArray(): arrayConverts the entity to an array for API responses.