input('logistic_number_return'); $logistics_name=$request->input('logistics_name'); if (!$logistic_number_return||!$logistics_name){ $response["message"] = "请求失败,未携带退回单号或未指定快递公司"; $response["code"] = 410; return response()->json($response); } $id_logistic_return=Logistic::query()->where("belong_company",$logistics_name)->first()['id']; $data=$request->all(); $rejectBill=RejectedBill::query()->where("logistic_number_return",$logistic_number_return)->first(); if (!$rejectBill){ $rejectBillNew=new RejectedBill(); $rejectBillNew->logistic_number_return=$data['logistic_number_return']; $rejectBillNew->id_owner=$data['id_owner']; $rejectBillNew->order_number=$data['order_number']; $rejectBillNew->sender=$data['sender']; $rejectBillNew->mobile_sender=$data['mobile_sender']; $rejectBillNew->remark=$data['remark']; $rejectBillNew->id_operator=3754; $rejectBillNew->id_logistic_return=$id_logistic_return; $rejectBillNew->save(); $this->saveRejectBillItem($data,$rejectBillNew); SyncOrderRejectingStatusJob::dispatch($rejectBillNew); }else{ RejectedBillItem::query()->where('id_rejected_bill',$rejectBill->id)->delete(); $this->saveRejectBillItem($data,$rejectBill); SyncOrderRejectingStatusJob::dispatch($rejectBill); } $response["message"] = "退件信息保存成功"; $response["code"] = 200; return response()->json($response); } /** * @api {post} /reject/delete 删除退货登记 * @apiName delete * @apiGroup reject * * * @apiSuccess {string} message 响应描述 * @apiSuccess {int} status_code HTTP响应码 * @apiSuccess {bool} data 结果 * * @apiSuccessExample {json} Success-Response: * HTTP/1.1 200 OK * { * "message": "请求成功", * "status_code": "200" * "data":true * } * */ public function rejectDelete(Request $request){ $logistic_number_return=$request->input('logistic_number_return'); if (!$logistic_number_return){ $response["message"] = "请求失败,未携带退回单号"; $response["code"] = 410; return response()->json($response); } $rejectBill=RejectedBill::query()->where("logistic_number_return",$logistic_number_return)->first(); if ($rejectBill){ RejectedBillItem::query()->where('id_rejected_bill',$rejectBill->id)->delete(); $rejectBill->delete(); } $response["message"] = "退件信息删除成功"; $response["code"] = 200; return response()->json($response); } /** * @api {post} /rejectBillItem/delete 删除退货登记 * @apiName rejectBillItemDelete * @apiGroup reject * * * @apiSuccess {string} message 响应描述 * @apiSuccess {int} status_code HTTP响应码 * @apiSuccess {bool} data 结果 * * @apiSuccessExample {json} Success-Response: * HTTP/1.1 200 OK * { * "message": "请求成功", * "status_code": "200" * "data":true * } * */ public function rejectBillItemDelete(Request $request){ $data=$request->all(); if (!$data['logistic_number_return']){ $response["message"] = "请求失败,未携带退回单号"; $response["code"] = 410; return response()->json($response); } $rejectBill_id=RejectedBill::query()->where("logistic_number_return",$data['logistic_number_return'])->first()['id']; RejectedBillItem::query()->where('id_rejected_bill',$rejectBill_id) ->where('barcode_goods',$data['barcode_goods'])->delete(); $response["message"] = "退件明细信息删除成功"; $response["code"] = 200; return response()->json($response); } private function saveRejectBillItem($data,$rejectBill){ foreach ($data['rejectItems'] as $item){ $id_quality_label=QualityLabel::query()->where('name',$item['quality'])->first()['id']; $rejectBillItemNew = new RejectedBillItem(); $rejectBillItemNew->id_rejected_bill=$rejectBill->id; $rejectBillItemNew->barcode_goods=$item['barcode_goods']; $rejectBillItemNew->name_goods=$item['name_goods']; $rejectBillItemNew->amount=$item['amount']; $rejectBillItemNew->remark=$item['remark']; $rejectBillItemNew->id_quality_label=$id_quality_label; $rejectBillItemNew->save(); } } }