NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky
Requests for Laravel

Fasáda Requests

Odporúčaným vstupným bodom je fasáda Requests. Plne kvalifikovaná RoundlyConsulting\Requests\Facades\Requests funguje vždy; ak je názov voľný, zaregistruje sa aj krátky alias Requests. Stojí za ňou RequestManager, takže každé volanie nižšie funguje aj na injektovanom manažéri (pozri DI, akcie a DTO). Celý rozsah fasády:

use RoundlyConsulting\Requests\Enums\Status;
use RoundlyConsulting\Requests\Facades\Requests;

// Create — fluently, or from a ready DTO
$request = Requests::make()->author($user)->title('Expense reimbursement')
    ->requireApprovalsFrom([$alice, $bob])->create();
$request = Requests::create($dto);

// Decide — the reason is optional
Requests::approve($request, $alice, reason: 'Within budget');
Requests::reject($request, $carol, reason: 'Out of policy');
Requests::reopen($request, $alice);        // back to New — a finished round reopens fresh

// Close
Requests::cancel($request);                // status = Cancelled
Requests::expire($request);                // status = Expired
Requests::expireDue();                     // int — expire every open, past-due request

// Ask the lifecycle graph
Requests::canTransition($request, Status::Approved);   // bool

Prehľad metód

MetódaVraciaÚčel
make()RequestBuilderZačne fluentnú žiadosť; ->create() ju uloží.
create(CreateRequestDto $dto)RequestVytvorí žiadosť z hotového DTO.
approve($request, $actor, ?$reason)RequestZaznamená schválenie; kedy sa žiadosť prepne, určí pravidlo.
reject($request, $actor, ?$reason)RequestZaznamená zamietnutie.
reopen($request, $actor, ?$reason)RequestSpäť do New; stiahne rozhodnutie aktéra, alebo po skončenom kole otvorí nové.
cancel($request)RequestStav Cancelled; uzavrie otvorené schvaľovacie kolo.
expire($request)RequestStav Expired; uzavrie otvorené schvaľovacie kolo.
expireDue(bool $dryRun = false, int $chunk = 500)intNechá expirovať každú otvorenú žiadosť po termíne; skúšobný beh ich len spočíta.
canTransition($request, Status $to)boolČi graf životného cyklu prechod povoľuje.
fake()RequestsFakeVymení manažér za zaznamenávajúci fake — pozri Testovanie.

approve(), reject() a reopen() prijímajú akýkoľvek model s rozhraním GivesApprovalsInterface. Fluentný builder za make() opisuje časť Vytváranie žiadostí.

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 kryptomien

Odoslaní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.