post = $this->request->post(); $token = isset($this->post['token']) ? trim($this->post['token']) : ""; if($token==""){ return error_show(101,'token不能为空'); } $effetc = VerifyTokens($token); if(!empty($effetc) && $effetc['code']!=0) { return error_show($effetc['code'], $effetc['message']); } } public function list(){ $page = isset($this->post['page']) && $this->post['page'] !=="" ? intval($this->post['page']):"1"; $size = isset($this->post['size']) && $this->post['size'] !=="" ? intval($this->post['size']):"10"; $where =[['is_del',"=",0]]; $bkcode = isset($this->post['bk_code']) && $this->post['bk_code']!="" ? trim($this->post['bk_code']):""; if($bkcode!=""){ //$where['bk_code'] = $bk_code; $where[]=['bk_code',"like","%{$bkcode}%"]; } $good_code = isset($this->post['good_code']) && $this->post['good_code']!="" ? trim($this->post['good_code']):""; if($good_code!=""){ // $where['good_code'] = $good_code; $where[]=['good_code',"like","%{$good_code}%"]; } $good_type_code = isset($this->post['good_type_code']) && $this->post['good_type_code']!="" ? trim($this->post['good_type_code']):""; if($good_type_code!=""){ // $where['good_type_code'] = $good_type_code; $where[]=['good_type_code',"like","%{$good_type_code}%"]; } $wsm_code = isset($this->post['wsm_code']) && $this->post['wsm_code']!="" ? trim($this->post['wsm_code']):""; if($wsm_code!=""){ //$where['wsm_code'] = $wsm_code; $where[]=['wsm_code',"=",$wsm_code]; } $good_name = isset($this->post['good_name']) && $this->post['good_name']!="" ? trim($this->post['good_name']):""; if($good_name!=""){ // $where['good_name'] = Db::raw(" like '%{$good_name}%'"); $where[]=['good_name',"like","%{$good_name}%"]; } $apply_name = isset($this->post['apply_name']) && $this->post['apply_name']!="" ? trim($this->post['apply_name']):""; if($apply_name!=""){ // $where['apply_name'] =Db::Raw("like '%{$apply_name}%'"); $where[]=['apply_name',"like","%{$apply_name}%"]; } $status = isset($this->post['status']) && $this->post['status']!=="" ? intval($this->post['status']):""; if($status!==""){ // $where['status'] = $status; $where[]=['status',"=",$status]; } $start = isset($this->post['start']) && $this->post['start']!=="" ? $this->post['start']:""; if($start!==""){ //$where['addtime'] = Db::Raw(">= '{$start}'"); $where[]=['addtime',">=",$start]; } $end = isset($this->post['end']) && $this->post['end']!=="" ? $this->post['end']:""; if($end!==""){ // $where['addtime'] = Db::Raw("<= '{$end}'"); $where[]=['addtime',"<=",$end]; } $count=Db::name("purchease")->where($where)->count(); $total = ceil($count/$size); $page = $page >= $total ? $total : $page; $list = Db::name("purchease")->where($where)->page($page,$size)->order("addtime desc")->select(); $data=[]; foreach ($list as $value){ $value['wsm_name']=""; $value['wsm_supplier']=""; $value['wsm_supplierNo']=""; if($value['wsm_code']!=""){ $wsmcode = Db::name("warehouse_info")->alias("a")->leftJoin("supplier b","a.supplierNo=b.code") ->where(["a.wsm_code"=>$value['wsm_code']])->field("a.name as wsm_name,b.name,b.code")->find(); $value['wsm_name'] =isset($wsmcode['wsm_name']) ? $wsmcode['wsm_name']:""; $value['wsm_supplier'] =isset($wsmcode['name']) ? $wsmcode['name']:""; $value['wsm_supplierNo'] =isset($wsmcode['code']) ? $wsmcode['code']:""; } $value['file_name'] =''; if($value['file_url']){ $file= basename($value['file_url']); $value['file_name'] =substr($file,0,strripos($file,"_")); } $data[]=$value; } return app_show(0,"获取成功",["list"=>$data,"count"=>$count]); } public function add(){ $token = isset($this->post['token']) ? trim($this->post['token']) : ""; if($token==""){ return error_show(101,'token不能为空'); } $customer = isset($this->post['customer_code'])&&$this->post['customer_code']!="" ?trim($this->post['customer_code']):""; if($customer==""){ return error_show(1004,"参数customer_code不能为空"); } $supplier = isset($this->post['supplier_code'])&&$this->post['supplier_code']!="" ?trim($this->post['supplier_code']):""; if($supplier==""){ return error_show(1004,"参数supplier_code不能为空"); } $good_code = isset($this->post['good_code']) && $this->post['good_code']!=""?trim($this->post['good_code']):""; if($good_code==""){ return error_show(1004,"参数good_code不能为空"); } $good_num = isset($this->post['good_num'])&& $this->post['good_num']!==""? intval($this->post['good_num']):""; if($good_num===""){ return error_show(1004,"参数good_code不能为空"); } $file_url = isset($this->post['file_url'])&& $this->post['file_url']!==""? trim($this->post['file_url']):""; if($file_url===""){ return error_show(1004,"参数file_url不能为空"); } $mark =isset($this->post['remark'])&&$this->post['remark']!=""?trim($this->post['remark']):""; if($mark==""){ return error_show(1004,"参数remark不能为空"); } $good =Db::name("good")->alias("a")->leftJoin("good b","a.spuCod=b.spuCode")->where([["a.skuCode","=", $good_code],["a.is_del","=",0]])->find(); if($good==false){ return error_show(1004,"未找到商品数据"); } $lastime = isset($this->post['lastime'])&&$this->post['lastime']!="" ? $this->post['lastime']:date("Y-m-d H:i:s"); $data = GetUserInfo($token); if((!empty($data) && $data['code']!=0) ||empty($data) ){ return error_show($data['code'],$data['message']); } $userinfo = $data['data']; $bk_code=makeNo("BK"); $info = [ "spuCode"=>$good_code, "good_name"=>$good['good_name'], "good_num"=>$good_num, "skuCode"=>$good['skuCode'], "wsm_code"=>'', "companyNo"=>$customer, "supplierNo"=>$supplier, "file_url"=>$file_url, "lasttime"=>$lastime, "status"=>1, "remark"=>$mark, "addtime"=>date("Y-m-d H:i:s"), "updatetime"=>date("Y-m-d H:i:s"), "apply_id"=>$userinfo['id'], "apply_name"=>$userinfo['nickname'], "bk_code"=>$bk_code ]; $in = Db::name("purchease")->insert($info,true); if($in>0){ $order=["order_type"=>'BHD',"order_code"=>$bk_code,"order_id"=>$in,"order_status"=>0]; ProcessOrder::AddProcess($token,$order); $ste = ["order_code"=>$bk_code,"status"=>0,"action_remark"=>'',"action_type"=>"create"]; ActionLog::logAdd($token,$ste,"BHD",0,$info); return app_show(0,"新建成功",['bk_code'=>$bk_code]); }else{ return error_show(1005,"新建失败"); } } /** * @return \think\response\Json|void * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\DbException * @throws \think\db\exception\ModelNotFoundException */ public function copy(){ $id = isset($this->post['id']) ? intval($this->post['id']) : ""; if($id==""){ return error_show(1001,'id不能为空'); } $info = Db::name("purchease")->where(["id"=>$id,"is_del"=>0])->find(); if(empty($info)){ return error_show(1002,'未找到数据'); } $data = GetUserInfo($this->post['token']); if((!empty($data) && $data['code']!=0) ||empty($data) ){ return error_show($data['code'],$data['message']); } $userinfo = $data['data']; $bk_code=makeNo("BK"); $info['bk_code']=$bk_code; $info['status']=0; $info['addtime']=date("Y-m-d H:i:s"); $info['updatetime']=date("Y-m-d H:i:s"); $info['apply_id']=$userinfo['id']; $info['apply_name']=$userinfo['nickname']; unset($info['id']); $in = Db::name("purchease")->insert($info,true); if($in>0){ $order=["order_type"=>'BHD',"order_code"=>$bk_code,"order_id"=>$in,"order_status"=>0]; ProcessOrder::AddProcess($this->post['token'],$order); $ste = ["order_code"=>$bk_code,"status"=>0,"action_remark"=>'',"action_type"=>"create"]; ActionLog::logAdd($this->post['token'],$ste,"BHD",0,$info); return app_show(0,"新建成功",['bk_code'=>$bk_code]); }else{ return error_show(1005,"新建失败"); } } /** * @return \think\response\Json|void * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\DbException * @throws \think\db\exception\ModelNotFoundException */ public function info(){ $id = isset($this->post['id']) ? intval($this->post['id']) : ""; if($id==""){ return error_show(1001,'id不能为空'); } $info = Db::name("purchease")->where(["id"=>$id,"is_del"=>0])->find(); if(empty($info)){ return error_show(1002,'未找到数据'); } $good =Db::name("good")->alias("a")->leftJoin("good b","a.spuCod=b.spuCode")->where([["a.skuCode","=", $info['skuCode']],["a.is_del","=",0]])->find(); if($good==false){ return error_show(1004,"未找到商品数据"); } $int= isset($good['cat_id']) && $good['cat_id'] !=0 ? made($good['cat_id']):[]; $metal = \think\facade\Config::get("noble"); $info['noble_metal']= isset($good['noble_metal']) && $good['noble_metal'] !='' ?$metal[$good['noble_metal']]:''; $info['noble_id']= isset($good['noble_metal']) && $good['noble_metal'] !='' ? $good['noble_metal']:""; $info['wsm_name']=""; $info['file_name'] =''; if($info['file_url']){ $file= basename($info['file_url']); $info['file_name'] =substr($file,0,strripos($file,"_")); } if($info['wsm_code']!=""){ $wsmcode = Db::name("warehouse_info")->alias("a")->leftJoin("supplier b","a.supplierNo=b.code") ->where(["a.wsm_code"=>$info['wsm_code']])->field("a.name as wsm_name,b.name,b.code")->find(); $info['wsm_name'] =isset($wsmcode['wsm_name']) ? $wsmcode['wsm_name']:""; $info['wsm_supplier'] =isset($wsmcode['name']) ? $wsmcode['name']:""; $info['wsm_supplierNo'] =isset($wsmcode['code']) ? $wsmcode['code']:""; } $supplier =Db::name("supplier")->where(["code"=>$info['supplierNo']])->find(); $info['supplier_name'] = isset($supplier['name'])?$supplier['name']:""; $company =Db::name("bussiness")->where(["companyNo"=>$info['companyNo']])->find(); $info['company_name'] = isset($company['company'])?$company['company']:""; $info['can']=$int; return app_show(0,"获取成功",$info); } public function edit(){ $token = isset($this->post['token']) ? trim($this->post['token']) : ""; if($token==""){ return error_show(101,'token不能为空'); } $id = isset($this->post['id']) ? intval($this->post['id']) : ""; if($id==""){ return error_show(1001,'id不能为空'); } $info = Db::name("purchease")->where(["id"=>$id,"is_del"=>0])->find(); if(empty($info)){ return error_show(1002,'未找到数据'); } $customer = isset($this->post['customer_code'])&&$this->post['customer_code']!="" ?trim($this->post['customer_code']):""; if($customer==""){ return error_show(1004,"参数customer_code不能为空"); } $supplier = isset($this->post['supplier_code'])&&$this->post['supplier_code']!="" ?trim($this->post['supplier_code']):""; if($supplier==""){ return error_show(1004,"参数supplier_code不能为空"); } $good_code = isset($this->post['good_code']) && $this->post['good_code']!=""?trim($this->post['good_code']):""; if($good_code==""){ return error_show(1004,"参数good_code不能为空"); } $good_num = isset($this->post['good_num'])&& $this->post['good_num']!==""? intval($this->post['good_num']):""; if($good_num===""){ return error_show(1004,"参数good_code不能为空"); } $file_url = isset($this->post['file_url'])&& $this->post['file_url']!==""? trim($this->post['file_url']):""; if($file_url===""){ return error_show(1004,"参数file_url不能为空"); } $mark =isset($this->post['remark'])&&$this->post['remark']!=""?trim($this->post['remark']):""; if($mark==""){ return error_show(1004,"参数remark不能为空"); } $good =Db::name("good")->alias("a")->leftJoin("good b","a.spuCod=b.spuCode")->where([["a.skuCode","=", $good_code],["a.is_del","=",0]])->find(); if($good==false){ return error_show(1004,"未找到商品数据"); } $data = GetUserInfo($token); if((!empty($data) && $data['code']!=0) ||empty($data) ){ return error_show($data['code'],$data['message']); } $userinfo = $data['data']; $up = [ "spuCode"=>$good_code, "good_name"=>$good['good_name'], "good_num"=>$good_num, "skuCode"=>$good['skuCode'], "wsm_code"=>'', "companyNo"=>$customer, "supplierNo"=>$supplier, "file_url"=>$file_url, "remark"=>$mark, "updatetime"=>date("Y-m-d H:i:s"), ]; $in = Db::name("purchease")->where($info)->save($up); if($in){ $order=["order_type"=>'BHD',"order_code"=>$info['bk_code'],"order_id"=>$info['id'],"order_status"=>$info['status']]; ProcessOrder::AddProcess($this->post['token'],$order); $ste = ["order_code"=>$info['bk_code'],"status"=>$info['status'],"action_remark"=>'',"action_type"=>"edit"]; ActionLog::logAdd($this->post['token'],$ste,"BHD",0,$up); return app_show(0,"更新成功",['bk_code'=>$info['bk_code']]); }else{ return error_show(1005,"更新失败"); } } public function delete(){ $id = isset($this->post['id']) ? intval($this->post['id']) : ""; if($id==""){ return error_show(1001,'id不能为空'); } $info = Db::name("purchease")->where(["id"=>$id,"is_del"=>0])->find(); if(empty($info)){ return error_show(1002,'未找到数据'); } $info['is_del']=1; $info['updatetime']=date("Y-m-d H:i:s"); $up = Db::name("purchease")->update($info); if($up){ $order=["order_type"=>'BHD',"order_code"=>$info['bk_code'],"order_id"=>$info['id'],"order_status"=>$info['status']]; ProcessOrder::workdel($order); $ste = ["order_code"=>$info['bk_code'],"status"=>$info['status'],"action_remark"=>'',"action_type"=>"delete"]; ActionLog::logAdd($this->post['token'],$ste,"BHD",0,$info); } return $up ? app_show(0,"删除成功"):error_show(1005,"删除失败"); } public function status(){ $id = isset($this->post['id']) ? intval($this->post['id']) : ""; if($id==""){ return error_show(1001,'id不能为空'); } $info = Db::name("purchease")->where(["id"=>$id,"is_del"=>0])->find(); if(empty($info)){ return error_show(1002,'未找到数据'); } $status = isset($this->post['status'])&&$this->post['status']!=='' ? intval($this->post['status']) : ""; if($status===""){ return error_show(1001,'status不能为空'); } $temp = $info['status']; $info['status']= $status; $info['updatetime']=date("Y-m-d H:i:s"); $up = Db::name("purchease")->update($info); if($up){ $order=["order_type"=>'BHD',"order_code"=>$info['bk_code'],"order_id"=>$info['id'],"order_status"=>$status]; ProcessOrder::AddProcess($this->post['token'],$order); $ste = ["order_code"=>$info['bk_code'],"status"=> $temp,"action_remark"=>'',"action_type"=>"status"]; ActionLog::logAdd($this->post['token'],$ste,"BHD",$status,$info); return app_show(0,"更新成功",['bk_code'=>$info['bk_code']]); }else{ return error_show(1005,"更新失败"); } } public function addFeed(){ $token = isset($this->post['token']) ? trim($this->post['token']) : ""; if($token==""){ return error_show(101,'token不能为空'); } $id = isset($this->post['id']) ? intval($this->post['id']) : ""; if($id==""){ return error_show(1001,'id不能为空'); } $info = Db::name("purchease")->where(["id"=>$id,"is_del"=>0])->find(); if(empty($info)){ return error_show(1002,'未找到备库数据'); } if($info['status']!=1){ return error_show(1002,'备库数据状态有误'); } $num = isset($this->post['num']) && $this->post['num']!=="" ? intval($this->post['num']):""; if($num==''){ return error_show(1002,'参数num 不能为空或零'); } $expecttime = isset($this->post['expecttime'])&&$this->post['expecttime']!=''?$this->post['expecttime'] :""; if($expecttime==''){ return error_show(1002,'参数expecttime 不能为空'); } $wsm_type = isset($this->post['wsm_type'])&&$this->post['wsm_type']!="" ? intval($this->post['wsm_type']):""; if($wsm_type==""){ return error_show(1002,'参数wsm_type 不能为空'); } $wsm_code = isset($this->post['wsm_code'])&&$this->post['wsm_code']!="" ? trim($this->post['wsm_code']):""; if($wsm_code==""){ return error_show(1002,'参数wsm_code 不能为空'); } $wsminfo = Db::name("warehouse_info")->where(['wsm_code'=>$wsm_code,"wsm_type"=>$wsm_type,"is_del"=>0])->find(); if(empty($wsminfo)){ return error_show(1002,'未找到仓库数据'); } $supplierNo = isset($this->post['supplierNo'])&&$this->post['supplierNo']!="" ? trim($this->post['supplierNo']):""; if($supplierNo==""){ return error_show(1002,'参数supplierNo 不能为空'); } $supplie = Db::name("supplier")->where(['code'=>$supplierNo,"is_del"=>0])->find(); if(empty($supplie)){ return error_show(1002,'未找到供应商'); } $good_price = isset($this->post['good_price'])&&$this->post['good_price']!=="" ? $this->post['good_price']:""; if($good_price===""){ return error_show(1002,'参数good_price 不能为空'); } $pakge_fee = isset($this->post['pakge_fee'])&&$this->post['pakge_fee']!=="" ? $this->post['pakge_fee']:0; $cert_fee = isset($this->post['cert_fee'])&&$this->post['cert_fee']!=="" ? $this->post['cert_fee']:0; $open_fee = isset($this->post['open_fee'])&&$this->post['open_fee']!=="" ? $this->post['open_fee']:0; $delivery_fee = isset($this->post['delivery_fee'])&&$this->post['delivery_fee']!=="" ? $this->post['delivery_fee']:0; $mark_fee = isset($this->post['mark_fee'])&&$this->post['mark_fee']!=="" ? $this->post['mark_fee']:0; $teach_fee = isset($this->post['teach_fee'])&&$this->post['teach_fee']!=="" ? $this->post['teach_fee']:0; $nake_fee = isset($this->post['nake_fee'])&&$this->post['nake_fee']!=="" ? $this->post['nake_fee']:0; $demo_fee = isset($this->post['demo_fee'])&&$this->post['demo_fee']!=="" ? $this->post['demo_fee']:0; $weight = isset($this->post['weight'])&&$this->post['weight']!=="" ? $this->post['weight']:0; $diff_weight =isset($this->post['diff_weight'])&&$this->post['diff_weight']!=="" ? $this->post['diff_weight']:0; $diff_price =isset($this->post['diff_price'])&&$this->post['diff_price']!=="" ? $this->post['diff_price']:0; $remark =isset($this->post['remark'])&&$this->post['remark']!=="" ? $this->post['remark']:''; $data = GetUserInfo($token); if((!empty($data) && $data['code']!=0) ||empty($data) ){ return error_show($data['code'],$data['message']); } $userinfo = $data['data']; $data=[ "bkcode"=>$info['bk_code'], "warehouse"=>$wsm_code, "wsm_type"=>$wsm_type, "num"=>$num, 'expecttime'=>$expecttime, 'supplier'=>isset($supplie) && $supplie['code']!=''? $supplie['code']:'', 'good_price'=>$good_price, 'pakge_fee'=>$pakge_fee, 'cert_fee'=>$cert_fee, 'open_fee'=>$open_fee, 'mark_fee'=>$mark_fee, 'teach_fee'=>$teach_fee, 'nake_fee'=>$nake_fee, 'demo_fee'=>$demo_fee, 'delivery_fee'=>$delivery_fee, 'weight'=>$weight, 'remark'=>$remark, 'diff_weight'=>$diff_weight, 'diff_price'=>$diff_price, 'purchaser'=>$userinfo['nickname'], 'purchaser_id'=>$userinfo['id'], "addtime"=>date("Y-m-d H:i:s"), "updatetime"=>date("Y-m-d H:i:s") ]; Db::startTrans(); try{ $in = Db::name('purchease_feedback')->insert($data,true); if($in>0){ $order=["order_type"=>'FKD',"order_code"=>$info['bk_code'],"order_id"=>$in, "order_status"=>0]; ProcessOrder::AddProcess($this->post['token'],$order); $ste = ["order_code"=>$info['bk_code'],"status"=>0,"action_remark"=>'',"action_type"=>"create"]; ActionLog::logAdd($this->post['token'],$ste,"FKD",0,$data); $temp=$info['status']; $info['status']=2; $info['wsm_code']=$wsm_code; $info['addtime']=date("Y-m-d H:i:s"); $ood=Db::name('purchease')->save($info); if($ood){ $order=["order_type"=>'BHD',"order_code"=>$info['bk_code'],"order_id"=>$info['id'], "order_status"=>$info['status']]; ProcessOrder::AddProcess($this->post['token'],$order); $ste = ["order_code"=>$info['bk_code'],"status"=>$temp,"action_remark"=>'',"action_type"=>"status"]; ActionLog::logAdd($this->post['token'],$ste,"BHD",$info['status'],$info); Db::commit(); return app_show(0,"新建成功"); } } Db::rollback(); return error_show(1005,"新建失败"); }catch (\Exception $e){ Db::rollback(); return error_show(1005,"新建失败"); } // return $in ? app_show(0,"新建成功"):error_show(1005,"新建失败"); } public function delFeed(){ $id = isset($this->post['id']) ? intval($this->post['id']) : ""; if($id==""){ return error_show(1001,'id不能为空'); } $feed = Db::name("purchease_feedback")->where(['id'=>$id,'is_del'=>0])->find(); if(empty($feed)){ return error_show(1004,'未找到数据'); } if($feed['status']==1){ return error_show(1004,'反馈数据已采用无法删除'); } $feed['is_del']= 1; $feed['updatetime']=date("Y-m-d H:i:s"); $up = Db::name("purchease_feedback")->update($feed); if($up){ $order=["order_type"=>'FKD',"order_code"=>$feed['bk_code'],"order_id"=>$feed['id'], "order_status"=>0]; ProcessOrder::workdel($order); $ste = ["order_code"=>$feed['bk_code'],"status"=>$feed['status'],"action_remark"=>'',"action_type"=>"delete"]; ActionLog::logAdd($this->post['token'],$ste,"FKD",$feed['status'],$feed); } return $up ? app_show(0,"删除成功"):error_show(1005,"删除失败"); } public function infoFeed(){ $id = isset($this->post['id']) ? intval($this->post['id']) : ""; if($id==""){ return error_show(1001,'id不能为空'); } $info = Db::name("purchease")->where(["id"=>$id,"is_del"=>0])->find(); if(empty($info)){ return error_show(1002,'未找到备库数据'); } $feed = Db::name("purchease_feedback")->where(['bkcode'=>$info['bk_code'],'is_del'=>0])->find(); if(empty($feed)){ return error_show(1004,'未找到反馈数据'); } $feed['wsm_name']=""; if($feed['warehouse']!=""){ $wsmcode = Db::name("warehouse_info")->alias("a")->leftJoin("supplier b","a.supplierNo=b.code") ->where(["a.wsm_code"=>$feed['warehouse']])->field("a.name as wsm_name,b.name,b.code")->find(); $feed['wsm_name'] =isset($wsmcode['wsm_name']) ? $wsmcode['wsm_name']:""; $feed['wsm_supplier'] =isset($wsmcode['name']) ? $wsmcode['name']:""; $feed['wsm_supplierNo'] =isset($wsmcode['code']) ? $wsmcode['code']:""; } if($feed['supplier']!=""){ $supplie = Db::name("supplier")->where(['code'=>$feed['supplier'],"is_del"=>0])->find(); $feed['supplier_name'] =isset($supplie['name']) ? $supplie['name']:""; } return app_show(0,"获取成功",$feed); } public function changeFeed(){ $id = isset($this->post['id']) ? intval($this->post['id']) : ""; if($id==""){ return error_show(1001,'id不能为空'); } $feed = Db::name("purchease")->where(['id'=>$id,'is_del'=>0])->find(); if(empty($feed)){ return error_show(1004,'未找到数据'); } $status = isset($this->post['status'])&& $this->post['status']!=='' ? intval($this->post['status']) : ""; if($status==""){ return error_show(1001,'参数status 不能为空'); } $remark = isset($this->post['remark'])&& $this->post['remark']!=='' ? trim($this->post['remark']) : ""; Db::startTrans(); try{ $tem =$feed['status']; $feed['remark']= $remark; $feed['status']= $status; $feed['updatetime']=date("Y-m-d H:i:s"); $up = Db::name("purchease")->update($feed); if($up){ $order=["order_type"=>'BHD',"order_code"=>$feed['bk_code'],"order_id"=>$feed['id'],"order_status"=>$feed['status']]; ProcessOrder::AddProcess($this->post['token'],$order); $ste = ["order_code"=>$feed['bk_code'],"status"=>$tem,"action_remark"=>'',"action_type"=>"edit"]; ActionLog::logAdd($this->post['token'],$ste,"BHD",$feed['status'],$feed); if($status==3){ // $ware = Db::name("warehouse_addr")->where(["wsm_code"=>$feed['warehouse'],"is_del"=>0])->find(); $purse = Db::name("purchease_feedback")->where(['bkcode'=>$feed['bk_code'],"is_del"=>0])->find(); if(empty($purse)){ Db::rollback(); return error_show(1001,'未找到备库反馈数据'); } $pe = $purse['status']; $purse['status']=1; $purse['addtime']=date("Y-m-d H:i:s"); $up = Db::name("purchease_feedback")->save($purse); if($up==false){ Db::rollback(); return error_show(1001,'备库反馈数据状态修改失败'); } $order=["order_type"=>'FKD',"order_code"=>$feed['bk_code'],"order_id"=>$purse['id'],"order_status"=>$purse['status']]; ProcessOrder::AddProcess($this->post['token'],$order); $ste = ["order_code"=>$feed['bk_code'],"status"=>$pe,"action_remark"=>'',"action_type"=>"status"]; ActionLog::logAdd($this->post['token'],$ste,"FKD",$feed['status'],$purse); $supplier = Db::name("supplier")->where(["code"=>$purse['supplier']])->find(); $inw = makeNo("CG"); $data=[ "bkcode"=>$purse['bkcode'], 'cgdNo'=>$inw, "wsm_code"=>$purse['warehouse'], "good_code"=>$feed['good_code'], "good_name"=>$feed['good_name'], "good_type_code"=>$feed['good_type_code'], "good_num"=>$feed['good_num'], "send_num"=>0, "wsend_num"=>$feed['good_num'], 'good_price'=>$purse['good_price'], "total_fee"=>$purse['good_price'], 'pakge_fee'=>$purse['pakge_fee'], 'cert_fee'=>$purse['cert_fee'], 'open_fee'=>$purse['open_fee'], 'mark_fee'=>$purse['mark_fee'], 'teach_fee'=>$purse['teach_fee'], 'nake_fee'=>$purse['nake_fee'], 'demo_fee'=>$purse['demo_fee'], 'delivery_fee'=>$purse['delivery_fee'], 'weight'=>$purse['weight'], 'diff_weight'=>$purse['diff_weight'], 'diff_fee'=>$purse['diff_price'], 'cgder_id'=>$purse['purchaser_id'], 'cgder'=>$purse['purchaser'], "remark"=>$purse['remark'], "status"=>0, 'supplierNo'=>$purse['supplier'], 'supplier_name'=>isset($supplier['name']) ? $supplier['name']:"", 'lasttime'=>$purse['expecttime'], "addtime"=>date("Y-m-d H:i:s"), "updatetime"=>date("Y-m-d H:i:s") ]; $in= Db::name("purchease_order")->insert($data,true); if($in>0){ $order=["order_type"=>'CGD',"order_code"=>$data['cgdNo'],"order_id"=>$in,"order_status"=>$data['status']]; ProcessOrder::AddProcess($this->post['token'],$order); $ste = ["order_code"=>$inw,"status"=>$data['status'],"action_remark"=>'',"action_type"=>"create"]; ActionLog::logAdd($this->post['token'],$ste,"CGD",$data['status'],$data); Db::commit(); return app_show(0,"更新成功",['cgdNo'=>$inw]); } }else{ if($status==4){ $purse = Db::name("purchease_feedback")->where(['bkcode'=>$feed['bk_code'],"is_del"=>0])->find(); if(empty($purse)){ Db::rollback(); return error_show(1001,'未找到备库反馈数据'); } $pe=$purse['status']; $purse['status']=2; $purse['addtime']=date("Y-m-d H:i:s"); $up = Db::name("purchease_feedback")->save($purse); if($up==false){ Db::rollback(); return error_show(1001,'备库反馈数据状态修改失败'); } $order=["order_type"=>'FKD',"order_code"=>$feed['bk_code'],"order_id"=>$purse['id'],"order_status"=>$purse['status']]; ProcessOrder::AddProcess($this->post['token'],$order); $ste = ["order_code"=>$feed['bk_code'],"status"=>$pe,"action_remark"=>'',"action_type"=>"status"]; ActionLog::logAdd($this->post['token'],$ste,"FKD",$feed['status'],$purse); } Db::commit(); return app_show(0,"更新成功"); } } Db::rollback(); return error_show(1004,"更新失败"); }catch (\Exception $e){ Db::rollback(); return error_show(1005,$e->getMessage()); } } public function addwsm(){ $id = isset($this->post['id']) ? intval($this->post['id']) : ""; if($id==""){ return error_show(1001,'id不能为空'); } $info = Db::name("purchease")->where(["id"=>$id,"is_del"=>0])->find(); if($info==false){ return error_show(1002,'未找到备库数据'); } $wsm= isset($this->post['wsm_code'])&&$this->post['wsm_code']!="" ? trim($this->post['wsm_code']) : ""; if($wsm==""){ return error_show(1004,"参数wsm_code不能为空"); } $wsminfo = Db::name("warehouse_info")->where(["wsm_code"=>$wsm,"is_del"=>0])->find(); if($wsminfo==false){ return error_show(1004,"未找到仓库数据"); } $info['wsm_code']=$wsm; $info['status']=2; $info['updatetime']=date("y-m-d H;i:s"); $up =Db::name("purchease")->save($info); if($up){ return app_show(0,"备库单仓库选择成功"); }else{ return error_show(1004,"备库单仓库选择失败"); } } }