ProductionOrderDelivery.php 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Models;
  4. use Database\Factories\ProductionOrderDeliveryFactory;
  5. use Illuminate\Database\Eloquent\Factories\HasFactory;
  6. use Illuminate\Database\Eloquent\Model;
  7. use Illuminate\Database\Eloquent\Relations\BelongsTo;
  8. use Illuminate\Database\Eloquent\SoftDeletes;
  9. class ProductionOrderDelivery extends Model
  10. {
  11. /** @use HasFactory<ProductionOrderDeliveryFactory> */
  12. use HasFactory;
  13. use SoftDeletes;
  14. protected $fillable = [
  15. 'production_order_id',
  16. 'delivery_date',
  17. 'delivery_time',
  18. 'driver_id',
  19. 'carrier',
  20. 'request_number',
  21. 'request_date',
  22. 'carrier_note',
  23. 'contact_position',
  24. 'contact_name',
  25. 'contact_phone',
  26. 'desired_time',
  27. 'access_system',
  28. 'unloading_place',
  29. 'advance_notice',
  30. 'document_signing_method',
  31. 'has_passports_and_certificates',
  32. 'note',
  33. 'created_by',
  34. 'updated_by',
  35. ];
  36. protected function casts(): array
  37. {
  38. return [
  39. 'production_order_id' => 'integer',
  40. 'delivery_date' => 'immutable_date',
  41. 'request_date' => 'immutable_date',
  42. 'has_passports_and_certificates' => 'boolean',
  43. 'driver_id' => 'integer',
  44. 'created_by' => 'integer',
  45. 'updated_by' => 'integer',
  46. ];
  47. }
  48. public function productionOrder(): BelongsTo
  49. {
  50. return $this->belongsTo(ProductionOrder::class);
  51. }
  52. public function driver(): BelongsTo
  53. {
  54. return $this->belongsTo(User::class, 'driver_id');
  55. }
  56. }