Files
core/src/Shipping/Models/Shipment.php
T

41 lines
940 B
PHP
Raw Normal View History

<?php
namespace Modules\Core\Shipping\Models;
use Illuminate\Database\Eloquent\Casts\AsArrayObject;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
2026-07-19 17:41:09 +03:00
use Illuminate\Database\Eloquent\Relations\HasMany;
use Lunar\Models\Order;
class Shipment extends Model
{
protected $guarded = [];
protected $casts = [
'meta' => AsArrayObject::class,
'label_printed_at' => 'datetime',
'cancelled_at' => 'datetime',
];
public function order(): BelongsTo
{
return $this->belongsTo(Order::class);
}
2026-07-19 17:41:09 +03:00
public function manifest(): BelongsTo
{
return $this->belongsTo(Manifest::class);
}
2026-07-19 17:41:09 +03:00
public function shipmentInfo(): HasMany
{
return $this->hasMany(ShipmentInfo::class);
}
public function latestShipmentInfo(): ?ShipmentInfo
{
return $this->shipmentInfo()->latest('occurred_at')->first();
}
}