PHP code example of dev-bumba / laraflow

1. Go to this page and download the library: Download dev-bumba/laraflow library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

dev-bumba / laraflow example snippets


return [
    'monitored_models' => [
        App\Models\Reclamacao::class,
        App\Models\PropostaCredito::class,
    ],
    'concurrency' => [
        'timeout_seconds' => 10,
    ],
    'compliance' => [
        'system_user_id' => 1, // Fallback para transições via CLI/Cron
    ],
];

use LaraFlow\Traits\HasStateHistory;
use Spatie\ModelStates\HasStates;

class Reclamacao extends Model
{
    use HasStates, HasStateHistory;

    protected function registerStates(): void
    {
        $this->addState('status', ReclamacaoStatus::class)
            ->transitionTo(Rececionada::class, GenericTransition::class);
    }
}

$reclamacao->status->transitionTo(Rececionada::class, [
    'roles' => ['analista-compliance'],
    'payload' => [
        'complaint_id' => $reclamacao->id,
        'user_id'      => auth()->id(),
        'parecer'      => 'Análise concluída com base nos termos regulatórios vigentes.',
    ]
]);

$schedule->command('workflow:check-slas')->everyMinute();
bash
php artisan vendor:publish --tag=laraflow-config
bash
php artisan migrate
bash
php artisan laraflow:audit "App\Models\Reclamacao" 1042
bash
php artisan laraflow:force "App\Models\Reclamacao" 1042 "App\States\Rececionada" --reason="Chamado técnico #9021"
bash
php artisan laraflow:bottlenecks "App\Models\Reclamacao"
bash
php artisan laraflow:visualize "App\States\ReclamacaoStatus"
bash
php artisan make:workflow Complaint
text
app/States/Complaint/
├── ComplaintStatus.php          # Classe principal da Máquina de Estados
├── Guards/
│   └── ValidarComplaint.php     # Guard de validação de regras de negócio
└── Actions/
    └── ExecutarAcaoComplaint.php  # Action de efeito colateral pós-transição