WorkOrderCommoditiesService.php 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <?php
  2. namespace App\Services;
  3. use App\Commodity;
  4. use App\Traits\ServiceAppAop;
  5. use App\WorkOrder;
  6. use App\WorkOrderCommodities;
  7. class WorkOrderCommoditiesService
  8. {
  9. use ServiceAppAop;
  10. protected $modelClass = WorkOrderCommodities::class;
  11. public function createWorkOrderCommodityByJson(WorkOrder $workOrder, $json)
  12. {
  13. $obj = json_decode($json);
  14. $workOrder->commodities()->create([
  15. 'commodity_id' => $obj->commodity_id ?? '',
  16. 'sku' => $obj->sku,
  17. 'amount' => $obj->amount ?? '',
  18. 'logistic_number' => $obj->logistic_number ?? '',
  19. 'abnormal_amount' => $obj->abnormal_amount ?? '',
  20. 'check_amount' => $obj->check_amount ?? '',
  21. 'check_result' => $obj->check_result ?? '',
  22. 'process_result' => $commodity->process_result ?? '',
  23. ]);
  24. }
  25. /**
  26. * 工单详情
  27. * @param $workOrder $workOrder
  28. * @param $array
  29. */
  30. public function createWorkOrderCommoditiesByJsonArray(WorkOrder $workOrder, $array)
  31. {
  32. foreach ($array as $json) {
  33. $this->createWorkOrderCommodityByJson($workOrder, $json);
  34. }
  35. }
  36. public function updateWorkOrderCommoditiesByJsonArray(WorkOrder $workOrder, $array)
  37. {
  38. foreach ($array as $json) {
  39. $this->updateWorkOrderCommoditiesByJson($workOrder, $json);
  40. }
  41. }
  42. public function updateWorkOrderCommoditiesByJson(WorkOrder $workOrder, $json)
  43. {
  44. $obj = json_decode($json);
  45. $workOrder->commodities()->where('id', $obj->id)->update([
  46. 'check_amount' => $obj->check_amount ?? '',
  47. 'check_result' => $obj->check_result ?? '',
  48. 'process_result' => $obj->process_result ?? '',
  49. ]);
  50. }
  51. }