Všetky balíky
Requests for Laravel
Predvoľby workflowov
Opakovane používajte nastavenie pravidla, kvóra a stupňov z config('approvals.workflows'):
// config/approvals.php
'workflows' => [
'payout' => ['rule' => 'quorum', 'quorum' => 2, 'required_approvers' => 3],
'release' => ['stages' => [
['rule' => 'unanimous', 'required_approvers' => 2, 'name' => 'engineering'],
['rule' => 'any', 'required_approvers' => 1, 'name' => 'product'],
]],
],Žiadosť potom otvoríte podľa názvu predvoľby:
// Flat preset — supply the approvers:
Requests::make()->workflow('payout')->requireApprovalsFrom([$a, $b, $c])->create();
// Staged preset — one approver group per stage:
Requests::make()->workflow('release')->stageApprovers([[$eng1, $eng2], [$product]])->create();- Jednoduché predvoľby použijú modely schvaľovateľov odovzdané cez requireApprovalsFrom(); samotné id sa odmietne výnimkou InvalidApprover.
- Viacstupňové predvoľby dostanú jednu skupinu schvaľovateľov na stupeň cez stageApprovers().
- Workflow má prednosť pred stages() aj pred jednoduchým zoznamom schvaľovateľov.
- Pri viacstupňových predvoľbách platí reject_on_stage_rejection z predvoľby, nie rejectOnStageRejection() z buildera.
- Neznáma alebo chybná predvoľba vyhodí výnimku enginu UnknownWorkflowException.
Kľúče predvoľby
| Kľúč | Platí pre | Význam |
|---|---|---|
rule | jednoduchú predvoľbu, každý stupeň | unanimous, quorum, any alebo weighted (predvolene unanimous). |
quorum | jednoduchú predvoľbu, každý stupeň | Celočíselná hranica pre quorum / weighted. |
required_approvers | jednoduchú predvoľbu, každý stupeň | Koľko schvaľovateľov pravidlo počíta; pri každom stupni povinné a kladné. |
name | každý stupeň | Názov stupňa, dostupný cez currentStage()->name. |
stages | viacstupňovú predvoľbu | Neprázdny zoznam polí stupňov — jeho prítomnosť robí predvoľbu viacstupňovou. |
reject_on_stage_rejection | viacstupňovú predvoľbu | Či zamietnutý stupeň zamietne celú žiadosť (predvolene true). |
expiry | akúkoľvek predvoľbu | Sekundy, po ktorých schvaľovacia požiadavka enginu vyprší — nezávisle od expires_at samotnej žiadosti. |
Prejavte lásku k open source
Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.
Ďalšie spôsoby podpory vrátane kryptomienOdoslaním daru súhlasíte s našimi podmienkami prijímania darov.
Chcete to zabudovať do svojho produktu?
Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.