| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- <?php
- namespace App\Services;
- use App\Traits\ServiceAppAop;
- use App\WorkOrder;
- use App\WorkOrderCommodities;
- use App\WorkOrderDetail;
- class WorkOrderCommoditiesService
- {
- use ServiceAppAop;
- protected $modelClass = WorkOrderCommodities::class;
- public function createWorkOrderCommodityByJson(WorkOrderDetail $detail, $json)
- {
- $obj = json_decode($json);
- $detail->commodities()->create([
- 'work_order_id' => $detail->work_order_id ?? '',
- 'work_order_detail_id' =>$detail->id ?? '',
- 'commodity_id' => $obj->commodity_id ?? '',
- 'sku' => $obj->sku,
- 'amount' => $obj->amount ?? '',
- 'price' => $obj->price ?? '',
- 'logistic_number' => $obj->logistic_number ?? '',
- 'abnormal_amount' => $obj->abnormal_amount ?? '',
- 'check_amount' => $obj->check_amount ?? '',
- 'bao_shi_check_amount' => $obj->bao_shi_check_amount ?? '',
- 'check_result' => $obj->check_result ?? '',
- 'process_result' => $obj->process_result ?? '',
- 'abnormal_type' => $obj->abnormal_type ?? '',
- 'issue_type' => $detail->order_issue_type_id ?? '',
- ]);
- }
- /**
- * 工单详情
- * @param WorkOrderDetail $detail
- * @param $array
- */
- public function createWorkOrderCommoditiesByJsonArray(WorkOrderDetail $detail, $array)
- {
- foreach ($array as $json) {
- $this->createWorkOrderCommodityByJson($detail, $json);
- }
- }
- /**
- * @param WorkOrderDetail $detail
- * @param $array
- */
- public function updateWorkOrderCommoditiesByJsonArray(WorkOrderDetail $detail, $array)
- {
- foreach ($array as $json) {
- $this->updateWorkOrderCommoditiesByJson($detail, $json);
- }
- }
- /**
- * @param WorkOrderDetail $detail
- * @param $json
- */
- public function updateWorkOrderCommoditiesByJson(WorkOrderDetail $detail, $json)
- {
- $obj = json_decode($json);
- $detail->commodities()->where('id', $obj->id)->update([
- 'check_amount' => $obj->check_amount ?? '',
- 'bao_shi_check_amount' => $obj->bao_shi_check_amount ?? '',
- 'check_result' => $obj->check_result ?? '',
- 'process_result' => $obj->process_result ?? '',
- 'process_result_info' => $obj->process_result_info ?? '',
- ]);
- }
- /**
- * @param WorkOrderDetail $detail
- */
- public function undoneTag(WorkOrderDetail $detail)
- { // 标记为未完成历史标记
- $detail->commodities()->update(['tag' => 2]);
- }
- /**
- * @param WorkOrderDetail $detail
- */
- public function endDetail(WorkOrderDetail $detail)
- { // 标记为完成
- $detail->commodities()->update(['tag' => 1]);
- }
- }
|