feat: complete equipment handover workflow
This commit is contained in:
@@ -28,9 +28,11 @@ enum ReservationStatus: string
|
||||
self::PendingApproval => [self::AwaitingInformation, self::Approved, self::Rejected, self::Cancelled, self::Expired],
|
||||
self::AwaitingInformation => [self::PendingApproval, self::Rejected, self::Cancelled, self::Expired],
|
||||
self::Approved => [self::Ready, self::Cancelled],
|
||||
self::Ready => [self::Delivered, self::NoShow, self::Cancelled],
|
||||
self::Ready => [self::Delivered, self::Incident, self::NoShow, self::Cancelled],
|
||||
self::Delivered => [self::InUse, self::Returned, self::Overdue, self::Incident],
|
||||
self::InUse, self::Overdue, self::Incident => [self::Returned],
|
||||
self::InUse => [self::Returned, self::Overdue, self::Incident],
|
||||
self::Overdue => [self::Returned, self::Incident],
|
||||
self::Incident => [self::Delivered, self::Returned, self::Completed],
|
||||
self::Returned => [self::Completed, self::Incident],
|
||||
self::Completed, self::Rejected, self::Cancelled, self::Expired, self::NoShow => [],
|
||||
};
|
||||
|
||||
@@ -3,10 +3,12 @@
|
||||
namespace App\Domain\Reservations\Models;
|
||||
|
||||
use App\Domain\Inventory\Models\SnipeAsset;
|
||||
use App\Domain\Operations\Models\HandoverRecord;
|
||||
use App\Domain\Reservations\Enums\ReservationItemStatus;
|
||||
use Carbon\CarbonImmutable;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
|
||||
/**
|
||||
* @property ReservationItemStatus $status
|
||||
@@ -44,4 +46,10 @@ class ReservationItem extends Model
|
||||
{
|
||||
return $this->belongsTo(SnipeAsset::class, 'snipe_asset_id');
|
||||
}
|
||||
|
||||
/** @return HasMany<HandoverRecord, $this> */
|
||||
public function handoverRecords(): HasMany
|
||||
{
|
||||
return $this->hasMany(HandoverRecord::class);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user