wugg 2 years ago
parent
commit
dad1a69ae4

+ 1 - 0
app/admin/common/User.php

@@ -86,6 +86,7 @@ class User
         'get_company_name_by_uid' => 'get_company_name_by_uid',//获取某个用户所属部门名称
         'get_company_item_user_by_name' => 'get_company_item_user_by_name',//获取某个用户所属部门名称
         'ciinfo' => 'ciinfo',//获取部门详情
+        'check_has_account_by_supplierNos' => 'check_has_account_by_supplierNos',//检查供应商是否有开通账号
 
     ];
 

+ 8 - 9
app/admin/controller/After.php

@@ -381,7 +381,7 @@ class After extends Base
                 ->findOrEmpty();
         }
         if (empty($goon)) return error_show(1003, "未找到商品数据");
-        $info['supplierNo'] = $goon['supplierNo'];
+//        $info['supplierNo'] = $goon['supplierNo'];
 
         $int = isset($goon['cat_id']) && $goon['cat_id'] != 0 ? made($goon['cat_id']) : [];
         $addcode = '';
@@ -395,7 +395,7 @@ class After extends Base
         $info['out_num'] = isset($out['send_num']) ? $out['send_num'] : '';
 //        $customer = Db::name("customer_info")->where(["companyNo"=>$info['customer_code']])->find();
         $wsmcode = [];
-        $info['wsm_supplier'] = $info['customer_name'] = '';
+        $info['wsm_supplier'] = '';
         if ($info['return_wsm'] != '') {
             $wsmcode = Db::name("warehouse_info")
                 ->alias("a")
@@ -500,7 +500,7 @@ class After extends Base
                     if (in_array($param['status'], [6, 9]) == false) throw new Exception('选项错误');
                     break;
                 case 9:
-                    if (in_array($param['status'], [2, 4]) == false) throw new Exception('选项错误');
+                    if (in_array($param['status'], [2, 4, 5]) == false) throw new Exception('选项错误');
 //                    if ($this->level != 3) throw new Exception('当前状态下只能由供应商账号操作');
                     if ($param['status'] == 4) {
                         if ($param['contactor'] == '') throw new Exception('收货人不能为空');
@@ -510,7 +510,7 @@ class After extends Base
                     }
                     break;
                 case 2:
-                    if (in_array($param['status'], [10, 4]) == false) throw new Exception('选项错误');
+                    if (in_array($param['status'], [10, 4, 5]) == false) throw new Exception('选项错误');
                     if ($param['status'] == 4) {
                         if ($param['wsm_code'] == '') throw new Exception('请填写退回仓库');
                         else {
@@ -525,7 +525,7 @@ class After extends Base
 
                     break;
                 case 10:
-                    if (in_array($param['status'], [2, 4]) == false) throw new Exception('选项错误');
+                    if (in_array($param['status'], [2, 4, 5]) == false) throw new Exception('选项错误');
                     if ($param['status'] == 4) {
                         if ($param['contactor'] == '') throw new Exception('收货人不能为空');
                         if ($param['mobile'] == '') throw new Exception('联系电话不能为空');
@@ -569,7 +569,7 @@ class After extends Base
                 $action_log_user = ['id' => $this->uid, 'nickname' => $this->uname];
 
                 //如果是小循环,增加次数
-                if ($info['status'] == 10 && $param['status'] == 2) $info['loop_total'] += 1;
+                if ($param['status'] == 10) $info['loop_total'] += 1;//只要走到节点10(业务公司修改,待供应商确认),就增加次数
 
                 //判断 退回供应商 or 退回业务公司
                 if ($info['status'] == 9) {
@@ -1259,9 +1259,8 @@ class After extends Base
             ->findOrEmpty();
         if (empty($info)) return error_show(1005, "未找到售后数据");
 
-//        if(($info['is_receive']==0&&$info['status']!=3)||($info['is_receive']==1&&$info['status']!=4) ){
-//            return error_show(1005,"售后单流程状态有误");
-//        }
+        if (($info['is_receive'] != 0 || $info['status'] != 4)) return error_show(1005, "售后单流程状态有误");
+
         $out = Db::name("order_out")
             ->where(["outCode" => $info["outCode"], "is_del" => 0])
             ->findOrEmpty();

+ 36 - 13
app/admin/controller/Consult.php

@@ -2541,9 +2541,15 @@ class Consult extends Base
         $supplierNo = isset($this->post['supplierNo']) && $this->post['supplierNo'] !== "" ? trim($this->post['supplierNo']) : "";
         if ($supplierNo !== "") $where[] = ["cb.supplierNo", '=', $supplierNo];
 
+        $relaComNo = isset($this->post['relaComNo']) && $this->post['relaComNo'] !== "" ? trim($this->post['relaComNo']) : "";
+        if ($relaComNo !== "") $where[] = ["d.companyNo", '=', $relaComNo];
+
+        //Db::name("consult_order")->where(["zxNo"=>$zxinfo['zxNo'],"is_del"=>0])->find();
+
         $count = Db::name('consult_bids')
             ->alias('cb')
             ->leftJoin("consult_info c", "c.infoNo=cb.infoNo")
+            ->leftJoin("consult_order d", "d.zxNo=c.zxNo")
 //            ->leftJoin('supplier s', 's.code=cb.supplierNo')
             ->where($where)
             ->count();
@@ -2552,8 +2558,9 @@ class Consult extends Base
         $page = $page >= $total ? $total : $page;
         $list = Db::name('consult_bids')
             ->alias('cb')
-            ->field('cb.*')
+            ->field('cb.*,d.companyNo,d.platform_code')
             ->leftJoin("consult_info c", "c.infoNo=cb.infoNo")
+            ->leftJoin("consult_order d", "d.zxNo=c.zxNo")
 //            ->leftJoin('supplier s', 's.code=cb.supplierNo')
             ->where($where)
             ->page($page, $size)
@@ -2565,22 +2572,35 @@ class Consult extends Base
         $supplier_temp =$user->handle("getCodeAndName",["code"=>array_column($list,"supplierNo")]);
 //        if($supplier_temp['code']!=0 || empty($supplier_temp['data']) ) throw new Exception('该供应商不存在');
 		$supplier=$supplier_temp['data']??[];
+
+		$unit=Db::name('unit')
+            ->where(['id'=>array_column($list,'unit_id'),'is_del'=>0])
+            ->column('unit','id');
+
+		$brand=Db::name('brand')
+            ->where(['id'=>array_column($list,'brand_id'),'is_del'=>0])
+            ->column('brand_name','id');
+
+		$tmp_cat = [];
+
         foreach ($list as $value) {
-            $catinfo = Db::name("cat")->where(["id" => $value['cat_id']])->find();
-            $value['can'] = isset($value['cat_id']) && $value['cat_id'] != 0 ? made($value['cat_id']) : [];
-            $unit = Db::name("unit")->where(["id" => $value['unit_id']])->find();
-            $value['unit'] = isset($unit['unit']) ? $unit['unit'] : '';
+            if(!isset($tmp_cat[$value['cat_id']])) $tmp_cat[$value['cat_id']] =made($value['cat_id']);
+//            $catinfo = Db::name("cat")->where(["id" => $value['cat_id']])->find();
+            $value['can'] = $tmp_cat[$value['cat_id']]??[];//isset($value['cat_id']) && $value['cat_id'] != 0 ? made($value['cat_id']) : [];
+//            $unit = Db::name("unit")->where(["id" => $value['unit_id']])->find();
+            $value['unit'] = $unit[$value['unit_id']]??'';//isset($unit['unit']) ? $unit['unit'] : '';
 //            $supplier = Db::name("supplier")->where(["code" => $value['supplierNo']])->find();
             $value['supplierName'] = isset($supplier[$value['supplierNo']]) ? $supplier[$value['supplierNo']] : "";
-            if ($value['brand_id'] != 0) {
-                $brand = Db::name("brand")->where(["id" => $value['brand_id']])->find();
-                $value["brand_name"] = isset($brand['brand_name']) ? $brand['brand_name'] : "";
-            } else {
-                $value["brand_name"] = "";
-                $value["brand_id"] = "";
-            }
+//            if ($value['brand_id'] != 0) {
+//                $brand = Db::name("brand")->where(["id" => $value['brand_id']])->find();
+            $value["brand_name"] = $brand[$value['brand_id']] ?? '';//isset($brand['brand_name']) ? $brand['brand_name'] : "";
+//            } else {
+//                $value["brand_name"] = "";
+//                $value["brand_id"] = "";
+//            }
             $bidinfo = Db::name("consult_info")->where(["infoNo" => $value["infoNo"]])->find();
-            $budget = isset($catinfo['order_rate']) ? $catinfo['order_rate'] : 0;
+//            $budget = isset($catinfo['order_rate']) ? $catinfo['order_rate'] : 0;
+            $budget = get_budget((int)$value['cat_id'], $value['companyNo'], (int)$value['platform_code']);
             $god = [
                 "metal_id" => $value['metal_id'],
                 "weight" => $value["good_weight"],
@@ -2636,6 +2656,9 @@ class Consult extends Base
 
             $data[] = $value;
         }
+
+        unset($tmp_cat);
+        unset($list);
         return app_show(0, "获取成功", ['count' => $count, 'list' => $data]);
     }
 

+ 2 - 2
app/admin/controller/Good.php

@@ -842,10 +842,10 @@ class Good extends Base
         }
 
         $relaComNo = isset($this->post['relaComNo']) && $this->post['relaComNo']!="" ? trim($this->post['relaComNo']):"";
-        if($relaComNo!="") $where[]=['b.companyNo','=', $relaComNo];
+        if($relaComNo!="") $condition[]=['b.companyNo','=', $relaComNo];
 
         $supplierNo = isset($this->post['supplierNo']) && $this->post['supplierNo']!="" ? trim($this->post['supplierNo']):"";
-        if($supplierNo!=="") $where[]=['b.supplierNo','=', $supplierNo];
+        if($supplierNo!=="") $condition[]=['b.supplierNo','=', $supplierNo];
 
         $count = Db::name("good")
             ->alias("b")

+ 1 - 1
app/admin/controller/Orderback.php

@@ -212,7 +212,7 @@ class Orderback extends Base
         }else {
             $goon = Db::name('good_platform')
                 ->alias('a')
-                ->leftJoin('good b', 'b.spuCode=a.spuCode', 'left')
+                ->leftJoin('good b', 'b.spuCode=a.spuCode')
                 ->where(['a.skuCode' => $orderinfo['skuCode']])
                 ->find();
             $is_stock=$goon['is_stock'];

+ 13 - 8
app/admin/controller/Purch.php

@@ -312,12 +312,13 @@ class Purch extends Base
         $im = Db::name('purchease_back')->where(['cgdNo' => $data['cgdNo'], 'is_del' => 0])->select();
         $var = [];
         foreach ($im as $value) {
-            if ($data['order_type'] == 3||$data['order_type']==4) {
-                $goo = Db::name("good_zixun")->where(["spuCode" => $value['spuCode'], "is_del" => 0])->find();
+
+            if (in_array($data['order_type'], [3, 4])) {
+                $goo = Db::name("good_zixun")->field('cat_id')->where(["spuCode" => $value['spuCode'], "is_del" => 0])->findOrEmpty();
             } else {
-                $goo = Db::name('good_basic')->where(['spuCode' => $value['spuCode']])->find();
+                $goo = Db::name('good_basic')->field('cat_id')->where(['spuCode' => $value['spuCode']])->findOrEmpty();
             }
-            if ($goo == false) {
+            if (empty($goo)) {
                 return error_show(1002, "未找到商品数据");
             }
             $cat = isset($goo['cat_id']) && $goo['cat_id'] != 0 ? made($goo['cat_id']) : [];
@@ -326,7 +327,8 @@ class Purch extends Base
         }
         //采购工差单
         $dom = Db::name("purchease_diff")->where(['cgdNo' => $data['cgdNo'], 'is_del' => 0])->find();
-        if ($data['order_type'] == 3 || $data['order_type']==4) {
+
+        if (in_array($data['order_type'], [3, 4])) {
             $goon = Db::name("good_zixun")->where(["spuCode" => $data['spuCode'], "is_del" => 0])->find();
         } else {
             $goon = Db::name('good_basic')->where(['spuCode' => $data['spuCode']])->find();
@@ -572,8 +574,7 @@ class Purch extends Base
         if($diff_fee!=""){
             $data['diff_fee'] = $diff_fee;
         }
-        $supplierNo = isset($this->post['supplierNo'])&&$this->post['supplierNo']!=""?trim($this->post['supplierNo'])
-            :"";
+        $supplierNo = isset($this->post['supplierNo'])&&$this->post['supplierNo']!=""?trim($this->post['supplierNo']) :"";
         if($supplierNo!=""){
         	$userCommon = new \app\admin\common\User();
                 $supplier_temp = $userCommon->handle('getCodeAndName', ['code' => $supplierNo]);
@@ -811,6 +812,8 @@ class Purch extends Base
                 $uid = $this->uid;
                 $uname = $this->uname;
 
+                $all_has_supplier_account = checkHasAccountBySupplierNos(array_column($info, 'supplierNo'));
+
                 foreach ($cgdNo as $vlue) {
 					$isreturn = cgd_sale_return($vlue);
 			        if($isreturn){
@@ -818,7 +821,9 @@ class Purch extends Base
 			        }
 
 			        if($status == 1){
-                        if($this->level == 2 && $uid != $supplier_cgderid[$info[$vlue]['supplierNo']]) throw new Exception('只能由供应商负责人来操作');//与供应商确认的这个操作,只能由供应商负责人来操作
+                        //如果开通了供应商账号,则只允许level3账号操作,level2账号不允许操作
+                        if (isset($all_has_supplier_account['data'][$info[$vlue]['supplierNo']]) && $this->level == 2) throw new Exception('已开通供应商账号,当前账号不能操作');
+//                        if($this->level == 2 && $uid != $supplier_cgderid[$info[$vlue]['supplierNo']]) throw new Exception('只能由供应商负责人来操作');//与供应商确认的这个操作,只能由供应商负责人来操作
                     }
 
                     if ($status == 1 || $status == 2) {

+ 13 - 8
app/admin/controller/Purchin.php

@@ -302,6 +302,11 @@ class Purchin extends Base
         ];
         Db::startTrans();
         try{
+
+            //如果开通了供应商账号,则只允许level3账号操作,level2账号不允许操作
+            $all_has_supplier_account = checkHasAccountBySupplierNos([$cgdinfo['supplierNo']]);
+            if (isset($all_has_supplier_account['data'][$cgdinfo['supplierNo']]) && $this->level == 2) throw new Exception('已开通供应商账号,当前账号不能操作');
+
             $win = Db::name("purchease_in")->insert($orin,true);
             if($win){
                 $sto = ["order_code"=>$wsm_in_code,"status"=>$status,"action_remark"=>'',"action_type"=>"edit"];
@@ -357,14 +362,14 @@ class Purchin extends Base
 //                if ($this->uid != $personid) throw new Exception('只能由供应商负责人操作');
 //                }
 
-            if ($this->level == 2) {
-                $person = Db::connect('mysql_sys')
-                    ->name('supplier')
-                    ->where('code', $cgdinfo['supplierNo'])
-                    ->field('person,personid')
-                    ->findOrEmpty();
-                if ($this->uid != $person['personid']) throw new Exception('只能由供应商负责人操作');
-            }
+//                if ($this->level == 2) {
+//                    $person = Db::connect('mysql_sys')
+//                        ->name('supplier')
+//                        ->where('code', $cgdinfo['supplierNo'])
+//                        ->field('person,personid')
+//                        ->findOrEmpty();
+//                    if ($this->uid != $person['personid']) throw new Exception('只能由供应商负责人操作');
+//                }
 
                 if($status==1){
                             Db::commit();

+ 2 - 1
app/admin/controller/Reorder.php

@@ -812,13 +812,14 @@ class Reorder extends Base
                 break;
             case 10:
                 if (in_array($param['status'], [4, 8]) == false) return json_show(1004, '选项错误');
-                if ($param['status'] == 8) $info['loop_total'] += 1;
                 break;
         }
 
         //当处于以下节点时,level2账号必须是供应商负责人操作,level3账号不做限制
         if(in_array($info['status'],[9,10]) && ($this->level==2) && ($this->uid!=$info['person_id'])) return json_show(1004,'您不是供应商负责人,此时无权操作');
 
+        if ($param['status'] == 10) $info['loop_total'] += 1;//只要走到节点10(业务公司修改,待供应商确认),就增加次数
+
 //        $status =  isset($this->post['status']) && $this->post['status'] !=="" ? intval($this->post['status']):"";
 //        if($status===""){
 //            return error_show(1004,"参数status不能为空");

+ 8 - 2
app/admin/controller/Sale.php

@@ -3543,8 +3543,7 @@ class Sale extends Base
         }
         $companyNo = isset($this->post['companyNo']) && $this->post['companyNo'] !== "" ? trim($this->post['companyNo']) : "";
         if ($companyNo != "") {
-            $where[] = ['b.customer_code', "like", "%$companyNo%"];
-
+            $where[] = ['b.supplierNo', "like", "%$companyNo%"];
         }
 
         $relaComNo = isset($this->post['relaComNo']) && $this->post['relaComNo'] !== "" ? trim($this->post['relaComNo']) : "";
@@ -4065,6 +4064,13 @@ class Sale extends Base
         if (empty($einfo)) {
             return error_show(1002, "未找到销售订单数据");
         }
+
+        //判断供应商是否开通账号,若开通的话,则只能由供应商账号操作
+        if ($this->level != 3) {
+            $temp = checkHasAccountBySupplierNos([$einfo['supNo']]);
+            if (isset($temp[$einfo['supNo']])) return json_show(1004, '非供应商账号不能操作');
+        }
+
         $is_reurn = Db::name("sale_return")->where(['orderCode' => $outinfo['orderCode'], 'is_del' => 0])->where("status", "in", [1,2,3,7,9,10])->find();
         if ($is_reurn != false) {
             return error_show(1002, "销售单存在退货未处理完成");

+ 26 - 24
app/admin/controller/SupplierClient.php

@@ -790,15 +790,15 @@ class SupplierClient extends Base {
         if ($param['orderCode'] != "") $where[] = ['a.orderCode', "like", "%{$param['orderCode']}%"];
         if ($param['good_code'] != "") $where[] = ['a.good_code', "like", "%{$param['good_code']}%"];
         if ($param['good_name'] != "") $where[] = ['a.good_name', "like", "%{$param['good_name']}%"];
-        if ($param['customer_code'] != "") $where[] = ['c.customer_code', "like", "%{$param['customer_code']}%"];
+        if ($param['customer_code'] != "") $where[] = ['a.customer_code', "like", "%{$param['customer_code']}%"];
         if ($param['except_code'] != "") $where[] = ['a.except_code', "=", $param['except_code']];
         if ($param['apply_name'] != "") $where[] = ['a.apply_name', "like", "%{$param['apply_name']}%"];
         if ($param['start'] !== "") $where[] = ['a.addtime', ">=", $param['start']];
         if ($param['end'] !== "") $where[] = ['a.addtime', "<=", $param['end']];
         if ($param['order_source'] !== "") $where[] = ['c.order_source', "=", $param['order_source']];
-        if ($param['supplierNo'] !== "") $where[] = ['c.supNo', "like", '%' . $param['supplierNo'] . '%'];
-        if ($param['companyNo'] !== "") $where[] = ['c.supplierNo', "like", '%' . $param['companyNo'] . '%'];
-
+        if ($param['supplierNo'] !== "") $where[] = ['a.supplierNo', "like", '%' . $param['supplierNo'] . '%'];
+        if ($param['companyNo'] !== "") $where[] = ['a.companyNo', "like", '%' . $param['companyNo'] . '%'];
+        if ($param['relaComNo'] !== "") $where[] = ['a.companyNo', "like", '%' . $param['companyNo'] . '%'];
 
         $condition = [];
 
@@ -812,12 +812,12 @@ class SupplierClient extends Base {
                 $condition[] = ["a.apply_id", "in", $arr];
                 $condition[] = ["a.cgderid", "in", $hand];
             }
-            if ($param['relaComNo'] !== '') $where[] = ['c.supplierNo', "=", $param['relaComNo']];
+//            if ($param['relaComNo'] !== '') $where[] = ['c.supplierNo', "=", $param['relaComNo']];
         }
 
-        //level3账号不允许看到库存品订单
+        //level3账号不允许看到库存品订单,暂时该过滤条件废弃
         if ($this->level == 3){
-        	 $where[] = ['c.supNo', '=', $param['relaComNo']];
+//        	 $where[] = ['c.supNo', '=', $param['relaComNo']];
         }
 //        $condition .="a.cgderid in {$hand} or a.person_id in {$hand} or a.apply_id in ("
 //        .implode(',',$role[DataGroupModel::$type_全部]).")";
@@ -885,11 +885,9 @@ class SupplierClient extends Base {
         }
         $customer_code = isset($this->post['customer_code']) && $this->post['customer_code'] != "" ? trim($this->post['customer_code']) : "";
         if ($customer_code != "") {
-            $where[] = ['b.customer_code', "like", "%{$customer_code}%"];
+            $where[] = ['a.customer_code', "like", "%{$customer_code}%"];
         }
 
-
-
         $order_code = isset($this->post['order_code']) && $this->post['order_code'] != "" ? trim($this->post['order_code']) : "";
         if ($order_code != "") {
             $where[] = ['a.orderCode', "like", "%{$order_code}%"];
@@ -917,11 +915,14 @@ class SupplierClient extends Base {
         }
 
         $supplierNo = trim($this->post['supplierNo'] ?? '');
-        if ($supplierNo !== '') $where[] = ['b.supNo', 'like', '%'.$supplierNo.'%'];
+        if ($supplierNo !== '') $where[] = ['a.supplierNo', 'like', '%'.$supplierNo.'%'];
 
         $companyNo = trim($this->post['companyNo'] ?? '');
-        if ($companyNo !== '') $where[] = ['b.supplierNo', 'like', '%'.$companyNo.'%'];
-        $relaComNo = isset($this->post['relaComNo']) && $this->post['relaComNo'] != "" ? trim($this->post['relaComNo']) : "";
+        if ($companyNo !== '') $where[] = ['a.companyNo', 'like', '%'.$companyNo.'%'];
+
+        $relaComNo = trim($this->post['relaComNo'] ?? '');
+        if ($relaComNo !== '') $where[] = ['a.companyNo', 'like', '%'.$relaComNo.'%'];
+
         $condition = [];
         //只有level2的账号过滤数据权限
         if ($this->level == 2) {
@@ -932,13 +933,13 @@ class SupplierClient extends Base {
                 $condition[] = ['a.apply_id', 'in', $arr];
                 $condition[] = ['a.cgderid', 'in', $hand];
             }
-            if ($relaComNo != "") $where[] = ['b.supplierNo', '=', $relaComNo];
+//            if ($relaComNo != "") $where[] = ['b.supplierNo', '=', $relaComNo];
         }
 
         //供应商账号不允许看到库存品数据
-        if ($this->level == 3) {
-        	 $where[] = ['b.supNo', '=', $relaComNo];
-        }
+//        if ($this->level == 3) {
+//        	 $where[] = ['b.supNo', '=', $relaComNo];
+//        }
         $count = Db::name("order_back")
             ->alias('a')
             ->leftJoin('sale b', 'b.orderCode=a.orderCode AND b.is_del=0')
@@ -1032,18 +1033,19 @@ class SupplierClient extends Base {
         if ($supplierNo !== "") $where[] = ['b.supNo', "like", '%' . $supplierNo . '%'];
 
         $companyNo = isset($this->post['companyNo']) && $this->post['companyNo'] != "" ? trim($this->post['companyNo']) : "";
-        if ($companyNo !== "") $where[] = ['b.supplierNo', "like", '%' . $companyNo . '%'];
+        if ($companyNo !== "") $where[] = ['sr.companyNo', "like", '%' . $companyNo . '%'];
 
         $customer_code = isset($this->post['customer_code']) && $this->post['customer_code'] != "" ? trim($this->post['customer_code']) : "";
-        if ($customer_code !== "") $where[] = ['b.customer_code', "like", '%' . $customer_code . '%'];
+        if ($customer_code !== "") $where[] = ['sr.customer_code', "like", '%' . $customer_code . '%'];
 
         $order_source = $order_source = isset($this->post['order_source']) && $this->post['order_source'] != "" ? trim($this->post['order_source']) : "";
         if ($order_source !== "") $where[] = ['b.order_source', "=", $order_source];
 
+	    $relaComNo = isset($this->post['relaComNo']) && $this->post['relaComNo'] != "" ? trim($this->post['relaComNo']) : "";
+        if ($relaComNo != "") $where[] = ['sr.companyNo', '=', $relaComNo];
 
         $condition=[];
 
-	    $relaComNo = isset($this->post['relaComNo']) && $this->post['relaComNo'] != "" ? trim($this->post['relaComNo']) : "";
         //只有level2的账号过滤数据权限
         if ($this->level == 2) {
             $role = $this->checkDataShare();
@@ -1057,13 +1059,13 @@ class SupplierClient extends Base {
                 $condition[] = ["sr.cgderid", "in", $hand];
                 $condition[] = ["sr.person_id", "in", $hand];
             }
-             if ($relaComNo != "") $where[] = ['sr.companyNo', '=', $relaComNo];
+//             if ($relaComNo != "") $where[] = ['sr.companyNo', '=', $relaComNo];
         }
 
         //供应商账号不允许看到库存品数据
-        if ($this->level == 3){
-        	 $where[] = ['b.supNo', '=', $relaComNo];
-        }
+//        if ($this->level == 3){
+//        	 $where[] = ['b.supNo', '=', $relaComNo];
+//        }
 		if(in_array($this->roleid,config('app.wsm_cgder_role'))){
 			$where[]=["b.order_type","=",1];
 		}

+ 7 - 2
app/command/HandleDataScreen.php

@@ -10,6 +10,8 @@ use think\facade\Cache;
 class HandleDataScreen extends Command
 {
 
+    private $redis_hash_key = 'data_screen_wsm';
+
     protected function configure()
     {
         $this->setName('handle_data_screen')
@@ -31,11 +33,14 @@ class HandleDataScreen extends Command
 //            'ccc'=>['item'=>9999]
 //        ];
 
+        $redis = Cache::store('redis')->handler();
 
-        $rs = Cache::store('redis')->handler()->hmset($key,['name'=>'张三','age'=>23]);
+        $rs = $redis->hmset($key,['name'=>'张三','age'=>23]);
 
+        $a = $redis->hget($key,'name');
+        $all = $redis->hgetall($key);
 
-        halt($rs);
+        halt($rs,$a,$all);
 
 
     }

+ 121 - 114
app/command/ImportOrderFromCHandleData.php

@@ -73,14 +73,16 @@ class ImportOrderFromCHandleData extends Command
                     $orderCode = makeNo("QR");
                     $customer_code = $extend_data['customer_code'];
 
-                    $customer = Db::name("customer_info")
+                    $customer = Db::connect('mysql_sys')
+                        ->name("customer_info")
                         ->where(["companyNo" => $customer_code])
                         ->find();
 
                     if ($customer == false) throw new Exception('未找到客户数据');
 
                     $supplierNo = $extend_data['companyNo'];
-                    $supplier = Db::name("business")
+                    $supplier = Db::connect('mysql_sys')
+                        ->name("business")
                         ->where(["companyNo" => $supplierNo])
                         ->find();
                     if ($supplier == false) throw new Exception('未找到平台供应商数据');
@@ -189,13 +191,16 @@ class ImportOrderFromCHandleData extends Command
                             //$sale_price = $act['activity_price'];//不能改动价格
                         }
                     }
-                     $supplier_temp_info = Db::name('supplier')
+                     $supplier_temp_info = Db::connect('mysql_sys')
+                         ->name('supplier')
                         ->field('id,person,personid')
                         ->where('code', $ct['supplierNo'])
                         ->findOrEmpty();
                     $cgd = [
                         "supplierNo" => $ct['supplierNo'],
+                        "supplier_name" =>$supplier_temp_info['name'] ,
                         "companyNo" => $supplierNo,
+                        "companyName" =>$supplier['company'] ,
                         "orderCode" => $orderCode,
                         "spuCode" => $ct['spuCode'],
                         "skuCode" => $ct['skuCode'],
@@ -215,7 +220,7 @@ class ImportOrderFromCHandleData extends Command
                         "order_type" => $order_type,
                         "order_source" => $order_source,
                         "createrid" =>$supplier_temp_info['personid'],
-                         "creater" =>$supplier_temp_info['person'],
+                        "creater" =>$supplier_temp_info['person'],
                         'send_way' => 2,
                         'gold_price' => $ct['cgd_gold_price'],
                         'good_createrid' => $goodinfo['createrid'],
@@ -508,8 +513,8 @@ class ImportOrderFromCHandleData extends Command
     private function createCgd($data = [], $rm = '0', $ri = '', array &$standing_book_data = [])
     {
         $cgdCode = makeNo("CG");
-        $supplier = Db::name("supplier")->where(["code" => $data['supplierNo'], "is_del" => 0])->find();
-        if ($supplier == false) return false;
+//        $supplier = Db::name("supplier")->where(["code" => $data['supplierNo'], "is_del" => 0])->find();
+//        if ($supplier == false) return false;
 
         $wsm = Db::name("warehouse_info")
             ->where(["supplierNo" => $data["supplierNo"], "companyNo" => $data['companyNo'], "is_del" => 0])
@@ -518,9 +523,9 @@ class ImportOrderFromCHandleData extends Command
             $wsm_code = makeNo("WSM");
             $inwsm = [
                 "wsm_code" => $wsm_code,
-                "name" => $supplier['name'],
+                "name" => $data['supplier_name'],
                 "wsm_type" => 2,
-                "supplierNo" => $supplier['code'],
+                "supplierNo" => $data['supplierNo'],
                 "addr" => "",
                 "addrs_code" => "",
                 "contactor" => 0,
@@ -568,8 +573,9 @@ class ImportOrderFromCHandleData extends Command
             "diff_fee" => "0",
             "gold_price" => $data['gold_price'],
             "supplierNo" => $data['supplierNo'],
-            "supplier_name" => $supplier['name'],
+            "supplier_name" => $data['supplier_name'],
             "companyNo" => $data['companyNo'],
+            "companyName" => $data['companyName'],
             "send_status" => 1,
             "send_num" => 0,
             "wsend_num" => $data['good_num'],
@@ -604,9 +610,9 @@ class ImportOrderFromCHandleData extends Command
                 "order_id" => $up,
                 "order_status" => $cg['status'],
                 "before_status" => 0,
-                'holder_id' => $supplier['personid'],
-                'wait_id'=>$supplier['personid'],
-                'wait_name'=>$supplier['person'],
+                'holder_id' => $data['createrid'],
+                'wait_id'=>$data['createrid'],
+                'wait_name'=>$data['creater'],
             ]);
 
             $standing_book_data['cgdNo'] = $cgdCode;
@@ -662,108 +668,109 @@ class ImportOrderFromCHandleData extends Command
 
 
     //创建.....
-    private function RelaCgd(array $outinfo = [], array &$standing_book_data = [])
-    {
-        //备库单
-        $cgd = Db::name("order_bk")
-            ->where([
-                ["spuCode", "=", $outinfo['spuCode']],
-                ["is_del", "=", 0],
-                ["balance_num", ">=", $outinfo['good_num']],
-                ['companyNo', "=", $outinfo['companyNo']]
-            ])
-//            ->lock(true)
-            ->find();
-
-        if ($cgd == false) return false;
-
-        $cgdinfo = Db::name("purchease_order")
-            ->where(['cgdNo' => $cgd['cgdNo'], "is_del" => 0])
-            ->find();
-        if ($cgdinfo == false) return false;
-
-        //判断该供应商是否开通了供应商账号
-        $from_tag=checkHasAccountBySupplierNos([$cgdinfo['supplierNo']]);
-
-        $QrdCgd = [
-            "cgdNo" => makeNo("CG"),
-            "bkcode" => $cgdinfo['bkcode'],
-            'wsm_code' => $cgdinfo['wsm_code'],
-            "cgder_id" => $cgdinfo['cgder_id'],
-            "cgder" => $cgdinfo['cgder'],
-            "spuCode" => $cgdinfo['spuCode'],
-            "good_name" => $cgdinfo['good_name'],
-            "good_num" => $outinfo['good_num'],
-            "good_price" => $cgdinfo['good_price'],
-            "total_fee" => round($cgdinfo['good_price'] * $outinfo['good_num'], 2),
-            "pakge_fee" => $cgdinfo['pakge_fee'],
-            "cert_fee" => $cgdinfo['cert_fee'],
-            "open_fee" => $cgdinfo['open_fee'],
-            "delivery_fee" => $cgdinfo['delivery_fee'],
-            "mark_fee" => $cgdinfo['mark_fee'],
-            "teach_fee" => $cgdinfo['teach_fee'],
-            "nake_fee" => $cgdinfo['nake_fee'],
-            "demo_fee" => $cgdinfo['demo_fee'],
-            "weight" => $cgdinfo['weight'],
-            "diff_weight" => $cgdinfo['diff_weight'],
-            "diff_fee" => $cgdinfo['diff_fee'],
-            "gold_price" => $cgdinfo['gold_price'],
-            "supplierNo" => $cgdinfo['supplierNo'],
-            "supplier_name" => $cgdinfo['supplier_name'],
-            "companyNo" => $cgdinfo['companyNo'],
-            "send_status" => 3,
-            "send_num" => $outinfo['good_num'],
-            "wsend_num" => 0,
-            "remark" => $cgdinfo['remark'],
-            "status" => 3,//入库完成
-            "lasttime" => $cgdinfo['lasttime'],
-            "is_del" => 0,
-            "order_type" => $outinfo['order_type'],
-            "order_source" => $outinfo['order_source'],
-            "good_type" => $cgdinfo['good_type'],
-            "addtime" => date("Y-m-d H:i:s"),
-            "updatetime" => date("Y-m-d H:i:s"),
-            'good_createrid' => $outinfo['good_createrid'],
-            'good_creater' => $outinfo['good_creater'],//商品创建人
-            'from_tag' => isset($from_tag[$cgdinfo['supplierNo']]) ? 2 : 1,//来源标签:1采销(默认),2供应商端
-        ];
-        $insetrCgd = Db::name("purchease_order")->insert($QrdCgd);
-        if ($insetrCgd == false) return false;
-
-        $standing_book_data = array_merge($standing_book_data, [
-            'cgdNo' => $QrdCgd['cgdNo'],
-            'bk_code' => $QrdCgd['bkcode'],
-        ]);
-
-        $merge_num = Db::name("purchease_order")
-            ->where(["bkcode" => $cgdinfo['bkcode'], "order_type" => $outinfo['order_type'], "is_del" => 0])
-            ->where('order_source', '<>', 0)//0备库单不计算在内
-            ->field("sum(send_num)-sum(th_num) as num")
-            ->find();
-        $cgd['balance_num'] = $cgd['total_num'] - $merge_num['num'];
-        $cgd['merge_num'] = $merge_num['num'];
-        $cgd['updatetime'] = date("Y-m-d H:i:s");
-        $up = Db::name("order_bk")->save($cgd);
-        if ($up == false) return false;
-
-        $data = [
-            "orderCode" => $outinfo['orderCode'],
-            "cgdNo" => $QrdCgd['cgdNo'],
-            "spuCode" => $outinfo['spuCode'],
-            "companyNo" => $outinfo['companyNo'],
-            "good_num" => $outinfo['good_num'],
-            "wsend_num" => $outinfo['good_num'],
-            "send_num" => 0,
-            "wait_num" => $outinfo['good_num'],
-            "status" => 1,
-            "source" => 1,
-        ];
-        $order = Db::name("order_num")->save($data);
-        if ($order == false) return false;
-
-        $this->cgd_data = $QrdCgd;
-        return true;
-    }
+//    private function RelaCgd(array $outinfo = [], array &$standing_book_data = [])
+//    {
+//        //备库单
+//        $cgd = Db::name("order_bk")
+//            ->where([
+//                ["spuCode", "=", $outinfo['spuCode']],
+//                ["is_del", "=", 0],
+//                ["balance_num", ">=", $outinfo['good_num']],
+//                ['companyNo', "=", $outinfo['companyNo']]
+//            ])
+////            ->lock(true)
+//            ->find();
+//
+//        if ($cgd == false) return false;
+//
+//        $cgdinfo = Db::name("purchease_order")
+//            ->where(['cgdNo' => $cgd['cgdNo'], "is_del" => 0])
+//            ->find();
+//        if ($cgdinfo == false) return false;
+//
+//        //判断该供应商是否开通了供应商账号
+//        $from_tag=checkHasAccountBySupplierNos([$cgdinfo['supplierNo']]);
+//
+//        $QrdCgd = [
+//            "cgdNo" => makeNo("CG"),
+//            "bkcode" => $cgdinfo['bkcode'],
+//            'wsm_code' => $cgdinfo['wsm_code'],
+//            "cgder_id" => $cgdinfo['cgder_id'],
+//            "cgder" => $cgdinfo['cgder'],
+//            "spuCode" => $cgdinfo['spuCode'],
+//            "good_name" => $cgdinfo['good_name'],
+//            "good_num" => $outinfo['good_num'],
+//            "good_price" => $cgdinfo['good_price'],
+//            "total_fee" => round($cgdinfo['good_price'] * $outinfo['good_num'], 2),
+//            "pakge_fee" => $cgdinfo['pakge_fee'],
+//            "cert_fee" => $cgdinfo['cert_fee'],
+//            "open_fee" => $cgdinfo['open_fee'],
+//            "delivery_fee" => $cgdinfo['delivery_fee'],
+//            "mark_fee" => $cgdinfo['mark_fee'],
+//            "teach_fee" => $cgdinfo['teach_fee'],
+//            "nake_fee" => $cgdinfo['nake_fee'],
+//            "demo_fee" => $cgdinfo['demo_fee'],
+//            "weight" => $cgdinfo['weight'],
+//            "diff_weight" => $cgdinfo['diff_weight'],
+//            "diff_fee" => $cgdinfo['diff_fee'],
+//            "gold_price" => $cgdinfo['gold_price'],
+//            "supplierNo" => $cgdinfo['supplierNo'],
+//            "supplier_name" => $cgdinfo['supplier_name'],
+//            "companyNo" => $cgdinfo['companyNo'],
+//            "companyName" => ,
+//            "send_status" => 3,
+//            "send_num" => $outinfo['good_num'],
+//            "wsend_num" => 0,
+//            "remark" => $cgdinfo['remark'],
+//            "status" => 3,//入库完成
+//            "lasttime" => $cgdinfo['lasttime'],
+//            "is_del" => 0,
+//            "order_type" => $outinfo['order_type'],
+//            "order_source" => $outinfo['order_source'],
+//            "good_type" => $cgdinfo['good_type'],
+//            "addtime" => date("Y-m-d H:i:s"),
+//            "updatetime" => date("Y-m-d H:i:s"),
+//            'good_createrid' => $outinfo['good_createrid'],
+//            'good_creater' => $outinfo['good_creater'],//商品创建人
+//            'from_tag' => isset($from_tag[$cgdinfo['supplierNo']]) ? 2 : 1,//来源标签:1采销(默认),2供应商端
+//        ];
+//        $insetrCgd = Db::name("purchease_order")->insert($QrdCgd);
+//        if ($insetrCgd == false) return false;
+//
+//        $standing_book_data = array_merge($standing_book_data, [
+//            'cgdNo' => $QrdCgd['cgdNo'],
+//            'bk_code' => $QrdCgd['bkcode'],
+//        ]);
+//
+//        $merge_num = Db::name("purchease_order")
+//            ->where(["bkcode" => $cgdinfo['bkcode'], "order_type" => $outinfo['order_type'], "is_del" => 0])
+//            ->where('order_source', '<>', 0)//0备库单不计算在内
+//            ->field("sum(send_num)-sum(th_num) as num")
+//            ->find();
+//        $cgd['balance_num'] = $cgd['total_num'] - $merge_num['num'];
+//        $cgd['merge_num'] = $merge_num['num'];
+//        $cgd['updatetime'] = date("Y-m-d H:i:s");
+//        $up = Db::name("order_bk")->save($cgd);
+//        if ($up == false) return false;
+//
+//        $data = [
+//            "orderCode" => $outinfo['orderCode'],
+//            "cgdNo" => $QrdCgd['cgdNo'],
+//            "spuCode" => $outinfo['spuCode'],
+//            "companyNo" => $outinfo['companyNo'],
+//            "good_num" => $outinfo['good_num'],
+//            "wsend_num" => $outinfo['good_num'],
+//            "send_num" => 0,
+//            "wait_num" => $outinfo['good_num'],
+//            "status" => 1,
+//            "source" => 1,
+//        ];
+//        $order = Db::name("order_num")->save($data);
+//        if ($order == false) return false;
+//
+//        $this->cgd_data = $QrdCgd;
+//        return true;
+//    }
 
 
 }

+ 14 - 1
app/command/TempHandleBusinessData.php

@@ -141,7 +141,7 @@ class TempHandleBusinessData extends Command
                     ->whereIn('code', array_column($rs['data'], 'supplierNo'))
                     ->column('*', 'code');
 
-                $insert = $gys_insert = [];
+                $insert = $gys_insert = $customer_ins = [];
                 foreach ($rs['data'] as $item) {
                     if (!isset($exists[$item['companyNo']])) {
                         $insert[] = [
@@ -181,6 +181,14 @@ class TempHandleBusinessData extends Command
                                 'updatetime' => date('Y-m-d H:i:s'),
                             ]
                         );
+
+                        $customer_ins[]=[
+                            'companyNo'=>$item['companyNo'],
+                            'companyName'=>$item['company'],
+                            'parent'=>'业务公司',
+                            'addtime'=>date('Y-m-d H:i:s'),
+                            'updatetime'=>date('Y-m-d H:i:s'),
+                        ];
                     }else{
 	                    if($item["updatetime"]==$exists[$item['companyNo']]['updatetime']) continue;
                     	$upda=[
@@ -216,6 +224,11 @@ class TempHandleBusinessData extends Command
                         ->table('cfp_supplier_info')
                         ->insertAll($gys_insert);
                 }
+                if ($customer_ins) {
+                    Db::connect('mysql_cxinv')
+                        ->table('cfp_customer_info')
+                        ->insertAll($customer_ins);
+                }
 
             }
 

+ 119 - 110
app/command/handleYzOrderData.php

@@ -277,11 +277,14 @@ class handleYzOrderData extends Command
                 $tmp = $userCommon->handle('sInfo',['code'=>$ct['supplierNo']]);
                 $supplier_temp_info = $tmp['data']??[];
 
+                $names = $userCommon->handle('getCodeAndName',['code'=>[$goodinfo['companyNo']]]);
+
                 $data = [
                     "orderCode" => $orderCode,
                     "good_code" => $spuCode,
                     "skuCode" => $skuCode,
                     "customer_code" => $customer_code,
+                    "customer_name" => $ct['name'] . '客户',
                     "good_name" => isset($goodinfo['good_name']) && $goodinfo['good_name'] !== '' ? $goodinfo['good_name'] : '',
                     "good_num" => $good_num,
                     "cat_id" => $goodinfo['cat_id'],
@@ -297,6 +300,9 @@ class handleYzOrderData extends Command
                     "good_type" => $goodtype,
                     "send_type" => $sendtype,
                     "supplierNo" => $goodinfo['companyNo'],
+                    "supplierName" => $names['data'][$goodinfo['companyNo']],
+                    'supNo'=>$goodinfo['supplierNo'],
+                    'supName'=>$supplier_temp_info['name'],
                     "is_del" => 0,
                     "zxNo" => "",
                     "platform_order" => $platform_order,
@@ -354,7 +360,9 @@ class handleYzOrderData extends Command
 
                         $cgd = [
                             "supplierNo" => $ct['supplierNo'],
+                            "supplier_name" => $supplier_temp_info['name'],
                             "companyNo" => $supplierNo,
+                            "companyName" => $names['data'][$supplierNo]??'',
                             "orderCode" => $orderCode,
                             "spuCode" => $spuCode,
                             "skuCode" => $skuCode,
@@ -374,7 +382,7 @@ class handleYzOrderData extends Command
                             "order_type" => $order_type,
                             "order_source" => $order_source,
                             "createrid" =>$supplier_temp_info['personid']??'',
-                             "creater" =>$supplier_temp_info['person']??'',
+                            "creater" =>$supplier_temp_info['person']??'',
                             'send_way' => 2,
                             'gold_price' => $ct['cgd_gold_price'],
                             'good_createrid' => $goodinfo['createrid'],
@@ -644,8 +652,8 @@ class handleYzOrderData extends Command
     private function createCgd($data = [], $rm = '0', $ri = '', array &$standing_book_data = [])
     {
         $cgdCode = makeNo("CG");
-        $supplier = Db::name("supplier")->where(["code" => $data['supplierNo'], "is_del" => 0])->find();
-        if ($supplier == false) return false;
+//        $supplier = Db::name("supplier")->where(["code" => $data['supplierNo'], "is_del" => 0])->find();
+//        if ($supplier == false) return false;
 
         $wsm = Db::name("warehouse_info")
             ->where(["supplierNo" => $data["supplierNo"], "companyNo" => $data['companyNo'], "is_del" => 0])
@@ -654,9 +662,9 @@ class handleYzOrderData extends Command
             $wsm_code = makeNo("WSM");
             $inwsm = [
                 "wsm_code" => $wsm_code,
-                "name" => $supplier['name'],
+                "name" => $data['supplier_name'],
                 "wsm_type" => 2,
-                "supplierNo" => $supplier['code'],
+                "supplierNo" => $data['supplierNo'],
                 "addr" => "",
                 "addrs_code" => "",
                 "contactor" => 0,
@@ -704,8 +712,9 @@ class handleYzOrderData extends Command
             "diff_fee" => "0",
             "gold_price" => $data['gold_price'],
             "supplierNo" => $data['supplierNo'],
-            "supplier_name" => $supplier['name'],
+            "supplier_name" => $data['supplier_name'],
             "companyNo" => $data['companyNo'],
+            "companyName" => $data['companyName'],
             "send_status" => 1,
             "send_num" => 0,
             "wsend_num" => $data['good_num'],
@@ -740,9 +749,9 @@ class handleYzOrderData extends Command
                 "order_id" => $up,
                 "order_status" => $cg['status'],
                 "before_status" => 0,
-                'holder_id'=>$supplier['personid'],
-                'wait_id'=>$supplier['personid'],
-                'wait_name'=>$supplier['person'],
+                'holder_id'=>$data['createrid'],
+                'wait_id'=>$data['createrid'],
+                'wait_name'=>$data['creater'],
             ]);
 
             $standing_book_data['cgdNo'] = $cgdCode;
@@ -797,107 +806,107 @@ class handleYzOrderData extends Command
 
 
     //创建.....
-    private function RelaCgd(array $outinfo = [], array &$standing_book_data = [])
-    {
-        //备库单
-        $cgd = Db::name("order_bk")
-            ->where([
-                ["spuCode", "=", $outinfo['spuCode']],
-                ["is_del", "=", 0],
-                ["balance_num", ">=", $outinfo['good_num']],
-                ['companyNo', "=", $outinfo['companyNo']]
-            ])
-            ->lock(true)
-            ->find();
-
-        if ($cgd == false) return false;
-
-        $cgdinfo = Db::name("purchease_order")->where(['cgdNo' => $cgd['cgdNo'], "is_del" => 0])->find();
-        if ($cgdinfo == false) return false;
-
-        //判断该供应商是否开通了供应商账号
-        $from_tag=checkHasAccountBySupplierNos([$cgdinfo['supplierNo']]);
-
-        $QrdCgd = [
-            "cgdNo" => makeNo("CG"),
-            "bkcode" => $cgdinfo['bkcode'],
-            'wsm_code' => $cgdinfo['wsm_code'],
-            "cgder_id" => $cgdinfo['cgder_id'],
-            "cgder" => $cgdinfo['cgder'],
-            "spuCode" => $cgdinfo['spuCode'],
-            "good_name" => $cgdinfo['good_name'],
-            "good_num" => $outinfo['good_num'],
-            "good_price" => $cgdinfo['good_price'],
-            "total_fee" => round($cgdinfo['good_price'] * $outinfo['good_num'], 2),
-            "pakge_fee" => $cgdinfo['pakge_fee'],
-            "cert_fee" => $cgdinfo['cert_fee'],
-            "open_fee" => $cgdinfo['open_fee'],
-            "delivery_fee" => $cgdinfo['delivery_fee'],
-            "mark_fee" => $cgdinfo['mark_fee'],
-            "teach_fee" => $cgdinfo['teach_fee'],
-            "nake_fee" => $cgdinfo['nake_fee'],
-            "demo_fee" => $cgdinfo['demo_fee'],
-            "weight" => $cgdinfo['weight'],
-            "diff_weight" => $cgdinfo['diff_weight'],
-            "diff_fee" => $cgdinfo['diff_fee'],
-            "gold_price" => $cgdinfo['gold_price'],
-            "supplierNo" => $cgdinfo['supplierNo'],
-            "supplier_name" => $cgdinfo['supplier_name'],
-            "companyNo" => $cgdinfo['companyNo'],
-            "send_status" => 3,
-            "send_num" => $outinfo['good_num'],
-            "wsend_num" => 0,
-            "remark" => $cgdinfo['remark'],
-            "status" => 3,//入库完成
-            "lasttime" => $cgdinfo['lasttime'],
-            "is_del" => 0,
-            "order_type" => $outinfo['order_type'],
-            "order_source" => $outinfo['order_source'],
-            "good_type" => $cgdinfo['good_type'],
-            "addtime" => date("Y-m-d H:i:s"),
-            "updatetime" => date("Y-m-d H:i:s"),
-            'good_createrid' => $outinfo['good_createrid'],
-            'good_creater' => $outinfo['good_creater'],//商品创建人
-            'from_tag' => isset($from_tag[$cgdinfo['supplierNo']]) ? 2 : 1,//来源标签:1采销(默认),2供应商端
-        ];
-        $insetrCgd = Db::name("purchease_order")->insert($QrdCgd);
-        if ($insetrCgd == false) return false;
-
-        $standing_book_data = array_merge($standing_book_data, [
-            'cgdNo' => $QrdCgd['cgdNo'],
-            'bk_code' => $QrdCgd['bkcode'],
-        ]);
-
-        $merge_num = Db::name("purchease_order")
-            ->where(["bkcode" => $cgdinfo['bkcode'], "order_type" => $outinfo['order_type'], "is_del" => 0])
-            ->where('order_source', '<>', 0)//0备库单不计算在内
-            ->field("sum(send_num)-sum(th_num) as num")
-            ->find();
-        $cgd['balance_num'] = $cgd['total_num'] - $merge_num['num'];
-        $cgd['merge_num'] = $merge_num['num'];
-        $cgd['updatetime'] = date("Y-m-d H:i:s");
-        $up = Db::name("order_bk")->save($cgd);
-        if ($up == false) return false;
-
-        $data = [
-            "orderCode" => $outinfo['orderCode'],
-            "cgdNo" => $QrdCgd['cgdNo'],
-            "spuCode" => $outinfo['spuCode'],
-            "companyNo" => $outinfo['companyNo'],
-            "good_num" => $outinfo['good_num'],
-            "wsend_num" => $outinfo['good_num'],
-            "send_num" => 0,
-            "wait_num" => $outinfo['good_num'],
-            "status" => 1,
-            "source" => 1,
-        ];
-        $order = Db::name("order_num")->save($data);
-        if ($order == false) return false;
-
-        $this->cgd_data = $QrdCgd;
-
-        return true;
-    }
+//    private function RelaCgd(array $outinfo = [], array &$standing_book_data = [])
+//    {
+//        //备库单
+//        $cgd = Db::name("order_bk")
+//            ->where([
+//                ["spuCode", "=", $outinfo['spuCode']],
+//                ["is_del", "=", 0],
+//                ["balance_num", ">=", $outinfo['good_num']],
+//                ['companyNo', "=", $outinfo['companyNo']]
+//            ])
+//            ->lock(true)
+//            ->find();
+//
+//        if ($cgd == false) return false;
+//
+//        $cgdinfo = Db::name("purchease_order")->where(['cgdNo' => $cgd['cgdNo'], "is_del" => 0])->find();
+//        if ($cgdinfo == false) return false;
+//
+//        //判断该供应商是否开通了供应商账号
+//        $from_tag=checkHasAccountBySupplierNos([$cgdinfo['supplierNo']]);
+//
+//        $QrdCgd = [
+//            "cgdNo" => makeNo("CG"),
+//            "bkcode" => $cgdinfo['bkcode'],
+//            'wsm_code' => $cgdinfo['wsm_code'],
+//            "cgder_id" => $cgdinfo['cgder_id'],
+//            "cgder" => $cgdinfo['cgder'],
+//            "spuCode" => $cgdinfo['spuCode'],
+//            "good_name" => $cgdinfo['good_name'],
+//            "good_num" => $outinfo['good_num'],
+//            "good_price" => $cgdinfo['good_price'],
+//            "total_fee" => round($cgdinfo['good_price'] * $outinfo['good_num'], 2),
+//            "pakge_fee" => $cgdinfo['pakge_fee'],
+//            "cert_fee" => $cgdinfo['cert_fee'],
+//            "open_fee" => $cgdinfo['open_fee'],
+//            "delivery_fee" => $cgdinfo['delivery_fee'],
+//            "mark_fee" => $cgdinfo['mark_fee'],
+//            "teach_fee" => $cgdinfo['teach_fee'],
+//            "nake_fee" => $cgdinfo['nake_fee'],
+//            "demo_fee" => $cgdinfo['demo_fee'],
+//            "weight" => $cgdinfo['weight'],
+//            "diff_weight" => $cgdinfo['diff_weight'],
+//            "diff_fee" => $cgdinfo['diff_fee'],
+//            "gold_price" => $cgdinfo['gold_price'],
+//            "supplierNo" => $cgdinfo['supplierNo'],
+//            "supplier_name" => $cgdinfo['supplier_name'],
+//            "companyNo" => $cgdinfo['companyNo'],
+//            "send_status" => 3,
+//            "send_num" => $outinfo['good_num'],
+//            "wsend_num" => 0,
+//            "remark" => $cgdinfo['remark'],
+//            "status" => 3,//入库完成
+//            "lasttime" => $cgdinfo['lasttime'],
+//            "is_del" => 0,
+//            "order_type" => $outinfo['order_type'],
+//            "order_source" => $outinfo['order_source'],
+//            "good_type" => $cgdinfo['good_type'],
+//            "addtime" => date("Y-m-d H:i:s"),
+//            "updatetime" => date("Y-m-d H:i:s"),
+//            'good_createrid' => $outinfo['good_createrid'],
+//            'good_creater' => $outinfo['good_creater'],//商品创建人
+//            'from_tag' => isset($from_tag[$cgdinfo['supplierNo']]) ? 2 : 1,//来源标签:1采销(默认),2供应商端
+//        ];
+//        $insetrCgd = Db::name("purchease_order")->insert($QrdCgd);
+//        if ($insetrCgd == false) return false;
+//
+//        $standing_book_data = array_merge($standing_book_data, [
+//            'cgdNo' => $QrdCgd['cgdNo'],
+//            'bk_code' => $QrdCgd['bkcode'],
+//        ]);
+//
+//        $merge_num = Db::name("purchease_order")
+//            ->where(["bkcode" => $cgdinfo['bkcode'], "order_type" => $outinfo['order_type'], "is_del" => 0])
+//            ->where('order_source', '<>', 0)//0备库单不计算在内
+//            ->field("sum(send_num)-sum(th_num) as num")
+//            ->find();
+//        $cgd['balance_num'] = $cgd['total_num'] - $merge_num['num'];
+//        $cgd['merge_num'] = $merge_num['num'];
+//        $cgd['updatetime'] = date("Y-m-d H:i:s");
+//        $up = Db::name("order_bk")->save($cgd);
+//        if ($up == false) return false;
+//
+//        $data = [
+//            "orderCode" => $outinfo['orderCode'],
+//            "cgdNo" => $QrdCgd['cgdNo'],
+//            "spuCode" => $outinfo['spuCode'],
+//            "companyNo" => $outinfo['companyNo'],
+//            "good_num" => $outinfo['good_num'],
+//            "wsend_num" => $outinfo['good_num'],
+//            "send_num" => 0,
+//            "wait_num" => $outinfo['good_num'],
+//            "status" => 1,
+//            "source" => 1,
+//        ];
+//        $order = Db::name("order_num")->save($data);
+//        if ($order == false) return false;
+//
+//        $this->cgd_data = $QrdCgd;
+//
+//        return true;
+//    }
 
 
     //与有赞项目回调

+ 4 - 1
app/common.php

@@ -1246,7 +1246,10 @@ if (!function_exists('get_encryption_password')) {
 if (!function_exists('checkHasAccountBySupplierNos')) {
     function checkHasAccountBySupplierNos(array $supplierNo = []): array
     {
-        return [];
+        $userCommon = new \app\admin\common\User();
+        $rs = $userCommon->handle('check_has_account_by_supplierNos', ['supplierNo' => $supplierNo]);
+        unset($userCommon);
+        return $rs['data'];
 //        return \app\abutment\model\SupplierRelationUser::where('is_del', \app\abutment\model\SupplierUser::$is_del_normal)
 //            ->whereIn('supplierNo', $supplierNo)
 //            ->where('status', \app\abutment\model\SupplierUser::$status_normal)