123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574 |
- <?php
- namespace app\admin\controller;
- use think\facade\Db;
- use think\facade\Validate;
- use think\App;
- class InterOrder extends \app\admin\BaseController{
- public function __construct(App $app) {
- parent::__construct($app);
- }
-
- public function list(){
- $param = $this->request->only(["page"=>1,"size"=>10,'cgdNo'=>"","qrdNo"=>"","khNo"=>"",
- "supplierNo"=>"","companyNo"=>"","starttime"=>"","endtime"=>"","sale_name"=>"","cgd_saler"=>""],"post","trim");
- $where=[["b.is_del","=",0],["c.is_del","=",0],["b.qrdSource","=",10],["c.cgdSource","=",10]];
- if($param['cgdNo']!="") $where[]=["a.cgdNo","like","%{$param['cgdNo']}%"];
- if($param['qrdNo']!="") $where[]=["a.orderCode","like","%{$param['qrdNo']}%"];
- if($param['khNo']!="") $where[]=["b.customerNo","like","%{$param['khNo']}%"];
- if($param['companyNo']!="") $where[]=["b.companyNo","like","%{$param['companyNo']}%"];
- if($param['supplierNo']!="") $where[]=["c.supplierNo","like","%{$param['supplierNo']}%"];
- if($param['starttime']!="") $where[]=["a.addtime",">=",date("Y-m-d 00:00:00",strtotime($param['starttime']))];
- if($param['endtime']!="") $where[]=["a.addtime","<=",date("Y-m-d 23:59:59",strtotime($param['endtime']))];
- if($param['sale_name']!="") $where[]=["b.ownerName","like","%{$param['sale_name']}%"];
- if($param['cgd_saler']!="") $where[]=["c.ownerName","like","%{$param['cgd_saler']}%"];
- $count= Db::name("inter_order")->alias("a")
- ->leftJoin("qrd_info b","a.orderCode=b.sequenceNo and b.is_del=0 and b.qrdSource=10")
- ->leftJoin("cgd_info c","b.cgdNo=c.sequenceNo and c.is_del=0 and c.cgdSource=10")->where($where)->count();
- $total =ceil($count/$param['size']);
- $page =$total>=$param['page'] ? intval($param['page']): intval($total);
- $list= Db::name("inter_order")->alias("a")
- ->leftJoin("qrd_info b","a.orderCode=b.sequenceNo and b.is_del=0 and b.qrdSource=10")
- ->leftJoin("cgd_info c","b.cgdNo=c.sequenceNo and c.is_del=0 and c.cgdSource=10")
- ->field("a.id,
- a.orderCode,
- b.customerName as khName,
- b.customerNo as khNo,
- b.companyName,
- b.companyNo,
- a.rate*100 as cgd_tax,
- c.supplierName,
- c.supplierNo,
- b.poCode,
- a.addtime as ordertime,
- b.ownerName as sale_name,
- c.ownerName as cgd_saler,
- c.department as cgd_depart,
- b.department as sale_depart,
- b.goodName,
- b.tax,
- b.goodPrice,
- b.goodNum,
- b.totalPrice,
- b.apay_fee,
- b.wpay_fee,
- b.ainv_fee,
- b.winv_fee,
- b.qrdType,
- b.catInfo,
- a.cgdNo,
- b.workCode")
- ->json(["catInfo"])
- ->where($where)->page($page,intval($param['size']))->order("id desc")
- ->select()->toArray();
- return app_show(0,"获取成功",["list"=>$list,"count"=>$count]);
- }
- public function create(){
- $param =$this->request->only([
- "sale_name"=>"","sale_id"=>"","companyNo"=>'',"poCode"=>"","workCode"=>"","khNo"=>"","qrdType"=>"","goodName"=>"",
- "tax"=>"","goodNum"=>"","goodPrice"=>"","mobile"=>"","addr"=>"","contactor"=>"",
- "buyer"=>"","buyerid"=>"","sendtime"=>"","cat"=>'',"supplierNo"=>"","cgd_tax"=>"","sale_depart"=>"","cgd_depart"=>""
- ],"post");
- $valid =Validate::rule([
- "sale_name|业务员名称"=>"require|max:255|min:1",
- "sale_id|业务员名称"=>"require|number|gt:0",
- "companyNo|业务公司编号"=>"require|max:255|min:1",
- "supplierNo|业务公司编号"=>"require|max:255|min:1",
- "poCode|PO编号"=>"require|max:255|min:1",
- "workCode|单据编号"=>"require|max:255|min:1",
- "khNo|客户公司编号"=>"require|max:255|min:1",
- "qrdType|订单类型"=>"require|number|in:[1,2,3]",
- "goodName|商品名称"=>"require|max:255|min:1",
- "tax|税率"=>"require|number|gt:0",
- "goodNum|商品数量"=>"require|number|gt:0",
- "goodPrice|商品单价"=>"require|float|gt:0",
- "mobile|联系人电话"=>"require|number|mobile",
- "contactor|联系人"=>"require|max:255|min:1",
- "addr|收货地址"=>"require|max:255|min:1",
- "buyer|销售员"=>"require|max:255|min:1",
- "buyerid|销售员"=>"require|number|gt:0",
- "sendtime|发货时间"=>"require|date",
- "cat|商品分类id"=>"require|number|gt:0",
- "cgd_tax|采购毛利率"=>"require|float|gt:0",
- "sale_depart|销售员部门"=>"require|max:255|min:1",
- "cgd_depart|采购员部门"=>"require|max:255|min:1",
- ]);
- if($valid->check($param)==false)return error_show(1004,$valid->getError());
- $qrdcode =makeNo("QRD");
- $cgddcode =makeNo("CGD");
- $goodCode =makeNo("SPU");
- $customer =Db::name("customer_info")->where('companyNo', "=", $param['khNo'])->find();
- $supplierName =Db::name("supplier_info")->where('code', "=", $param['supplierNo'])->value("name","");
- $companyName =Db::name("supplier_info")->where('code', "=", $param['companyNo'])->value("name","");
- $taxinfo = Db::name("order_rate")->where(["id"=>$param["tax"],"status"=>1])->value("rate",0);
- $param["cgd_tax"]=$param["cgd_tax"]/100;
- $cat = [];
- $this->cat($param['cat'],$cat);
- if(empty($cat)) return error_show(1004,'分类信息为找到');
- $inter=[
- "cgdNo"=>$cgddcode,
- "orderCode"=>$qrdcode,
- "rate"=>$param["cgd_tax"],
- "apply_id"=>$this->uid,
- "apply_name"=>$this->uname,
- "mobile"=>$param['mobile'],
- "contactor"=>$param['contactor'],
- "sendtime"=>$param['sendtime'],
- "addr"=>$param['addr'],
- ];
- $qrd =[
- 'name' => $param['sale_depart']."销售单",
- 'sequenceNo' => $qrdcode,
- 'ownerName' => $param['sale_name'],
- 'ownerid' => $param['sale_id'],
- 'department' => $param['sale_depart'],
- 'createdTime' => date("Y-m-d H:i:s"),
- 'qrdType' => $param['qrdType'],
- 'qrdSource' => 10,
- 'companyNo' => $param['companyNo'],
- 'companyName' => $companyName,
- 'customerNo' => $param['khNo'],
- 'customerName' =>$customer['companyName']??"",
- 'poCode' => $param['poCode'],
- 'platName' => '',
- 'workCode' =>$param['workCode'],
- 'zxCode' => '',
- 'goodNo' => $goodCode,
- 'goodName' => $param['goodName'],
- 'goodBrand' =>'',
- 'firstCat' => $cat[0]['cat_name']??"",
- 'secCat' => $cat[1]['cat_name']??"",
- 'thirdCat' => $cat[2]['cat_name']??"",
- 'catInfo' => json_encode($cat,JSON_UNESCAPED_UNICODE),
- 'fundCode' => $cat[2]['fund_code']??"",
- 'goodMaterial' => '',
- 'goodUnit' => '',
- 'goodDesc' => '',
- 'goodType' =>1,
- 'goodModel' => '',
- 'isStock' => 0,
- 'metalsType' =>'',
- 'weight' => 0,
- 'goldPrice' => 0,
- 'deliveryDay' =>'',
- 'workDay' => '',
- 'tax' => $taxinfo,
- 'goodNum' => $param['goodNum'],
- 'goodPrice' => $param['goodPrice'],
- 'totalPrice' =>round( $param['goodPrice']*$param['goodNum'],2),
- 'sendNum' => $param['goodNum'],
- 'wsendNum' => 0,
- 'apay_fee' => 0,
- 'pay_fee' => 0,
- 'wpay_fee' => round( $param['goodPrice']*$param['goodNum'],2),
- 'inv_fee' => 0,
- 'ainv_fee' => 0,
- 'winv_fee' =>round( $param['goodPrice']*$param['goodNum'],2),
- 'is_diff' =>0,
- 'sendType' => 1,
- 'sendStatus' =>3,
- 'pay_status' =>1,
- 'inv_status' => 1,
- 'remark' => '',
- 'diff_weight' =>0,
- 'diff_fee' =>0,
- 'area' =>$customer['companyName']??"",
- 'customerAttr' => $customer['parent']??"",
- 'branch' => $customer['branch']??"",
- 'cgdNo' => $cgddcode,
- 'thNum' => 0,
- 'th_fee' => 0,
- 'is_del' => 0,
- 'addtime' => date("Y-m-d H:i:s"),
- 'updatetime' =>date("Y-m-d H:i:s"),
- 'inv_tag' => 0,
- 'pay_tag' => 0,
- 'inv_tag_fee' => 0,
- 'pay_tag_fee' => 0,
- ];
- $cgd=[
- 'name' => $param['cgd_depart']."采购单",
- 'sequenceNo' => $cgddcode,
- 'ownerName' => $param['buyer'],
- 'ownerid' => $param['buyerid'],
- 'department' => $param['cgd_depart'],
- 'createdTime' => date("Y-m-d H:i:s"),
- 'cgdType' =>$param['qrdType'],
- 'cgdSource' =>10,
- 'companyNo' => $param['companyNo'],
- 'companyName' => $companyName,
- 'cgdTime' => date("Y-m-d H:i:s"),
- 'bkCode' => '',
- 'qrdCode' => $qrdcode,
- 'goodNo' => $goodCode,
- 'goodName' => $param['goodName'],
- 'goodType' => 1,
- 'goodBrand' =>'',
- 'goodModel' => '',
- 'firstCat' => $cat[0]['cat_name']??"",
- 'secCat' => $cat[1]['cat_name']??"",
- 'thirdCat' => $cat[2]['cat_name']??"",
- 'catInfo' => json_encode($cat,JSON_UNESCAPED_UNICODE),
- 'fundCode' => $cat[2]['fund_code']??"",
- 'goodMaterial' => '',
- 'goodUnit' => '',
- 'goodDesc' => '',
- 'metalsType' => '',
- 'weight' => 0,
- 'goldPrice' => 0,
- 'is_diff' =>0,
- 'deliveryDay' =>'',
- 'workDay' =>'',
- 'tax' => $taxinfo,
- 'barePrice' => 0,
- 'markPrice' => 0,
- 'packPrice' => 0,
- 'certPrice' => 0,
- 'openPrice' => 0,
- 'costPrice' => 0,
- 'deliveryPrice' =>0,
- 'goodPrice' => round( $param['goodPrice']*(1-$param['cgd_tax']),2),
- 'isStock' =>0,
- 'goodNum' => $param['goodNum'],
- 'totalPrice' => round( $param['goodNum']*$param['goodPrice']*(1-$param['cgd_tax']),2),
- 'supplierNo' => $param['supplierNo'],
- 'supplierName' => $supplierName,
- 'apay_fee' => 0,
- 'wpay_fee' =>round( $param['goodNum']*$param['goodPrice']*(1-$param['cgd_tax']),2),
- 'ainv_fee' => 0,
- 'winv_fee' =>round( $param['goodNum']*$param['goodPrice']*(1-$param['cgd_tax']),2),
- 'sendType' => 1,
- 'bkCreater' => '',
- 'sendStatus' => 3,
- 'wsendNum' =>0,
- 'sendNum' => $param['goodNum'],
- 'wareHouse' => '',
- 'wsmCode' =>'',
- 'remark' => '',
- 'pay_status' =>1,
- 'inv_status' => 1,
- 'diff_weight' => 0,
- 'diff_fee' => 0,
- 'thNum' => 0,
- 'th_fee' => 0,
- 'check_rate' => '',
- 'is_del' => 0,
- 'addtime' => date("Y-m-d H:i:s"),
- 'updatetime' => date("Y-m-d H:i:s"),
- ];
- $good=[
- "spuCode"=>$goodCode,
- "good_name"=>$param['goodName'],
- "companyNo"=>$param['companyNo'],
- "supplierNo"=>$param['supplierNo'],
- "is_stock"=>0,
- "craft_desc"=>'',
- "after_sales"=>'',
- "good_img"=>'',
- "good_thumb_img"=>'',
- "good_info_img"=>'',
- "creater"=>$this->uname,
- "createrid"=>$this->uid,
- "cat_name"=>$cat[2]['cat_name'],
- "unit_name"=>'',
- "isZx"=>0,
- "status"=>0,
- "addtime"=>date("Y-m-d H:i:s"),
- "updatetime"=>date("Y-m-d H:i:s")
- ];
- $repostinsert=[
- "qrdNo"=>$qrdcode ,
- "seller_id"=>$param['sale_id'] ,
- "seller"=>$param['sale_name'] ,
- "cgder_id"=>$param['buyerid'] ,
- "cgder"=>$param['buyer'] ,
- "customerName"=>$customer['companyName']??"",
- "customerNo"=>$param['khNo'],
- "companyNo"=>$param['companyNo'],
- "companyName"=> $companyName ,
- "supplierNo"=>$param['supplierNo'],
- "supplierName"=> $supplierName ,
- "cgdNo"=>$cgddcode,
- ];
- Db::startTrans();
- try {
- $a = Db::name("qrd_info")->insert($qrd);
- $d = Db::name("inter_order")->insert($inter);
- $b = Db::name('cgd_info')->insert($cgd);
- $c = Db::name('good')->insert($good);
- $e=Db::name("report_code")->insert($repostinsert);
- if ($a && $b && $c && $d && $e) {
- Db::commit();
- return app_show(0,'新建成功');
- } else {
- Db::rollback();
- return error_show(1004,'新建失败');
- }
- } catch (\Exception $e) {
- Db::rollback();
- return error_show(1004, $e->getMessage());
- }
- }
- public function save(){
- $param =$this->request->only([
- "sale_name"=>"","sale_id"=>"","companyNo"=>'',"poCode"=>"","workCode"=>"","khNo"=>"","qrdType"=>"","goodName"=>"",
- "tax"=>"","goodNum"=>"","goodPrice"=>"","good_total"=>"","mobile"=>"","addr"=>"","contactor"=>"","id"=>"",
- "buyer"=>"","buyerid"=>"","sendtime"=>"","cat"=>'',"supplierNo"=>"","cgd_tax"=>"","sale_depart"=>"","cgd_depart"=>""
- ],"post");
- $valid =Validate::rule([
- "id|主键ID"=>"require|number|gt:0",
- "sale_name|业务员名称"=>"require|max:255|min:1",
- "sale_id|业务员名称"=>"require|number|gt:0",
- "companyNo|业务公司编号"=>"require|max:255|min:1",
- "supplierNo|业务公司编号"=>"require|max:255|min:1",
- "poCode|PO编号"=>"require|max:255|min:1",
- "workCode|单据编号"=>"require|max:255|min:1",
- "khNo|客户公司编号"=>"require|max:255|min:1",
- "qrdType|订单类型"=>"require|number|in:[1,2,3]",
- "goodName|商品名称"=>"require|max:255|min:1",
- "tax|税率"=>"require|number|gt:0",
- "goodNum|商品数量"=>"require|number|gt:0",
- "goodPrice|商品单价"=>"require|float|gt:0",
- "mobile|联系人电话"=>"require|number|mobile",
- "contactor|联系人"=>"require|max:255|min:1",
- "addr|收货地址"=>"require|max:255|min:1",
- "buyer|销售员"=>"require|max:255|min:1",
- "buyerid|销售员"=>"require|number|gt:0",
- "sendtime|发货时间"=>"require|date",
- "cat|商品分类"=>"require|number|gt:0",
- "cgd_tax|采购毛利率"=>"require|float|gt:0",
- "sale_depart|销售员部门"=>"require|max:255|min:1",
- "cgd_depart|采购员部门"=>"require|max:255|min:1",
- ]);
- if($valid->check($param)==false)return error_show(1004,$valid->getError());
- $inter_order=Db::name("inter_order")->where(["id"=>$param['id']])->findOrEmpty();
- if(empty($inter_order)) return error_show(1004,"未找到订单数据");
- $qrd_order=Db::name("qrd_info")->where(["sequenceNo"=>$inter_order['orderCode']])->findOrEmpty();
- if(empty($qrd_order)) return error_show(1004,"未找到销售单数据");
- $cgd_order=Db::name("cgd_info")->where(["sequenceNo"=>$inter_order['cgdNo']])->findOrEmpty();
- if(empty($cgd_order)) return error_show(1004,"未找到采购单数据");
- $goodinfo=Db::name("good")->where(["spuCode"=>$qrd_order['goodNo']])->findOrEmpty();
- if(empty($goodinfo)) return error_show(1004,"未找到商品数据");
- $param["cgd_tax"]=$param["cgd_tax"]/100;
- $customer =Db::name("customer_info")->where('companyNo', "=", $param['khNo'])->find();
- $supplierName =Db::name("supplier_info")->where('code', "=", $param['supplierNo'])->value("name","");
- $companyName =Db::name("supplier_info")->where('code', "=", $param['companyNo'])->value("name","");
- $taxinfo = Db::name("order_rate")->where(["id"=>$param["tax"],"status"=>1])->value("rate",0);
- $report = Db::name("report_code")->where(["qrdNo"=>$inter_order['orderCode'],"cgdNo"=>$inter_order['cgdNo']])
- ->findOrEmpty();
- $cat = [];
- if($qrd_order['status']!=0) return error_show(1004,"销售单已对账,无法修改");
- if($cgd_order['status']!=0) return error_show(1004,"采购单已对账,无法修改");
- $this->cat($param['cat'],$cat);
- if(empty($cat)) return error_show(1004,'分类信息为找到');
- $inter=[
- "id"=>$inter_order['id'],
- "rate"=>$param["cgd_tax"],
- "mobile"=>$param['mobile'],
- "contactor"=>$param['contactor'],
- "addr"=>$param['addr'],
- "sendtime"=>$param['sendtime'],
- "updatetime"=>date("Y-m-d H:i:s")
- ];
- $qrd =["id"=>$qrd_order['id'],
- 'name' => $param['sale_depart']."销售单",
- 'ownerName' => $param['sale_name'],
- 'ownerid' => $param['sale_id'],
- 'department' => $param['sale_depart'],
- 'qrdType' => $param['qrdType'],
- 'companyNo' => $param['companyNo'],
- 'companyName' => $companyName,
- 'customerNo' => $param['khNo'],
- 'customerName' =>$customer['companyName']??"",
- 'poCode' => $param['poCode'],
- 'workCode' =>$param['workCode'],
- 'goodName' => $param['goodName'],
- 'firstCat' => $cat[0]['cat_name']??"",
- 'secCat' => $cat[1]['cat_name']??"",
- 'thirdCat' => $cat[2]['cat_name']??"",
- 'catInfo' => json_encode($cat,JSON_UNESCAPED_UNICODE),
- 'fundCode' => $cat[2]['fund_code']??"",
- 'tax' => $taxinfo,
- 'area' =>$customer['companyName']??"",
- 'customerAttr' => $customer['parent']??"",
- 'branch' => $customer['branch']??"",
- 'updatetime' =>date("Y-m-d H:i:s"),
- ];
- $cgd=["id"=>$cgd_order['id'],
- 'name' => $param['cgd_depart']."采购单",
- 'ownerName' => $param['buyer'],
- 'ownerid' => $param['buyerid'],
- 'department' => $param['cgd_depart'],
- 'cgdType' =>$param['qrdType'],
- 'companyNo' => $param['companyNo'],
- 'companyName' => $companyName,
- 'goodName' => $param['goodName'],
- 'firstCat' => $cat[0]['cat_name']??"",
- 'secCat' => $cat[1]['cat_name']??"",
- 'thirdCat' => $cat[2]['cat_name']??"",
- 'catInfo' => json_encode($cat,JSON_UNESCAPED_UNICODE),
- 'fundCode' => $cat[2]['fund_code']??"",
- 'tax' => $taxinfo,
- 'supplierNo' => $param['supplierNo'],
- 'supplierName' => $supplierName,
- 'updatetime' => date("Y-m-d H:i:s"),
- ];
- if($qrd_order['status']==0 && $cgd_order['status']==0){
- $qrd['goodNum'] = $param['goodNum'];
- $qrd['goodPrice'] = $param['goodPrice'];
- $qrd['totalPrice'] = round( $param['goodPrice']*$param['goodNum'],2);
- $qrd['sendNum'] = $param['goodNum'];
- $qrd['wpay_fee'] = round( $param['goodPrice']*$param['goodNum'],2);
- $qrd['winv_fee'] = round( $param['goodPrice']*$param['goodNum'],2);
- $cgd['goodNum'] = $param['goodNum'];
- $cgd['goodPrice'] =round( $param['goodPrice']*(1-$param['cgd_tax']),2);
- $cgd['totalPrice'] = round( $param['goodNum']*$param['goodPrice']*(1-$param['cgd_tax']),2);
- $cgd['sendNum'] = $param['goodNum'];
- $cgd['wpay_fee'] = round( $param['goodNum']*$param['goodPrice']*(1-$param['cgd_tax']),2);
- $cgd['winv_fee'] = round( $param['goodNum']*$param['goodPrice']*(1-$param['cgd_tax']),2);
- }
- $good=[
- "id"=>$goodinfo['id'],
- "good_name"=>$param['goodName'],
- "companyNo"=>$param['companyNo'],
- "supplierNo"=>$param['supplierNo'],
- "cat_name"=>$cat[2]['cat_name'],
- "updatetime"=>date("Y-m-d H:i:s")
- ];
- $repostinsert=[
- "seller_id"=>$param['sale_id'] ,
- "seller"=>$param['sale_name'] ,
- "cgder_id"=>$param['buyerid'] ,
- "cgder"=>$param['buyer'] ,
- "customerName"=>$customer['companyName']??"",
- "customerNo"=>$param['khNo'],
- "companyNo"=>$param['companyNo'],
- "companyName"=> $companyName ,
- "supplierNo"=>$param['supplierNo'],
- "supplierName"=> $supplierName ,
- ];
- if(empty($report)){
- $repostinsert['qrdNo'] =$inter_order['orderCode'];
- $repostinsert['cgdNo'] =$inter_order['cgdNo'];
- }else{
- $repostinsert['id'] = $report['id'];
- }
- Db::startTrans();
- try {
- $a = Db::name("qrd_info")->save($qrd);
- $d = Db::name("inter_order")->save($inter);
- $b = Db::name('cgd_info')->save($cgd);
- $c = Db::name('good')->save($good);
- Db::name('report_code')->save($repostinsert);
- if ($a && $b && $d &&$c) {
- Db::commit();
- return app_show(0,'更新成功');
- } else {
- Db::rollback();
- return error_show(1004,'更新失败');
- }
- } catch (\Exception $e) {
- Db::rollback();
- return error_show(1004, $e->getMessage());
- }
- }
- public function info(){
- $post=$this->request->post();
- $id = isset($post['id'])&&$post['id']!='' ? $post['id'] :"";
- $condition = [['a.id',"=",$id],["b.is_del","=",0],["c.is_del","=",0],["b.qrdSource","=",10],["c.cgdSource","=",10]];
- $list=Db::name('inter_order')->alias('a')->join('qrd_info b',"a.orderCode=b.sequenceNo and b.is_del=0 and b.qrdSource=10",'left')
- ->join('cgd_info c',"a.cgdNo=c.sequenceNo and c.is_del=0 and c.cgdSource=10",'left')->json
- (["cat"])->where($condition)
- ->order("a.addtime desc")->field('a.id,
- b.goodNo ,
- a.orderCode,
- b.customerNo as khNo,
- b.customerName as khName,
- b.companyName,
- b.companyNo,
- b.poCode,
- b.workCode,
- a.addtime as ordertime,
- b.ownerName as sale_name,
- b.ownerid as sale_id,
- b.department as sale_depart,
- b.goodName,
- b.goodNo,
- b.tax,
- b.catInfo as cat,
- b.goodPrice,
- b.goodNum,
- b.totalPrice,
- b.qrdType,
- c.supplierName,
- c.supplierNo,
- a.cgdNo,
- c.ownerName as buyer,
- c.ownerid as buyerid,
- c.department as cgd_depart,
- a.sendtime ,
- a.rate*100 as cgd_tax,
- a.contactor,
- a.mobile,
- a.addr
- ')->findOrEmpty();
- if(empty($list)){
- return error_show(1004,'未找到数据');
- }
- $list['rateid'] = Db::name("order_rate")->where('rate',"=",$list['tax'])->value("id",'');
- return app_show(0,"获取成功",$list);
- }
- public function getCat(){
- $post=$this->request->post();
- $condition = [['status',"=",1],["is_del","=",0],['level',"=",3]];
- $cat_name=isset($post['cat_name']) && $post['cat_name'] !==""? trim($post['cat_name']) :"";
- if($cat_name!==""){
- $condition[]=['cat_name',"like","%$cat_name%"];
- }
- $search=isset($post['search']) && $post['search'] !==""? trim($post['search']) :"";
- if($search!==""){
- $condition[]=['search',"like","%$search%"];
- }
- $cat = Db::connect("mysql_wsm")->name("cat")->where($condition)->field("id,cat_name,fund_code,search")->order
- ("weight desc ,addtime desc")->select()->toArray();
- return app_show(0,"获取成功",$cat);
- }
- private function cat($id,&$cat=[]){
- $condition[]=["id","=",$id];
- $data= Db::connect("mysql_wsm")->name("cat")->where($condition)->field("id,cat_name,fund_code,pid")->findOrEmpty();
- array_unshift($cat,$data);
- if($data['pid']==0||empty($data)) return $cat;
- else $this->cat($data['pid'],$cat);
- }
- }
|