Files
ABSDEV/Modules/Automation/Models/Automation.php
T
Mark Gregory bf37548faa Automation administration dashboard
* Manual automations
* Scheduled automations
* Incoming webhook triggers
* Domain-event trigger foundation
* Ordered automation steps
* Queued execution
* Run status and execution history
* Per-step execution logs
* Continue-or-stop-on-failure control
* Email actions
* Outgoing webhook actions
* Application log actions
* Delay actions
* Secure incoming webhook secrets
* Automation trigger and action registries
* Extensible action and trigger contracts
* Scheduled automation Artisan command
* Administration navigation
* Automation permissions
* Module registration and boot test
2026-07-24 12:38:06 +01:00

13 lines
736 B
PHP

<?php
namespace Modules\Automation\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\HasMany;
final class Automation extends Model
{
protected $fillable=['name','description','trigger_type','trigger_config','status','stop_on_failure','run_count','last_ran_at','next_run_at','created_by'];
protected $casts=['trigger_config'=>'array','stop_on_failure'=>'boolean','last_ran_at'=>'datetime','next_run_at'=>'datetime'];
public function steps(): HasMany { return $this->hasMany(AutomationStep::class)->orderBy('position'); }
public function runs(): HasMany { return $this->hasMany(AutomationRun::class); }
public function isActive(): bool { return $this->status === 'active'; }
}