feat: establish reservation portal foundation
This commit is contained in:
47
app/Domain/Inventory/Models/SnipeAsset.php
Normal file
47
app/Domain/Inventory/Models/SnipeAsset.php
Normal file
@@ -0,0 +1,47 @@
|
||||
<?php
|
||||
|
||||
namespace App\Domain\Inventory\Models;
|
||||
|
||||
use App\Domain\Reservations\Models\AssetBlock;
|
||||
use App\Domain\Reservations\Models\ReservationItem;
|
||||
use Database\Factories\SnipeAssetFactory;
|
||||
use Illuminate\Database\Eloquent\Attributes\UseFactory;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
|
||||
#[UseFactory(SnipeAssetFactory::class)]
|
||||
class SnipeAsset extends Model
|
||||
{
|
||||
/** @use HasFactory<SnipeAssetFactory> */
|
||||
use HasFactory;
|
||||
|
||||
protected $fillable = [
|
||||
'snipe_asset_id', 'asset_tag', 'name', 'serial', 'model_id', 'model_name',
|
||||
'category_id', 'category_name', 'manufacturer', 'status_id', 'status_name',
|
||||
'location_id', 'location_name', 'requestable', 'assigned_type', 'assigned_id',
|
||||
'image_url', 'source_updated_at', 'synced_at', 'content_hash', 'active',
|
||||
];
|
||||
|
||||
protected function casts(): array
|
||||
{
|
||||
return [
|
||||
'requestable' => 'boolean',
|
||||
'active' => 'boolean',
|
||||
'source_updated_at' => 'datetime',
|
||||
'synced_at' => 'datetime',
|
||||
];
|
||||
}
|
||||
|
||||
/** @return HasMany<ReservationItem, $this> */
|
||||
public function reservationItems(): HasMany
|
||||
{
|
||||
return $this->hasMany(ReservationItem::class);
|
||||
}
|
||||
|
||||
/** @return HasMany<AssetBlock, $this> */
|
||||
public function blocks(): HasMany
|
||||
{
|
||||
return $this->hasMany(AssetBlock::class);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user