'integer', 'reviewed_at' => 'datetime', ]; protected static function booted(): void { static::creating(function (self $model) { if ( $model->decision !== 'pending' && empty($model->reviewed_by) && auth()->check() ) { $model->reviewed_by = auth()->id(); } if ( $model->decision !== 'pending' && empty($model->reviewed_at) ) { $model->reviewed_at = now(); } }); } public function shipment(): BelongsTo { return $this->belongsTo(Shipment::class); } public function reviewedBy(): BelongsTo { return $this->belongsTo(User::class, 'reviewed_by'); } }