StationTaskMaterialBox.php 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. <?php
  2. namespace App;
  3. use Illuminate\Database\Eloquent\Model;
  4. use Illuminate\Database\Eloquent\Relations\BelongsTo;
  5. use Illuminate\Database\Eloquent\Relations\HasOne;
  6. use Illuminate\Database\Eloquent\Relations\MorphOne;
  7. use App\Traits\ModelLogChanging;
  8. class StationTaskMaterialBox extends Model
  9. {
  10. use ModelLogChanging;
  11. protected $fillable=['station_id','material_box_id','status'];
  12. function materialBox(): HasOne
  13. {
  14. return $this->hasOne(MaterialBox::class,"id","material_box_id");
  15. }
  16. function station(): BelongsTo
  17. {
  18. return $this->belongsTo(Station::class,"id","station_id");
  19. }
  20. function stationTaskBatch(): BelongsTo
  21. {
  22. return $this->belongsTo(StationTaskBatch::class,"id","station_id");
  23. }
  24. function stationTask(): BelongsTo
  25. {
  26. return $this->belongsTo(StationTask::class);
  27. }
  28. function stationTaskCommodities(): HasOne
  29. {
  30. return $this->hasOne(StationTaskCommodity::class,"station_task_batch_id","station_task_batch_id")
  31. ->where('material_box_id',$this['material_box_id']);
  32. }
  33. }