Inštalácia
Pridajte balík. Service provider, alias fasády Approvals aj globálny pomocník approvals() sa načítajú automaticky — nič nemusíte registrovať:
composer require roundly-consulting/approvals-for-laravel
php artisan vendor:publish --tag="approvals-migrations"
php artisan migrateMigrácie iba na publikovanie
Migrácie sa nenačítavajú automaticky — php artisan migrate nevytvorí nič, kým ich nepublikujete. Šesť súborov sa uloží do database/migrations s časovými značkami, ktoré zachovajú ich poradie, takže migrate vytvorí štyri tabuľky a aplikuje dve rozšírenia schémy v poradí, v akom na sebe závisia:
| # | Migrácia | Čo robí |
|---|---|---|
| 1 | 0001_create_approvals_table | Tabuľka rozhodnutí approvals. |
| 2 | 0002_create_approval_requests_table | Žiadosti pre viacerých schvaľovateľov approval_requests. |
| 3 | 0003_add_v11_columns_to_approvals_table | Pridá decided_by (delegovanie), weight a approval_request_stage_id. |
| 4 | 0004_add_staging_to_approval_requests_table | Pridá staged, reject_on_stage_rejection a workflow. |
| 5 | 0005_create_approval_request_stages_table | Tabuľka approval_request_stages pre viacstupňové schvaľovanie. |
| 6 | 0006_create_approval_delegations_table | Tabuľka approval_delegations. |
Používajú modely, ktoré schvaľujú alebo sú schvaľované, UUID či ULID kľúče? Pred migráciou nastavte key_type — určuje typ všetkých polymorfných id stĺpcov (pozri Modely a schéma).
Konfigurácia (voliteľná)
Balík funguje bez akejkoľvek konfigurácie v aplikácii. Konfiguráciu publikujte, len keď chcete zmeniť niektorú predvolenú hodnotu:
php artisan vendor:publish --tag="approvals-config"Jediné publikačné tagy sú approvals-migrations a approvals-config — balík nemá vlastné views ani preklady.
Ďalšie kroky
- Pridajte GivesApprovals na model, ktorý rozhoduje, a HasApprovals na model, o ktorom sa rozhoduje.
- Pridajte RequiresApproval na všetko, čo potrebuje súhlas viacerých schvaľovateľov.
- Zaznamenajte prvé rozhodnutie cez fasádu Approvals.
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.