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]); } }