Browse Source

2023-02-08阶段性提交合并,客户公司全局修改及细节优化

wufeng 2 years ago
parent
commit
bf96aa48e9

+ 28 - 14
app/abutment/controller/Consult.php

@@ -66,6 +66,10 @@ class Consult extends HomeBaseController
         $all_brand = Db::name('brand')
             ->whereIn('id', array_column($list, 'brand_id'))
             ->column('brand_name', 'id');
+
+        $userCommon = new User();
+        $customer = $userCommon->handle('getCodeAndName',['code'=>array_column($list,'khNo')]);
+
         foreach ($list as $value) {
             $value['can'] = isset($value['cat_id']) && $value['cat_id'] != 0 ? made($value['cat_id']) : [];
 //            $cat = Db::name("cat")->where(["id" => $value['cat_id']])->find();
@@ -77,10 +81,10 @@ class Consult extends HomeBaseController
             $value['khname'] = "";
             $value['specinfo'] = isset($value['specinfo']) && $value['specinfo'] != "" ? json_decode($value['specinfo'], true) : [];
             if ($value['khNo'] !== "") {
-                $kh = Db::name("customer_info")
-                    ->where(['companyNo' => $value['khNo']])
-                    ->find();
-                $value['khname'] = isset($kh['companyName']) ? $kh['companyName'] : "";
+//                $kh = Db::name("customer_info")
+//                    ->where(['companyNo' => $value['khNo']])
+//                    ->find();
+                $value['khname'] = $customer['data'][$value['khNo']]??'';//isset($kh['companyName']) ? $kh['companyName'] : "";
             }
             $consult = Db::name("consult_bids")
                 ->where(["infoNo" => $value['infoNo'], "createrid" => $this->request->user['uid'], "is_del" => 0])
@@ -137,11 +141,12 @@ class Consult extends HomeBaseController
         $zxinfo['metal_name'] = isset($zxinfo['metal_id']) && $zxinfo['metal_id'] != 0 ? $this->noble[$zxinfo['metal_id']] : "";
         $zxinfo['specinfo'] = json_decode($zxinfo['specinfo'], true);
 
-        if ($zxorder['khNo'] !== "") {
-            $kh = Db::name("customer_info")->where(['companyNo' => $zxorder['khNo']])->find();
-            $zxinfo['khname'] = isset($kh['companyName']) ? $kh['companyName'] : "";
-            $zxinfo['khNo'] = $zxorder['khNo'];
-        }
+        $codes=[];
+        if ($zxorder['khNo'] !== "")  $codes[]=$zxorder['khNo'];
+//            $kh = Db::name("customer_info")->where(['companyNo' => $zxorder['khNo']])->find();
+//            $zxinfo['khname'] = isset($kh['companyName']) ? $kh['companyName'] : "";
+//            $zxinfo['khNo'] = $zxorder['khNo'];
+//        }
         if ($zxinfo['unit'] !== "") {
             $unit = Db::name("unit")->where(['id' => $zxinfo['unit']])->find();
             $zxinfo['unit_name'] = isset($unit['unit']) ? $unit['unit'] : "";
@@ -150,10 +155,10 @@ class Consult extends HomeBaseController
             $unit = Db::name("brand")->where(['id' => $zxinfo['brand_id']])->find();
             $zxinfo['brand'] = isset($unit['brand_name']) ? $unit['brand_name'] : "";
         }
-        if ($zxorder['companyNo'] !== "") {
-            $kh = Db::name("business")->where(['companyNo' => $zxorder['companyNo']])->find();
-            $zxinfo['company'] = isset($kh['company']) ? $kh['company'] : "";
-        }
+        if ($zxorder['companyNo'] !== "") $codes[]=$zxorder['companyNo'];
+//            $kh = Db::name("business")->where(['companyNo' => $zxorder['companyNo']])->find();
+//            $zxinfo['company'] = isset($kh['company']) ? $kh['company'] : "";
+//        }
         if ($zxorder['is_project'] == 1 && $zxorder['projectNo'] !== "") {
             $project = Db::name("project")->where(["projectNo" => $zxorder['projectNo'], "is_del" => 0])->find();
             $zxinfo['project_name'] = isset($project['project_name']) ? $project['project_name'] : "";
@@ -162,8 +167,9 @@ class Consult extends HomeBaseController
             $projectinfo = Db::name("project_info")->where(["pgNo" => $zxinfo['pgNo']])->find();
             $zxinfo['pgNo'] = isset($projectinfo['pgNo']) ? $projectinfo['pgNo'] : "";
         }
+        $userCommon = new User();
+
         if ($zxorder['depart'] > 0) {
-            $userCommon = new User();
             $rs = $userCommon->handle('ciinfo', ['id' => $zxorder['depart']]);
             $zxinfo['departinfo'] = $rs['data'] ?? [];
         }
@@ -171,6 +177,14 @@ class Consult extends HomeBaseController
             $palt = Db::name("platform")->where(["id" => $zxorder['platform_code']])->find();
             $zxinfo['platform_name'] = isset($palt['platform_name']) ? $palt['platform_name'] : "";
         }
+
+        if($codes){
+            $names = $userCommon->handle('getCodeAndName',['code'=>$codes]);
+            $zxinfo['khname'] = $names['data'][$zxorder['khNo']]??'';//isset($kh['companyName']) ? $kh['companyName'] : "";
+            $zxinfo['khNo'] = $zxorder['khNo'];
+            $zxinfo['company'] = $names['data'][$zxorder['companyNo']]??'';//
+        }
+
         return json_show(0, "获取成功", $zxinfo);
     }
 

+ 47 - 18
app/abutment/controller/Order.php

@@ -4,6 +4,7 @@ namespace app\abutment\controller;
 
 use app\abutment\model\SupplierRelationUser as SupplierRelationUserModel;
 use app\abutment\model\SupplierUser as SupplierUserModel;
+use app\admin\common\User;
 use app\admin\model\ActionLog;
 use app\admin\model\GoodLog;
 use app\admin\model\GoodStockInfo;use app\admin\model\ProcessOrder;
@@ -285,23 +286,24 @@ class Order extends HomeBaseController
                 $goon["brand_id"] = "";
             }
 
-            $supplier = Db::name("supplier")->where(["code" => $goon['supplierNo']])->find();
-            $goon['supplierName'] = isset($supplier['name']) ? $supplier['name'] : "";
             $goon['noble_name'] = isset($goon['noble_metal']) && $goon['noble_metal'] != 0 ? $this->noble[$goon['noble_metal']] : "";
-            if (isset($goon['companyNo']) && $goon['companyNo'] != "") {
-                $company = Db::name("business")->where(["companyNo" => $goon['companyNo']])->find();
-            }
-            $goon['company'] = isset($company['company']) ? $company['company'] : "";
         }
         $int = isset($goon['cat_id']) && $goon['cat_id'] != 0 ? made($goon['cat_id']) : [];
+
+        $codes = [$goon['supplierNo'],$goon['companyNo'],$data['companyNo']];
+
         $data['wsm_name'] = "";
         if ($data['wsm_code'] != "") {
-            $wsmcode = Db::name("warehouse_info")->alias("a")->leftJoin("supplier b", "a.supplierNo=b.code")
+            $wsmcode = Db::name("warehouse_info")
+                ->alias("a")
+//                ->leftJoin("supplier b", "a.supplierNo=b.code")
                 ->leftJoin("warehouse_addr c", "a.wsm_code=c.wsm_code and c.is_del=0")
-                ->where(["a.wsm_code" => $data['wsm_code']])->field("a.name as wsm_name,b.name,b.code,c.wsm_name as wsm_contactor,c.wsm_mobile,c.wsm_addr,c.addr_code")->find();
+                ->where(["a.wsm_code" => $data['wsm_code']])
+                ->field("a.name as wsm_name,c.wsm_name as wsm_contactor,c.wsm_mobile,c.wsm_addr,c.addr_code,a.supplierNo")
+                ->find();
+            $codes[]=$wsmcode['supplierNo'];
             $data['wsm_name'] = isset($wsmcode['wsm_name']) ? $wsmcode['wsm_name'] : "";
-            $data['wsm_supplier'] = isset($wsmcode['name']) ? $wsmcode['name'] : "";
-            $data['wsm_supplierNo'] = isset($wsmcode['code']) ? $wsmcode['code'] : "";
+
             $data['wsm_contactor'] = isset($wsmcode['wsm_contactor']) ? $wsmcode['wsm_contactor'] : "";
             $data['wsm_mobile'] = isset($wsmcode['wsm_mobile']) ? $wsmcode['wsm_mobile'] : "";
             // $data['wsm_addr'] =isset($wsmcode['wsm_addr']) ? $wsmcode['wsm_addr']:"";
@@ -317,10 +319,10 @@ class Order extends HomeBaseController
         $data['purcheasediff'] = $dom;
         $data['send_num'] -= $data['th_num'];
         $data['total_fee'] = round($data['total_fee'] - $data['th_fee'], 2);
-        if (isset($data['companyNo']) && $data['companyNo'] != "") {
-            $company = Db::name("business")->where(["companyNo" => $data['companyNo']])->find();
-        }
-        $data['company'] = isset($company['company']) ? $company['company'] : "";
+//        if (isset($data['companyNo']) && $data['companyNo'] != "") {
+//            $company = Db::name("business")->where(["companyNo" => $data['companyNo']])->find();
+//        }
+//        $data['company'] = isset($company['company']) ? $company['company'] : "";
         //$data['info'] = $var;
         $data['purcheaseback'] = $var;
 
@@ -345,14 +347,41 @@ class Order extends HomeBaseController
         $data['addr_info'] = $addr;
 
         //补充客户名称
+
+        $customer_code='';
         if (empty($data['orderCode'])) $data['customer'] = [];
         else {
-            $data['customer'] = Db::name('sale')
+            $customer_code = Db::name('sale')
                 ->alias('s')
-                ->field('c.companyNo,c.companyName')
-                ->leftJoin('customer_info c', 'c.companyNo=s.customer_code AND c.is_del=0')
+//                ->field('c.companyNo,c.companyName')
+//                ->leftJoin('customer_info c', 'c.companyNo=s.customer_code AND c.is_del=0')
                 ->where(['s.orderCode' => $data['orderCode']])
-                ->find();
+                ->value('s.customer_code');
+            $codes[]=$customer_code;
+        }
+
+
+        //补充相关名称
+        $userCommon = new User();
+        $names = $userCommon->handle('getCodeAndName',['code'=>$codes]);
+
+        if ($data['wsm_code'] != "") {
+            $data['wsm_supplier'] = $names['data'][$wsmcode['supplierNo']]??'';//isset($wsmcode['name']) ? $wsmcode['name'] : "";
+            $data['wsm_supplierNo'] = $wsmcode['supplierNo'];//isset($wsmcode['code']) ? $wsmcode['code'] : "";
+        }
+
+//            $supplier = Db::name("supplier")->where(["code" => $goon['supplierNo']])->find();
+        $goon['supplierName'] = $names['data'][$goon['supplierNo']]??'';//isset($supplier['name']) ? $supplier['name'] : "";
+//            if (isset($goon['companyNo']) && $goon['companyNo'] != "") {
+//                $company = Db::name("business")->where(["companyNo" => $goon['companyNo']])->find();
+//            }
+        $goon['company'] = $names['data'][$goon['companyNo']]??'';//isset($company['company']) ? $company['company'] : "";
+
+        $data['company'] = $names['data'][$data['companyNo']]??'';//isset($company['company']) ? $company['company'] : "";
+
+        if ($customer_code != '') {
+            $data['customer']['companyNo'] = $customer_code;
+            $data['customer']['companyName'] = $names['data'][$customer_code] ?? '';
         }
 
         return json_show(0, "获取成功", $data);

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

@@ -59,6 +59,7 @@ class User
         'bInfo' => 'bInfo',
         'bEdit' => 'bEdit',
         'bTitle' => 'bTitle',
+        'cInfo' => 'cInfo',
         'cTitle' => 'cTitle',
         'getCodeAndName' => 'getCodeAndName',
         'upgrade' => 'supplerUpgrade',

+ 18 - 7
app/admin/controller/After.php

@@ -237,6 +237,7 @@ class After extends Base
             'start' => '',
             'end' => '',
             'company_name' => '',
+            'supplierNo' => '',
         ], 'post', 'trim');
 
         $where = [['a.is_del', "=", 0]];
@@ -253,6 +254,12 @@ class After extends Base
         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['supplierNo'] !== "") {
+            $spuCode = Db::name('good_basic')
+                ->where(['is_del' => 0, 'supplierNo' => $param['supplierNo']])
+                ->column('spuCode');
+            $where[] = ['c.good_code', "in", $spuCode];
+        }
 
         $condition = [];
 
@@ -277,7 +284,7 @@ class After extends Base
 
         $count = Db::name("order_return")
             ->alias("a")
-//            ->leftJoin("order_returninfo b", "a.returnCode=b.returnCode")
+            ->leftJoin("order_returninfo b", "a.returnCode=b.returnCode")
             ->leftJoin("sale c", "c.orderCode=a.orderCode AND c.is_del=0")
             ->where($where)
             ->where(function ($query) use ($condition) {
@@ -288,13 +295,13 @@ class After extends Base
 //        $page = $total>=$page ? $page :$total;
         $list = Db::name("order_return")
             ->alias("a")
-//            ->leftJoin("order_returninfo b", "a.returnCode=b.returnCode")
+            ->leftJoin("order_returninfo b", "a.returnCode=b.returnCode")
             ->leftJoin("sale c", "c.orderCode=a.orderCode AND c.is_del=0")
             ->where($where)
             ->where(function ($query) use ($condition) {
                 $query->whereOr($condition);
             })
-//            ->field("a.*,b.return_wsm,b.contactor,b.mobile,b.addr,b.addr_code,b.post_code,b.post_company,b.post_fee,b.gys_remark")
+            ->field("a.*,b.return_wsm,b.contactor,b.mobile,b.addr,b.addr_code,b.post_code,b.post_company,b.post_fee,b.gys_remark")
             ->page($param['page'], $param['size'])
             ->order("a.addtime desc")
             ->select()
@@ -374,6 +381,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'] ='';
         if ($info['return_wsm'] != '') {
             $wsmcode = Db::name("warehouse_info")
                 ->alias("a")
@@ -381,21 +389,24 @@ class After extends Base
                 ->where(["a.wsm_code" => $info['return_wsm']])
                 ->field("a.name as wsm_name,a.wsm_code,a.contactor_name,a.position,a.mobile,a.addrs_code,a.addr,a.companyNo,a.supplierNo")
                 ->find();
+            $userCommon=new \app\admin\common\User();
+            $names = $userCommon->handle('getCodeAndName',['code'=>[$wsmcode['supplierNo'],$wsmcode['companyNo']]]);
+            $info['wsm_supplier'] = $names['data'][$wsmcode['supplierNo']]??'';//isset($wsmcode['name']) ? $wsmcode['name'] : "";
+            $info['customer_name'] = $names['data'][$wsmcode['companyNo']]??'';//isset($customer['company']) ? trim($customer['company']) : '';
         }
 
-        $userCommon=new \app\admin\common\User();
-        $names = $userCommon->handle('getCodeAndName',['code'=>[$wsmcode['supplierNo'],$wsmcode['companyNo']]]);
+
 
         $info['wsm_code'] = isset($wsmcode['wsm_code']) ? $wsmcode['wsm_code'] : "";
         $info['wsm_name'] = isset($wsmcode['wsm_name']) ? $wsmcode['wsm_name'] : "";
-        $info['wsm_supplier'] = $names['data'][$wsmcode['supplierNo']]??'';//isset($wsmcode['name']) ? $wsmcode['name'] : "";
+
         $info['wsm_supplierNo'] = $wsmcode['supplierNo']??"";
 //        $customer = [];
 //        if (isset($orderinfo['supplierNo']) && $orderinfo['supplierNo'] != '') {
 //            $customer = Db::name("business")->field('id,company,companyNo')->where(["companyNo" => $orderinfo['supplierNo']])->find();
 //        }
 
-        $info['customer_name'] = $names['data'][$wsmcode['companyNo']]??'';//isset($customer['company']) ? trim($customer['company']) : '';
+
         $info['customer_code'] = $wsmcode['companyNo']??"";//isset($customer['companyNo']) ? trim($customer['companyNo']) : '';
         $info['can'] = $int;
 

+ 31 - 16
app/admin/controller/Consult.php

@@ -99,16 +99,23 @@ class Consult extends Base
         $all_createrid = array_column($list,'createrid');
         $item = get_company_name_by_uid($all_createrid);
 
+        $brand = Db::name("brand")
+            ->where(['id'=>array_column($list,'brand_id')])
+            ->column('brand_name','id');
+
+        $userCommon = new \app\admin\common\User();
+        $names = $userCommon->handle('getCodeAndName', ['code' => array_column($list, 'khNo')]);
+
         $data=[];
         foreach ($list as $value){
             $value['can']= isset($value['cat_id']) && $value['cat_id'] !=0 ? made($value['cat_id']):[];
             $value['specinfo']=isset($value['specinfo'])&&$value['specinfo']!=""? json_decode($value['specinfo'], true):[];
-            $brand = Db::name("brand")->where(['id'=>$value['brand_id']])->find();
-            $value['brand_name']= isset($brand['brand_name']) && $brand['brand_name']!='' ? $brand['brand_name']:"";
+//            $brand = Db::name("brand")->where(['id'=>$value['brand_id']])->find();
+            $value['brand_name']= $brand[$value['brand_id']]??'';//isset($brand['brand_name']) && $brand['brand_name']!='' ? $brand['brand_name']:"";
             $value['khname']="";
-            if($value['khNo']!==""){
-                $kh=Db::name("customer_info")->where(['companyNo'=>$value['khNo']])->find();
-                $value['khname']= isset($kh['companyName'])?$kh['companyName']:"";
+            if ($value['khNo'] !== "") {
+//                $kh=Db::name("customer_info")->where(['companyNo'=>$value['khNo']])->find();
+                $value['khname'] = $names['data'][$value['khNo']] ?? '';//isset($kh['companyName'])?$kh['companyName']:"";
             }
             $value['metal_name']=isset($value['metal_id'])&& $value['metal_id']!=0?$this->noble[$value['metal_id']]:"";
             $value['company_name'] = $item[$value['createrid']]??'';
@@ -365,9 +372,12 @@ class Consult extends Base
         $zxinfo['metal_name']=isset($zxinfo['metal_id'])&& $zxinfo['metal_id']!=0?$this->noble[$zxinfo['metal_id']]:"";
         $zxinfo['specinfo']=json_decode($zxinfo['specinfo'],true);
 
+        $userCommon = new \app\admin\common\User();
+        $tmp = $userCommon->handle('getCodeAndName', ['code' => [$zxorder['companyNo'],$zxorder['khNo']]]);
+
         if($zxorder['khNo']!==""){
-            $kh=Db::name("customer_info")->where(['companyNo'=>$zxorder['khNo']])->find();
-            $zxinfo['khname']= isset($kh['companyName'])?$kh['companyName']:"";
+//            $kh=Db::name("customer_info")->where(['companyNo'=>$zxorder['khNo']])->find();
+            $zxinfo['khname']= $tmp['data'][$zxorder['khNo']]??'';//isset($kh['companyName'])?$kh['companyName']:"";
             $zxinfo['khNo']= $zxorder['khNo'];
         }
         if($zxinfo['unit']!==""){
@@ -381,9 +391,6 @@ class Consult extends Base
         if($zxorder['companyNo']!==""){
 //            $kh=Db::name("business")->where(['companyNo'=>$zxorder['companyNo']])->find();
 //            $zxinfo['company']= isset($kh['company'])?$kh['company']:"";
-
-            $userCommon = new \app\admin\common\User();
-            $tmp = $userCommon->handle('getCodeAndName', ['code' => $zxorder['companyNo']]);
             $zxinfo['company'] = $tmp['data'][$zxorder['companyNo']] ?? '';
         }
         if($zxorder['is_project']==1 && $zxorder['projectNo']!==""){
@@ -2286,6 +2293,14 @@ class Consult extends Base
             ->select()
             ->toArray();
         $data=[];
+
+        $brand = Db::name('brand')
+            ->whereIn('id',array_column($list,'brand_id'))
+            ->column('brand_name','id');
+
+        $userCommon=new \app\admin\common\User();
+        $names = $userCommon->handle('getCodeAndName',['code'=>array_column($list,'khNo')]);
+
         foreach ($list as $value){
             $value['can']= isset($value['cat_id']) && $value['cat_id'] !=0 ? made($value['cat_id']):[];
 //              $cat =Db::name("cat")
@@ -2295,15 +2310,15 @@ class Consult extends Base
             $budget = get_budget($value['cat_id'], $value['companyNo'], $value['platform_code']);
                $value['original_price']=sprintf("%.2f",$value['budget_price']* (1 -$budget));
 
-            $brand = Db::name("brand")->where(['id'=>$value['brand_id']])->find();
-            $value['brand_name']= isset($brand['brand_name']) && $brand['brand_name']!='' ? $brand['brand_name']:"";
+//            $brand = Db::name("brand")->where(['id'=>$value['brand_id']])->find();
+            $value['brand_name']= $brand[$value['brand_id']]??'';//isset($brand['brand_name']) && $brand['brand_name']!='' ? $brand['brand_name']:"";
             $value['khname']="";
             $value['specinfo']=isset($value['specinfo'])&&$value['specinfo']!=""? json_decode($value['specinfo'],true):[];
             if($value['khNo']!==""){
-                $kh=Db::name("customer_info")
-                    ->where(['companyNo'=>$value['khNo']])
-                    ->find();
-                $value['khname']= isset($kh['companyName'])?$kh['companyName']:"";
+//                $kh=Db::name("customer_info")
+//                    ->where(['companyNo'=>$value['khNo']])
+//                    ->find();
+                $value['khname']= $names['data'][$value['khNo']]??'';//isset($kh['companyName'])?$kh['companyName']:"";
             }
             $consult =Db::name("consult_bids")
                 ->where(["infoNo"=>$value['infoNo'],"createrid"=>$this->uid,"is_del"=>0])

+ 4 - 2
app/admin/controller/Customer.php

@@ -116,7 +116,8 @@ class Customer extends Base
 
             $var[]=$iten;
         }
-        $itm = Db::name('customer_info')
+        $itm = Db::connect('mysql_sys')
+            ->name('customer_info')
             ->alias('ci')
 //            ->leftJoin("depart_user u", "u.nickname=ci.creater AND u.is_del=0")
             ->where($where)
@@ -309,7 +310,8 @@ class Customer extends Base
         if($db>0){
             return error_show(1004,"下一级还有组织,不允许删除");
         }
-        $var= Db::name('customer_info')->where(['itemid'=>$id,'is_del'=>0])->count();
+        $var= Db::connect('mysql_sys')
+            ->name('customer_info')->where(['itemid'=>$id,'is_del'=>0])->count();
         if($var>0){
             return error_show(1004,"下一级还有分公司,不允许删除");
         }

+ 29 - 7
app/admin/controller/Orderback.php

@@ -69,6 +69,15 @@ class Orderback extends Base
         if($end!==""){
             $where[]=['a.addtime',"<=", $end];
         }
+
+        $supplierNo = $this->post['supplierNo'] ?? '';
+        if ($supplierNo !== '') {
+            $spuCode = Db::name('good_basic')
+                ->where(['is_del' => 0, 'supplierNo' => $supplierNo])
+                ->column('spuCode');
+            $where[] = ['b.good_code', 'in', $spuCode];
+        }
+
         $condition=[];
 //        $role=$this->checkRole();
 //        if(!empty($role['write']) && $this->uid!=""){
@@ -120,21 +129,34 @@ class Orderback extends Base
             ->select()
             ->toArray();
         $data=[];
+
+        $all_wsm = Db::name("warehouse_info")
+            ->alias("a")
+            ->where(["a.wsm_code"=>array_column($list,'return_wsm')])
+            ->column("a.name,a.supplierNo",'a.wsm_code');//b.name,b.code
+
+        $userCommon = new \app\admin\common\User();
+        $names = $userCommon->handle('getCodeAndName', ['code' => array_merge(array_column($all_wsm,'supplierNo'),array_column($list,'customer_code'))]);
+
         foreach ($list as $value){
             $value['wsm_name']="";
             $value['wsm_supplier']='';
             $value['wsm_supplierNo']='';
             if($value['return_wsm']!=""){
-                $wsmcode = Db::name("warehouse_info")->alias("a")->leftJoin("supplier b","a.supplierNo=b.code")
-                    ->where(["a.wsm_code"=>$value['return_wsm']])->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']:"";
+//                $wsmcode = Db::name("warehouse_info")
+//                    ->alias("a")
+////                    ->leftJoin("supplier b","a.supplierNo=b.code")
+//                    ->where(["a.wsm_code"=>$value['return_wsm']])
+//                    ->field("a.name as wsm_name,a.supplierNo")//b.name,b.code
+//                    ->find();
+                $value['wsm_name'] =$all_wsm[$value['return_wsm']]['name']??'';//isset($wsmcode['wsm_name']) ? $wsmcode['wsm_name']:"";
+                $value['wsm_supplier'] =$names['data'][$all_wsm[$value['return_wsm']]['supplierNo']]??'';//isset($wsmcode['name']) ? $wsmcode['name']:"";
+                $value['wsm_supplierNo'] =$all_wsm[$value['return_wsm']]['supplierNo'];//isset($wsmcode['code']) ? $wsmcode['code']:"";
             }
             $value['customer_name']='';
             if($value['customer_code']!=''){
-                $customer = Db::name("customer_info")->where(['companyNo'=>$value['customer_code']])->find();
-                $value['customer_name']=isset($customer['companyName'])?$customer['companyName']:'';
+//                $customer = Db::name("customer_info")->where(['companyNo'=>$value['customer_code']])->find();
+                $value['customer_name']=$names['data'][$value['customer_code']]??'';//isset($customer['companyName'])?$customer['companyName']:'';
             }
             $inorder= Db::name("order_backinfo")->where(['thNo'=>$value['thNo'],"is_del"=>0])->select();
             $value['child']=empty($inorder)? [] : $inorder;

+ 4 - 2
app/admin/controller/Project.php

@@ -800,8 +800,10 @@ class Project extends Base
         $info['platform_name']=isset($plat['platform_name'])?$plat['platform_name']:"";
         $info['platform_code']=isset($plat['platform_code'])?$plat['platform_code']:"";
 
-        $khinfo = Db::name("customer_info")->where(["companyNo"=>$info['khNo']])->find();
-        $info['khName'] = isset($khinfo['companyName'])?$khinfo['companyName']:"";
+        $userCommon = new \app\admin\common\User();
+        $names = $userCommon->handle('getCodeAndName',['code'=>$info['khNo']]);
+//        $khinfo = Db::name("customer_info")->where(["companyNo"=>$info['khNo']])->find();
+        $info['khName'] = $names['data'][$info['khNo']]??'';//isset($khinfo['companyName'])?$khinfo['companyName']:"";
         if($type==1){
             $where = ['projectNo'=>$projectNo,"is_del"=>0,"status"=>1];
         }else{

+ 39 - 25
app/admin/controller/Purch.php

@@ -320,19 +320,41 @@ class Purch extends Base
                 $goon["brand_id"]="";
             }
 
-            $supplier = Db::name("supplier")->where(["code"=>$goon['supplierNo']])->find();
-            $goon['supplier_cgderid'] = $supplier['personid'] ??'';
-            $goon['supplier_cgder'] = $supplier['person'] ??'';
-            $goon['supplierName'] = isset($supplier['name'])?$supplier['name']:"";
+            $userCommon = new \app\admin\common\User();
+
+            $supplier = $userCommon->handle('sInfo',['code'=>$goon['supplierNo']]);
+//            $supplier = Db::name("supplier")->where(["code"=>$goon['supplierNo']])->find();
+            $goon['supplier_cgderid'] = $supplier['data']['personid'] ??'';
+            $goon['supplier_cgder'] = $supplier['data']['person'] ??'';
+            $goon['supplierName'] = isset($supplier['data']['name'])?$supplier['data']['name']:"";
             $goon['noble_name']=isset($goon['noble_metal'])&&$goon['noble_metal']!=0?$this->noble[$goon['noble_metal']] :"";
 
-            $userCommon = new \app\admin\common\User();
+            //补充客户名称
+            if (empty($data['orderCode'])) $data['customer'] = [];
+            else {
+                $customer_code = Db::name('sale')
+                    ->alias('s')
+//                ->field('c.companyNo,c.companyName')
+//                ->leftJoin('customer_info c', 'c.companyNo=s.customer_code AND c.is_del=0')
+                    ->where(['s.orderCode' => $data['orderCode']])
+                    ->value('s.customer_code','');
 
-            if(isset($goon['companyNo'])&&$goon['companyNo']!=""){
 
-                $tmp = $userCommon->handle('getCodeAndName', ['code' => $goon['companyNo']]);
-                if (!isset($tmp['code']) || $tmp['code'] != 0) return json_show($tmp['code'], $tmp['message'], $tmp['data']);
+            }
+
+            $tmp = $userCommon->handle('getCodeAndName', ['code' => [
+                $goon['companyNo'],
+                $data['wsm_code'],
+                $data['companyNo'],
+                $customer_code
+            ]]);
+
+            if(!empty($data['orderCode'])){
+                $data['customer']['companyNo'] = $customer_code;
+                $data['customer']['companyName'] = $tmp['data'][$customer_code]??'';
+            }
 
+            if(isset($goon['companyNo'])&&$goon['companyNo']!=""){
 //                $company = Db::name("business")->where(["companyNo"=>$goon['companyNo']])->find();
             }
             $goon['company'] = $tmp['data'][$goon['companyNo']] ?? '';
@@ -340,12 +362,16 @@ class Purch extends Base
         $int= isset($goon['cat_id']) && $goon['cat_id'] !=0 ? made($goon['cat_id']):[];
         $data['wsm_name']="";
         if($data['wsm_code']!=""){
-            $wsmcode = Db::name("warehouse_info")->alias("a")->leftJoin("supplier b","a.supplierNo=b.code")
+            $wsmcode = Db::name("warehouse_info")
+                ->alias("a")
+//                ->leftJoin("supplier b","a.supplierNo=b.code")
                 ->leftJoin("warehouse_addr c","a.wsm_code=c.wsm_code and c.is_del=0")
-                ->where(["a.wsm_code"=>$data['wsm_code']])->field("a.name as wsm_name,b.name,b.code,c.wsm_name as wsm_contactor,c.wsm_mobile,c.wsm_addr,c.addr_code")->find();
+                ->where(["a.wsm_code"=>$data['wsm_code']])
+                ->field("a.name as wsm_name,c.wsm_name as wsm_contactor,c.wsm_mobile,c.wsm_addr,c.addr_code")
+                ->find();
             $data['wsm_name'] =isset($wsmcode['wsm_name']) ? $wsmcode['wsm_name']:"";
-            $data['wsm_supplier'] =isset($wsmcode['name']) ? $wsmcode['name']:"";
-            $data['wsm_supplierNo'] =isset($wsmcode['code']) ? $wsmcode['code']:"";
+            $data['wsm_supplier'] =isset($wsmcode['data'][$data['wsm_code']]) ? $wsmcode['data'][$data['wsm_code']]:"";
+            $data['wsm_supplierNo'] =isset($wsmcode['data'][$data['wsm_code']]) ? $wsmcode['data'][$data['wsm_code']]:"";
             $data['wsm_contactor'] =isset($wsmcode['wsm_contactor']) ? $wsmcode['wsm_contactor']:"";
             $data['wsm_mobile'] =isset($wsmcode['wsm_mobile']) ? $wsmcode['wsm_mobile']:"";
             // $data['wsm_addr'] =isset($wsmcode['wsm_addr']) ? $wsmcode['wsm_addr']:"";
@@ -364,9 +390,6 @@ class Purch extends Base
 
         $data['company'] = '';
         if (isset($data['companyNo']) && $data['companyNo'] != "") {
-            $tmp = $userCommon->handle('getCodeAndName', ['code' => $data['companyNo']]);
-            if (!isset($tmp['code']) || $tmp['code'] != 0) return json_show($tmp['code'], $tmp['message'], $tmp['data']);
-
 //            $company = Db::name("business")->where(["companyNo"=>$data['companyNo']])->find();
             $data['company'] = $tmp['data'][$data['companyNo']] ?? '';
         }
@@ -395,16 +418,7 @@ class Purch extends Base
         $addr=[];
         $data['addr_info'] = $addr;
 
-        //补充客户名称
-        if (empty($data['orderCode'])) $data['customer'] = [];
-        else {
-            $data['customer'] = Db::name('sale')
-                ->alias('s')
-                ->field('c.companyNo,c.companyName')
-                ->leftJoin('customer_info c', 'c.companyNo=s.customer_code AND c.is_del=0')
-                ->where(['s.orderCode' => $data['orderCode']])
-                ->find();
-        }
+
 
         $data['has_account'] = (int)isset(checkHasAccountBySupplierNos([$data['supplierNo']])[$data['supplierNo']]);
 

+ 18 - 17
app/admin/controller/Purchin.php

@@ -71,7 +71,7 @@ class Purchin extends Base
         }
         $supplie=isset($this->post['supplier']) && $this->post['supplier']!==""? trim($this->post['supplier']):"";
         if($supplie !==""){
-            $where[]= ["b.supplierNo",'like',"%$supplie%"];
+            $where[]= ["b.supplier_name",'like',"%$supplie%"];
         }
         $wsm_code=isset($this->post['wsm_code']) && $this->post['wsm_code']!==""? trim($this->post['wsm_code']):"";
         if($wsm_code !==""){
@@ -88,7 +88,7 @@ class Purchin extends Base
 //                ->where(["is_del"=>0,"supplierNo"=>$supplierNo])
 //                ->column("wsm_code");
 //            $where[]=['a.wsm_code',"in",$wsmcode];
-            $where[]= ["b.supplierNo",'=',$supplie];
+            $where[]= ["b.supplierNo",'=',$supplierNo];
         }
         $condition=[];
 
@@ -305,22 +305,23 @@ class Purchin extends Base
                     //非库存品,只能由供应商负责人操作(开通账号的不能操作)
                     //判断该供应商是否开通账号
                     //好像status==4里面的判断没用了,但是没时间修改
-				if($is_stock==0){
-					 //全都只能由供应商负责人操作(开通账号的不能操作)
-                $res = SupplierRelationUserModel::field('id')
-                    ->where(['is_del' => SupplierUserModel::$is_del_normal, 'supplierNo' => $cgdinfo['supplierNo'], 'status' => SupplierUserModel::$status_normal])
-                    ->findOrEmpty()
-                    ->isEmpty();
-                if (!$res) throw new Exception('供应商已开通账号,只能由供应商端操作');
-
-				}
-
-                $personid = Db::name('supplier')
-                    ->where('code', $cgdinfo['supplierNo'])
-                    ->value('personid');
-                if ($this->uid != $personid) throw new Exception('只能由供应商负责人操作');
+//                if ($is_stock == 0) {
+                    //全都只能由供应商负责人操作(开通账号的不能操作)
+//                    $res = SupplierRelationUserModel::field('id')
+//                        ->where(['is_del' => SupplierUserModel::$is_del_normal, 'supplierNo' => $cgdinfo['supplierNo'], 'status' => SupplierUserModel::$status_normal])
+//                        ->findOrEmpty()
+//                        ->isEmpty();
+//                    if (!$res) throw new Exception('供应商已开通账号,只能由供应商端操作');
+
 //                }
 
+                if ($this->level == 2) {
+                    $personid = Db::name('supplier')
+                        ->where('code', $cgdinfo['supplierNo'])
+                        ->value('personid');
+                    if ($this->uid != $personid) throw new Exception('只能由供应商负责人操作');
+                }
+
                 if($status==1){
                             Db::commit();
                             return app_show(0,'新建成功',["wsm_in_code"=>$wsm_in_code]);
@@ -519,7 +520,7 @@ class Purchin extends Base
 ////                                $process = ["order_code" => $cgdNo, "order_id" => $cgdinfo['id'], "order_status" => $cgdinfo['status'], "order_type" => 'CGD', "before_status" => $order['status'], 'holder_id' => $personid,'handle_user_list'=>implode(',', $uid)];
 //
 //                            }else{
-                                if($this->uid != $personid)throw new Exception('只能由供应商负责人操作');
+                            if (($this->level == 2) && ($this->uid != $personid)) throw new Exception('只能由供应商负责人操作');
 //                            }
                         }//else $process = ["order_code" => $cgdNo, "order_id" => $cgdinfo['id'], "order_status" => $cgdinfo['status'], "order_type" => 'CGD', "before_status" => $order['status'], 'holder_id' => $personid];
                         

+ 62 - 33
app/admin/controller/Reorder.php

@@ -453,7 +453,12 @@ class Reorder extends Base
         if ($relaComNo != "") $where[] = ['b.supplierNo', '=', $relaComNo];
 
         $supplierNo = isset($this->post['supplierNo']) && $this->post['supplierNo'] != "" ? trim($this->post['supplierNo']) : "";
-        if ($supplierNo != "") $where[] = ['b.supplierNo', '=', $supplierNo];
+        if ($supplierNo !== "") {
+            $spuCode = Db::name('good_basic')
+                ->where(['is_del' => 0, 'supplierNo' => $supplierNo])
+                ->column('spuCode');
+            $where[] = ['b.good_code', "in", $spuCode];
+        }
 
         $condition=[];
 //        $role=$this->checkRole();
@@ -533,8 +538,7 @@ class Reorder extends Base
     }
 
     public function info(){
-        $code =  isset($this->post['returnCode']) && $this->post['returnCode'] !=="" ? trim($this->post['returnCode'])
-            :"";
+        $code =  isset($this->post['returnCode']) && $this->post['returnCode'] !=="" ? trim($this->post['returnCode']) :"";
         if($code==""){
             return error_show(1004,"参数returnCode不能为空");
         }
@@ -569,20 +573,40 @@ class Reorder extends Base
        $info['total_price'] = isset($orderinfo['total_price'])?$orderinfo['total_price']:'0';
        $info['post_fee'] = isset($orderinfo['post_fee'])?$orderinfo['post_fee']:'0';
        $info['customer_code'] = isset($orderinfo['customer_code'])?$orderinfo['customer_code']:'';
-       $info['customer_name']='';
+
+        if($info['return_wsm']!=""){
+            $wsmcode = Db::name("warehouse_info")
+                ->alias("a")
+//                ->leftJoin("supplier b","a.supplierNo=b.code")
+                ->where(["a.wsm_code"=>$info['return_wsm']])
+                ->field("a.name as wsm_name,a.supplierNo")
+                ->find();
+            $info['wsm_name'] =isset($wsmcode['wsm_name']) ? $wsmcode['wsm_name']:"";
+        }
+
+
+        $userCommon = new \app\admin\common\User();
+        $tmp = $userCommon->handle('getCodeAndName', ['code' => [
+            $orderinfo['supplierNo'],
+            $orderinfo['customer_code'],
+            $wsmcode['supplierNo']??'',
+        ]]);
+
+        $info['wsm_supplier'] =$tmp['data'][$wsmcode['supplierNo']]??'';//isset($wsmcode['name']) ? $wsmcode['name']:"";
+        $info['wsm_supplierNo'] =$wsmcode['supplierNo']??'';//isset($wsmcode['code']) ? $wsmcode['code']:"";
+
+
+        $info['customer_name']='';
         if(isset($orderinfo['customer_code'])&&$orderinfo['customer_code']!=''){
-            $customerinfo = Db::name("customer_info")->where(['companyNo'=>$orderinfo['customer_code']])->find();
-            $info['customer_name'] = isset($customerinfo['companyName']) ? $customerinfo['companyName']:"";
+//            $customerinfo = Db::name("customer_info")->where(['companyNo'=>$orderinfo['customer_code']])->find();
+            $info['customer_name'] = $tmp['data'][$orderinfo['customer_code']]??'';//isset($customerinfo['companyName']) ? $customerinfo['companyName']:"";
         }
         $info['supplierNo'] = isset($orderinfo['supplierNo'])?$orderinfo['supplierNo']:'';
         $info['supplier_name']='';
         if(isset($orderinfo['supplierNo'])&&$orderinfo['supplierNo']!=''){
 //            $customerinfo = Db::name("business")->where(['companyNo'=>$orderinfo['supplierNo']])->find();
 //            $info['supplier_name'] = isset($customerinfo['company']) ? $customerinfo['company']:"";
-
-            $userCommon = new \app\admin\common\User();
-            $tmp = $userCommon->handle('bInfo', ['companyNo' => $orderinfo['supplierNo']]);
-            $info['supplier_name'] = $tmp['data']['company'] ?? '';
+            $info['supplier_name'] = $tmp['data'][$orderinfo['supplierNo']] ?? '';
 
         }
         $info['platform_name']='';
@@ -606,14 +630,6 @@ class Reorder extends Base
             $info['error_msg']= isset($error['result'])?$error['result']:"";
         }
 
-        if($info['return_wsm']!=""){
-            $wsmcode = Db::name("warehouse_info")->alias("a")->leftJoin("supplier b","a.supplierNo=b.code")
-                ->where(["a.wsm_code"=>$info['return_wsm']])->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']:"";
-
         $wsm_return = Db::name("sale_returninfo")->where(["returnCode"=>$info["returnCode"],"is_del"=>0])->select()->toArray();
         $wsm=[];
         if(!empty($wsm_return)){
@@ -623,8 +639,12 @@ class Reorder extends Base
                 $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();
+                    $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']:"";
@@ -638,24 +658,33 @@ class Reorder extends Base
             }
         }
         $info['wsminfo']=$wsm;
-        $addr =Db::name("sale_returnaddr")->where(["returnCode"=>$info["returnCode"],"is_del"=>0])->select()->toArray();
+        $addr =Db::name("sale_returnaddr")
+            ->alias('a')
+            ->field('a.*,b.addr,b.addr_code,b.contactor,b.mobile,b.post_fee,b.addive_time,b.customer_code,b.receipt_quantity,b.orderCode')
+            ->leftJoin('order_addr b','b.id=a.addrid')
+            ->where(["a.returnCode"=>$info["returnCode"],"a.is_del"=>0])
+            ->select()
+            ->toArray();
         $addrinfo=[];
         if(!empty($addr)){
+
+            $customer_name = $userCommon->handle('getCodeAndName',['code'=>array_column($addr,'customer_code')]);
+
             foreach ( $addr as $value){
-                $addrlist = Db::name("order_addr")->where(["id"=>$value["addrid"]])->find();
-                $value['addr']=isset($addrlist['addr'])?$addrlist['addr']:"";
-                $value['addr_code']=isset($addrlist['addr_code'])?$addrlist['addr_code']:"";
-                $value['contactor']=isset($addrlist['contactor'])?$addrlist['contactor']:"";
-                $value['mobile']=isset($addrlist['mobile'])?$addrlist['mobile']:"";
-                $value['post_fee']=isset($addrlist['post_fee'])?$addrlist['post_fee']:"";
-                $value['addive_time']=isset($addrlist['addive_time'])?$addrlist['addive_time']:"";
-                $value['customer_code']=isset($addrlist['customer_code']) ?$addrlist['customer_code']:"" ;
-                $value['receipt_quantity']=isset($addrlist['receipt_quantity']) ?$addrlist['receipt_quantity']:"" ;
-                $send = Db::name("order_out")->where(['addrid' => $addrlist['id'], 'orderCode' => $addrlist['orderCode'],"is_del"=>0])->where("status",">=",2)->sum("send_num");
+//                $addrlist = Db::name("order_addr")->where(["id"=>$value["addrid"]])->find();
+                $value['addr']=isset($value['addr'])?$value['addr']:"";
+                $value['addr_code']=isset($value['addr_code'])?$value['addr_code']:"";
+                $value['contactor']=isset($value['contactor'])?$value['contactor']:"";
+                $value['mobile']=isset($value['mobile'])?$value['mobile']:"";
+                $value['post_fee']=isset($value['post_fee'])?$value['post_fee']:"";
+                $value['addive_time']=isset($value['addive_time'])?$value['addive_time']:"";
+                $value['customer_code']=isset($value['customer_code']) ?$value['customer_code']:"" ;
+                $value['receipt_quantity']=isset($value['receipt_quantity']) ?$value['receipt_quantity']:"" ;
+                $send = Db::name("order_out")->where(['addrid' => $value['addrid'], 'orderCode' => $value['orderCode'],"is_del"=>0])->where("status",">=",2)->sum("send_num");
                 $value['addr_send'] = $send ?? 0;
                 $value['addr_wsend'] = $value['receipt_quantity'] - $value['addr_send'];
-                $customer = Db::name("customer_info")->where(['companyNo'=>$addrlist['customer_code']])->find();
-                $value['customer_name'] = isset($customer['companyName']) ? $customer['companyName']:"";
+//                $customer = Db::name("customer_info")->where(['companyNo'=>$addrlist['customer_code']])->find();
+                $value['customer_name'] = $customer_name['data'][$value['customer_code']]??'';//isset($customer['companyName']) ? $customer['companyName']:"";
                 $addrinfo[]=$value;
             }
 

+ 41 - 27
app/admin/controller/Sale.php

@@ -2320,24 +2320,24 @@ class Sale extends Base
         if ($customer_code == "") {
             return error_show(1002, "客户code不能为空");
         }
-        $customer = Db::name("customer_info")->where(["companyNo" => $customer_code])->find();
-        if ($customer == false) {
-            return error_show(1004, "未找到客户数据");
-        }
+//        $customer = Db::name("customer_info")->where(["companyNo" => $customer_code])->find();
+//        if ($customer == false) {
+//            return error_show(1004, "未找到客户数据");
+//        }
         $supplierNo = $this->post['supplierNo'] && $this->post['supplierNo'] !== "" ? trim($this->post['supplierNo']) : "";
         if ($supplierNo == "") {
             return error_show(1002, "参数supplierNo不能为空");
         }
-        $supplier = Db::name("supplier")->where(["code" => $supplierNo])->find();
-        if ($supplier == false) {
-            return error_show(1004, "未找到平台供应商数据");
-        }
-        $apply_id = GetUserInfo($token);
-        if (empty($apply_id) || $apply_id['code'] != 0) {
-            return error_show(1002, "申请人数据不存在");
-        }
-        $rm = isset($apply_id["data"]['id']) ? $apply_id["data"]['id'] : "";
-        $ri = isset($apply_id["data"]['nickname']) ? $apply_id["data"]['nickname'] : "";
+//        $supplier = Db::name("supplier")->where(["code" => $supplierNo])->find();
+//        if ($supplier == false) {
+//            return error_show(1004, "未找到平台供应商数据");
+//        }
+//        $apply_id = GetUserInfo($token);
+//        if (empty($apply_id) || $apply_id['code'] != 0) {
+//            return error_show(1002, "申请人数据不存在");
+//        }
+        $rm = $this->uid;//isset($apply_id["data"]['id']) ? $apply_id["data"]['id'] : "";
+        $ri = $this->uname;//isset($apply_id["data"]['nickname']) ? $apply_id["data"]['nickname'] : "";
         //  $good_name = isset($this->post['good_name']) && $this->post['good_name'] !== "" ? trim
         //($this->post['good_name']) : "";
         // $good_num = isset($this->post['good_num']) && $this->post['good_num'] !== "" ? intval
@@ -2374,7 +2374,7 @@ class Sale extends Base
             $datninfo = Db::name('sale')->where(['id' => $id, 'is_del' => 0])->save($datn);
             if ($datninfo > 0) {
                 $stn = ["order_code" => $etid['orderCode'], "status" => $etid['status'], "action_remark" => '', "action_type" => "edit"];
-                ActionLog::logAdd($this->post['token'], $stn, "XSQRD", $etid['status'], $datn);
+                ActionLog::logAdd(['id'=>$rm,'nickname'=>$ri], $stn, "XSQRD", $etid['status'], $datn);
 //                $order=["order_type"=>'XSQRD',"order_code"=>$etid['orderCode'],"order_id"=>$id,"order_status"=>$etid['status'],"before_status"=> 0];
 //                ProcessOrder::AddProcess($this->post['token'],$order);
 
@@ -3242,15 +3242,16 @@ class Sale extends Base
         $count = Db::name('sale_diff')
             ->alias('a')
             ->join("sale c", "c.orderCode=a.orderCode", "left")
-            ->join("customer_info v", "v.companyNo=c.customer_code", "left")
-            ->where($where)->count();
+//            ->join("customer_info v", "v.companyNo=c.customer_code", "left")
+            ->where($where)
+            ->count();
         $total = ceil($count / $size);
         $page = $page >= $total ? intval($total) : $page;
         $list = Db::name('sale_diff')
             ->alias('a')
-            ->field("a.*,c.customer_code,v.companyName,c.skuCode,c.order_type,c.supplierNo,c.apply_id")
+            ->field("a.*,c.customer_code,'' companyName,c.skuCode,c.order_type,c.supplierNo,c.apply_id")
             ->join("sale c", "c.orderCode=a.orderCode", "left")
-            ->join("customer_info v", "v.companyNo=c.customer_code", "left")
+//            ->join("customer_info v", "v.companyNo=c.customer_code", "left")
             ->where($where)
             ->page($page, $size)
             ->order("a.addtime desc")
@@ -3260,7 +3261,7 @@ class Sale extends Base
         $data = [];
 
         $userCommon = new \app\admin\common\User();
-        $names = $userCommon->handle('getCodeAndName',['code'=>array_column($list,'supplierNo')]);
+        $names = $userCommon->handle('getCodeAndName',['code'=>array_merge(array_column($list,'supplierNo'),array_column($list,'customer_code'))]);
 
         foreach ($list as $value) {
             if ($value['order_type'] == 3) {
@@ -3273,6 +3274,7 @@ class Sale extends Base
 //            $wsm = Db::name("business")->where(['companyNo' => $value['supplierNo']])->find();
             $value['supplierNo'] = $value['supplierNo'];//isset($wsm['companyNo']) ? $wsm['companyNo'] : "";
             $value['supplierName'] = $names['data'][$value['supplierNo']] ?? '';//isset($wsm['company']) ? $wsm['company'] : "";
+            $value['companyName'] = $names['data'][$value['customer_code']] ?? '';//isset($wsm['company']) ? $wsm['company'] : "";
 
             //是否具有编辑权限
             $value['is_allow_update'] = 0;
@@ -3541,7 +3543,14 @@ class Sale extends Base
         if ($relaComNo != '') $where[] = ['b.supplierNo', '=', $relaComNo];
 
         $supplierNo = isset($this->post['supplierNo']) && $this->post['supplierNo'] !== "" ? trim($this->post['supplierNo']) : "";
-        if ($supplierNo != '') $where[] = ['b.supplierNo', '=', $supplierNo];
+        if ($supplierNo != '') {
+            //sale b 表里存的supplierNo值是GS开头的,即业务公司编码
+            //所以此处应该根据供应商编码筛选商品spuCode,然后筛选发货单
+            $spuCode = Db::name('good_basic')
+                ->where(['is_del' => 0, 'supplierNo' => $supplierNo])
+                ->column('spuCode');
+            $where[] = ['b.good_code', 'in', $spuCode];
+        }
 
         $cgdNo = isset($this->post['cgdNo']) && $this->post['cgdNo'] !== "" ? $this->post['cgdNo'] : "";
         if ($cgdNo != "") {
@@ -3600,11 +3609,11 @@ class Sale extends Base
         $count = Db::name('order_out')
             ->alias('a')
             ->join("sale b", "b.orderCode=a.orderCode", "left")
-            ->join("customer_info v", "v.companyNo=b.customer_code", "left")
+//            ->join("customer_info v", "v.companyNo=b.customer_code", "left")
             ->join("warehouse_info n", "n.wsm_code=a.wsm_code", "left")
             ->leftJoin("order_send os", "os.outCode=a.outCode")
             ->leftJoin("purchease_order wpo", "wpo.cgdNo=os.cgdNo")
-	        ->leftJoin('supplier sip', 'sip.code=wpo.supplierNo')
+//	        ->leftJoin('supplier sip', 'sip.code=wpo.supplierNo')
             ->where($where)
             ->where($condition)
             ->count();
@@ -3613,12 +3622,12 @@ class Sale extends Base
         $list = Db::name('order_out')
             ->alias('a')
             ->join("sale b", "b.orderCode=a.orderCode", "left")
-            ->join("customer_info v", "v.companyNo=b.customer_code", "left")
+//            ->join("customer_info v", "v.companyNo=b.customer_code", "left")
             ->join("warehouse_info n", "n.wsm_code=a.wsm_code AND n.is_del=0", "left")
             ->leftJoin("order_send os", "os.outCode=a.outCode")
             ->leftJoin("purchease_order wpo", "wpo.cgdNo=os.cgdNo")
-	        ->leftJoin('supplier sip', 'sip.code=wpo.supplierNo')
-            ->field("a.*,b.order_type,b.order_source,b.good_name,b.good_code,b.skuCode,b.supplierNo,b.customer_code,v.companyName,b.origin_price,b.sale_price,b.total_price,os.cgdNo")
+//	        ->leftJoin('supplier sip', 'sip.code=wpo.supplierNo')
+            ->field("a.*,b.order_type,b.order_source,b.good_name,b.good_code,b.skuCode,b.supplierNo,b.customer_code,'' companyName,b.origin_price,b.sale_price,b.total_price,os.cgdNo,wpo.supplierNo")
             ->where($where)
             ->where($condition)
             ->order("addtime desc")
@@ -3629,9 +3638,14 @@ class Sale extends Base
         $all_createrid = array_column($list,'apply_id');
         $item = get_company_name_by_uid($all_createrid);
 
+        $userCommon = new \app\admin\common\User();
+        $names = $userCommon->handle('getCodeAndName',['code'=>array_column($list,'customer_code')]);
+
         $data = [];
         foreach ($list as $value) {
 
+            $value['companyName'] = $names['data'][$value['customer_code']]??'';
+
             if($value['order_type']==1 && $value['wsm_code']==''){
             	$wsmcode = Db::name("good")->alias("a")
             	->leftJoin("supplier b","a.supplierNo=b.code")
@@ -4074,7 +4088,7 @@ class Sale extends Base
 		                          ->value('personid');
 	            }
 
-                if ($uid !=$personid) throw new \think\Exception('非库存品和采返商品只能由供应商负责人操作');
+                if (($this->level == 2) && ($uid != $personid)) throw new \think\Exception('非库存品和采返商品只能由供应商负责人操作');
             }
 
             if ($up) {

File diff suppressed because it is too large
+ 384 - 103
app/admin/controller/SaleReport.php


+ 4 - 4
app/admin/controller/Salezx.php

@@ -31,10 +31,10 @@ class Salezx extends \app\BaseController
         if($zxinfoNo==""){
             return error_show(1002,"参数zxinfoNo 不能为空");
         }
-        $customer=Db::name("customer_info")->where(["companyNo"=>$customer_code])->find();
-        if($customer==false){
-            return error_show(1004,"未找到客户数据");
-        }
+//        $customer=Db::name("customer_info")->where(["companyNo"=>$customer_code])->find();
+//        if($customer==false){
+//            return error_show(1004,"未找到客户数据");
+//        }
         $supplierNo= isset($this->post['supplierNo']) && $this->post['supplierNo'] !=="" ? trim($this->post['supplierNo']) :"";
         if($supplierNo==""){
             return error_show(1002,"参数supplierNo不能为空");

+ 59 - 35
app/admin/controller/Title.php

@@ -21,7 +21,11 @@ class Title extends BaseController
         if($companyNo==""){
             return error_show(1002,"参数companyNo不能为空");
         }
-        $companyinfo =Db::name('customer_title')->where(['is_del' => 0, 'companyNo'=>$companyNo])->find();
+        $companyinfo =$temp =  Db::connect('mysql_sys')
+            ->name('customer_title')
+            ->field('id')
+            ->where(['is_del' => 0, 'companyNo'=>$companyNo])
+            ->findOrEmpty();
         if (!empty($companyinfo)) {
             return error_show(1002, "统一社会信用代码名称已存在");
         }
@@ -68,7 +72,9 @@ class Title extends BaseController
             "addtime"=>date("Y-m-d H:i:s"),
             "updatetime"=>date("Y-m-d H:i:s")
         ];
-        $info = Db::name('customer_title')->insert($data);
+        $info = Db::connect('mysql_sys')
+            ->name('customer_title')
+            ->insert($data);
         if($info){
             return error_show(0,"新建成功");
         }else{
@@ -91,8 +97,7 @@ class Title extends BaseController
         if($invoice_mobile !=""){
             $where[] =['a.invoice_code',"like","%$invoice_mobile%"];
         }
-        $status = isset($this->post['status']) && $this->post['status'] !=="" ? intval($this->post['status'])
-            :"";
+        $status = isset($this->post['status']) && $this->post['status'] !=="" ? intval($this->post['status']) :"";
         if($status!==""){
             $where[]=['a.status',"=",$status];
         }
@@ -118,25 +123,25 @@ class Title extends BaseController
         $companyNo = isset($this->post['companyNo']) && $this->post['companyNo'] !== "" ? trim($this->post['companyNo']) : "";
         if ($companyNo !== "") $where[] = ["a.companyNo", 'like', '%' . $companyNo . '%'];
 
-        $count = Db::name('customer_title')
+        $count = Db::connect('mysql_sys')
+            ->name('customer_title')
             ->alias("a")
-            ->join("customer_info b","b.companyNo=a.companyNo","left")
-            ->leftJoin("depart_user u", "u.nickname=b.creater AND u.is_del=0")
+            ->leftJoin("customer_info b","b.companyNo=a.companyNo")
+            ->leftJoin("account_item c", "c.account_id=b.createrid")
+            ->leftJoin("company_item d", "d.id=c.itemid")
             ->where($where)
             ->count();
         $total = ceil($count / $size);
         $page = $page >= $total ? $total : $page;
-        $list = Db::name('customer_title')
+        $list = Db::connect('mysql_sys')
+            ->name('customer_title')
             ->alias("a")
-            ->field("a.*,b.companyName,b.creater")
-            ->join("customer_info b","b.companyNo=a.companyNo","left")
-//            ->leftJoin("depart_user u", "u.nickname=b.creater AND u.is_del=0")
+            ->field("a.*,b.companyName,b.creater,b.createrid,d.name company_name")
+            ->leftJoin("customer_info b","b.companyNo=a.companyNo")
+            ->leftJoin("account_item c", "c.account_id=b.createrid")
+            ->leftJoin("company_item d", "d.id=c.itemid")
             ->where($where)
             ->page($page,$size)
-            ->append(['company_name'])
-            ->withAttr('company_name',function ($val,$data){
-                return '待处理';//此处customer_info表里创建人存的是名称,不是id,根据名称查询所属部门,尚待以后 2023-01-12 16:00 @wf
-            })
             ->select()
             ->toArray();
         return app_show(0,"获取成功",['list'=>$list,'count'=>$count]);
@@ -150,7 +155,10 @@ class Title extends BaseController
         if($token==""){
             return error_show(101,'token不能为空');
         }
-        $info= Db::name('customer_title')->where(['id'=>$id,'is_del'=>0])->find();
+        $info= Db::connect('mysql_sys')
+            ->name('customer_title')
+            ->where(['id'=>$id,'is_del'=>0])
+            ->find();
         if($info==""){
             return error_show(1002,"未找到数据");
         }
@@ -200,7 +208,9 @@ class Title extends BaseController
             "is_del"=>0,
             "updatetime"=>date("Y-m-d H:i:s")
         ];
-        $temp = Db::name('customer_title')->save($data);
+        $temp = Db::connect('mysql_sys')
+            ->name('customer_title')
+            ->save($data);
         $titn = array_diff($data,$info);
         $json = json_encode($titn,JSON_UNESCAPED_UNICODE);
         $jsp = json_encode($info,JSON_UNESCAPED_UNICODE);
@@ -216,12 +226,20 @@ class Title extends BaseController
         if($id ==""){
             return error_show(1002,"参数id不能为空");
         }
-        $info= Db::name('customer_title')->where(['id'=>$id,'is_del'=>0])->find();
-        if($info==""){
-            return error_show(1002,"未找到数据");
-        }
-        $temp = Db::name("customer_info")->where(['companyNo'=>$info['companyNo'],'is_del'=>0])->find();
-        $info['companyName']=$temp['companyName'];
+
+        $info = Db::connect('mysql_sys')
+            ->name('customer_title')
+            ->alias('a')
+            ->field('a.*,b.companyName')
+            ->leftJoin('customer_info b','b.companyNo=a.companyNo AND b.is_del=0')
+            ->where(['a.id'=>$id,'a.is_del'=>0])
+            ->findOrEmpty();
+//        $info= Db::name('customer_title')->where(['id'=>$id,'is_del'=>0])->find();
+//        if($info==""){
+//            return error_show(1002,"未找到数据");
+//        }
+//        $temp = Db::name("customer_info")->where(['companyNo'=>$info['companyNo'],'is_del'=>0])->find();
+//        $info['companyName']=$temp['companyName'];
         return app_show(0,"获取成功",$info);
     }
     public function del(){
@@ -229,11 +247,10 @@ class Title extends BaseController
         if($id ==""){
             return error_show(1002,"参数id不能为空");
         }
-        $info= Db::name('customer_title')->where(['id'=>$id,'is_del'=>0])->find();
-        if($info==""){
-            return error_show(1002,"未找到数据");
-        }
-        $end = Db::name('customer_title')->update(['id'=>$id,'is_del'=>1,'updatetime'=>date("Y-m-d H:i:s")]);
+        $end =  Db::connect('mysql_sys')
+            ->name('customer_title')
+            ->where(['id'=>$id,'is_del'=>0])
+            ->update(['is_del'=>1,'updatetime'=>date("Y-m-d H:i:s")]);
         if($end){
             return error_show(0,"删除成功");
         }else{
@@ -245,10 +262,10 @@ class Title extends BaseController
         if($id==""){
             return error_show(1002,"参数id不能为空");
         }
-        $info= Db::name('customer_title')->where(['id'=>$id,'is_del'=>0])->find();
-        if($info==""){
-            return error_show(1002,"未找到数据");
-        }
+//        $info= Db::name('customer_title')->where(['id'=>$id,'is_del'=>0])->find();
+//        if($info==""){
+//            return error_show(1002,"未找到数据");
+//        }
         $status = isset($this->post['status']) && $this->post['status'] !=="" ? intval($this->post['status']):"";
         if($status===""){
             return error_show(1002,"参数status不能为空");
@@ -256,10 +273,17 @@ class Title extends BaseController
         if(!in_array($status,[0,1])){
             return error_show(1002,"参数status无效");
         }
-        $info['status']=$status;
-        $info['updatetime']=date("Y-m-d H:i:s");
+//        $info['status']=$status;
+//        $info['updatetime']=date("Y-m-d H:i:s");
         $msg = $status==1?"启用":"禁用";
-        $temp = Db::name("customer_title")->save($info);
+//        $temp = Db::name("customer_title")->save($info);
+
+        $temp =  Db::connect('mysql_sys')
+            ->name('customer_title')
+            ->where(['id'=>$id,'is_del'=>0])
+            ->where('status','<>',$status)
+            ->update(['status'=>$status,'updatetime'=>date("Y-m-d H:i:s")]);
+
         return $temp ? error_show(0,"{$msg}成功"):error_show(1002,"{$msg}失败");
     }
 }

+ 3 - 1
app/admin/controller/UserCompany.php

@@ -166,11 +166,13 @@ class UserCompany extends Base
         if (isset($rs['code']) && $rs['code'] == 0) {
             //补充角色信息
             foreach ($rs['data']['list'] as &$item) {
+
                 $tmp = Db::name('user_role')
                     ->alias('a')
                     ->field('a.roleid,b.role_name')
                     ->leftJoin('role b', 'b.id=a.roleid')
-                    ->where(['a.uid' => $item['account_id'], 'a.is_del' => 0, 'a.companyNo' => $item['companyCode']])
+                    ->where(['a.uid' => $item['account_id'], 'a.is_del' => 0, 'a.companyNo' => [$item['companyCode'],'']])
+                    ->order(['a.companyNo'=>'desc'])
                     ->findOrEmpty();
 
                 $item['roleid'] = $tmp['roleid'] ?? '';

+ 4 - 2
app/admin/controller/Version.php

@@ -229,8 +229,10 @@ class Version extends BaseController
         $info['platform_name']=isset($plat['platform_name'])?$plat['platform_name']:"";
         $info['platform_code']=isset($plat['platform_code'])?$plat['platform_code']:"";
 
-        $khinfo = Db::name("customer_info")->where(["companyNo"=>$info['khNo']])->find();
-        $info['khName'] = isset($khinfo['companyName'])?$khinfo['companyName']:"";
+        $userCommon = new \app\admin\common\User();
+        $names = $userCommon->handle('getCodeAndName', ['code' => $info['khNo']]);
+//        $khinfo = Db::name("customer_info")->where(["companyNo"=>$info['khNo']])->find();
+        $info['khName'] = $names['data'][$info['khNo']] ?? '';//isset($khinfo['companyName'])?$khinfo['companyName']:"";
         if($type==1){
             $where = ['projectNo'=>$projectNo,"is_del"=>0,"status"=>1];
         }else{

+ 62 - 12
app/command/NowReportHandle.php

@@ -3,6 +3,7 @@ declare (strict_types=1);
 
 namespace app\command;
 
+use app\admin\common\User;
 use think\console\Command;
 use think\console\Input;
 use think\console\Output;
@@ -136,9 +137,9 @@ class NowReportHandle extends Command
     {
         $data = Db::name('order_back')
             ->alias('ob')
-            ->field('ob.thNo 退货单号,ob.status 流程进度,ob.addtime 退货发起日期,"" 退货人所在部门,ob.apply_name 退货人,ob.return_num 退货数量,ob.total_fee 退货销售货款,ob.remark 退货备注,c.companyName 客户名称,ob.customer_code 客户编码,"" 一级组织,"" 二级组织,"" 三级组织,p.platform_name 平台名称,s.poNo PO编号,s.orderCode 确认单编号,s.order_type 确认单类型,s.addtime 确认单下单时间,"" 业务人员所在部门,ob.cgder 业务人员,s.good_code 确认单产品编号,ob.good_name 产品名称,s.skuCode 产品编码,"" 一级分类,0 售前记录总数,ob.apply_id,ob.cgderid,s.cat_id,c.itemid')
+            ->field('ob.thNo 退货单号,ob.status 流程进度,ob.addtime 退货发起日期,"" 退货人所在部门,ob.apply_name 退货人,ob.return_num 退货数量,ob.total_fee 退货销售货款,ob.remark 退货备注,"" 客户名称,ob.customer_code 客户编码,"" 一级组织,"" 二级组织,"" 三级组织,p.platform_name 平台名称,s.poNo PO编号,s.orderCode 确认单编号,s.order_type 确认单类型,s.addtime 确认单下单时间,"" 业务人员所在部门,ob.cgder 业务人员,s.good_code 确认单产品编号,ob.good_name 产品名称,s.skuCode 产品编码,"" 一级分类,0 售前记录总数,ob.apply_id,ob.cgderid,s.cat_id')
             ->leftJoin('sale s', 's.orderCode=ob.orderCode')
-            ->leftJoin('customer_info c', 'c.companyNo=ob.customer_code AND c.is_del=0')
+//            ->leftJoin('customer_info c', 'c.companyNo=ob.customer_code AND c.is_del=0')
             ->leftJoin('platform p', 'p.id=ob.platform_id')
             ->where(['ob.is_del' => 0, 'ob.status' => 4])
             ->whereBetween('ob.addtime', [$start_date, $end_date])
@@ -147,10 +148,21 @@ class NowReportHandle extends Command
         $all_status = [1 => '待业务审批', 2 => '待专员审批', 3 => '待主管审批', 4 => '退货完成', 5 => '业务驳回', 6 => '采购驳回', 7 => '专员审批不通过'];
         $all_order_type = [1 => '备库', 2 => '非库存', 3 => '咨询采反', 4 => '项目采反', 5 => '平台部订单库存品', 6 => '平台部订单非库存品'];
         $list = [];
+
+        $tmp_customer=[];
+        $userCommon = new User();
         foreach ($data as $value) {
 
             $value['流程进度'] = isset($all_status[$value['流程进度']]) ? $all_status[$value['流程进度']] : '';
 
+            if(!isset($tmp_customer[$value['customer_code']])) {
+                $temp = $userCommon->handle('cInfo',['companyNo'=>$value['customer_code']]);
+                $tmp_customer[$value['customer_code']]=['companyName'=>$temp['data']['companyName']??'','itemid'=>$temp['data']['itemid']??''];
+            }
+
+            $value['客户名称'] = $tmp_customer[$value['customer_code']]['companyName'];
+            $value['itemid'] = $tmp_customer[$value['customer_code']]['itemid'];
+
             if (!empty($value['itemid'])) {
                 $customer_org1 = get_top_customer_org($value['itemid']);
 
@@ -257,7 +269,7 @@ class NowReportHandle extends Command
             ->leftJoin('order_num won', 'won.orderCode=wtd.orderCode')
             ->leftJoin('purchease_order wpo', 'wpo.cgdNo=won.cgdNo and wpo.is_del=0')
             ->leftJoin('supplier wps', 'wps.code=wpo.supplierNo')
-            ->leftJoin('customer_info wci', 'wci.companyNo =ws.customer_code')
+//            ->leftJoin('customer_info wci', 'wci.companyNo =ws.customer_code')
             ->whereBetween('wtd.addtime', [$start_date, $end_date])
             ->field("	year(wtd.addtime) '年',
 	month(wtd.addtime) '月',
@@ -273,8 +285,6 @@ class NowReportHandle extends Command
 	ws.platform_id '平台类型',
 	ws.platform_order '平台订单号',
 	'' as '客户属性',
-	wci.itemid  as '分公司',
-	wci.companyName '客户名称',
 	wtd.spuCode '产品编码',
 	'' as '财务核算码',
 	'' as `一级分类`,
@@ -303,11 +313,30 @@ class NowReportHandle extends Command
 	if(ws.is_stock=1,'是','否') '是否库存',
 	'' as '发货方式',
 	if(ifnull(wsr.is_th,wor.is_th)=0,'否','是') as '供应商是否同意退货',
-	if(wps.pay_type='0','现结',if(wps.pay_type='1','月结',if(wps.pay_type='2','双月结',wps.pay_type))) as '付款方式'
+	if(wps.pay_type='0','现结',if(wps.pay_type='1','月结',if(wps.pay_type='2','双月结',wps.pay_type))) as '付款方式',
+	ws.customer_code
 	")->order("wtd.addtime")->cursor();
 
+        $userCommon = new User();
+
+        $temp_customer = [];
+
         $com = [];
         foreach ($data as $value) {
+            //	wci.itemid  as '分公司',
+            //	wci.companyName '客户名称',
+
+            if(!isset($temp_customer[$value['customer_code']])){
+                $tmp = $userCommon->handle('cInfo',['companyNo'=>$value['customer_code']]);
+                $temp_customer[$value['customer_code']] = [
+                    '分公司'=>$tmp['data']['itemid']??'',
+                    '客户名称'=>$tmp['data']['companyName']??'',
+                ];
+            }
+
+            $value['分公司'] = $temp_customer[$value['customer_code']]['分公司']??'';
+            $value['客户名称'] = $temp_customer[$value['customer_code']]['客户名称']??'';
+
             $value['业务部门'] = get_company_name_by_uid(intval($value['业务部门']));
             $value['财务核算码']=Db::name("cat")->where(["id"=>$value['三级分类']])->value("fund_code",'');
             $comp =get_top_customer_org($value['分公司']);
@@ -334,6 +363,8 @@ class NowReportHandle extends Command
             $value['单位']=isset($good['good_unit'])?Db::name("unit")->where(["id"=>$good['good_unit']])->value('unit',''):"";
             $value['税点']=isset($good['tax'])?$good['tax'].'%':"";
             $value['平台类型']= Db::name("platform")->where(["id"=>$value['平台类型']])->value("platform_name",'');
+
+            unset($value['customer_code']);
             yield $com[] = $value;
         }
 
@@ -609,9 +640,9 @@ class NowReportHandle extends Command
 
         $data = Db::name('sale')
             ->alias('s')
-            ->field('s.addtime 确认单下单时间,s.orderCode 订单编号,s.order_type 订单类型,s.status 订单状态,s.apply_name 创建人,ci.name 部门,b.company 销售方公司,"" 一级组织,"" 二级组织,csi.companyName 购买方公司,p.platform_name 所属平台,s.platform_order 平台订单号,s.poNo 其他单号,s.paytime 承诺回款时间,ou.order_use 订单用途,"" 活动类型,s.good_name 产品名称,"" 一级分类,gb.tax 税率,s.sale_price 销售单价,s.good_num 下单数量,s.total_price 销售总额,po.cgder 采购人,gb.customized 工期时间,s.arrive_time 要求到货时间,s.remark 备注,s.is_stock 是否库存品,csi.itemid,s.cat_id,s.is_activity,s.good_type')
-            ->leftJoin('customer_info csi', 'csi.companyNo=s.customer_code')
-            ->leftJoin('business b', 'b.companyNo=s.supplierNo')
+            ->field('s.addtime 确认单下单时间,s.orderCode 订单编号,s.order_type 订单类型,s.status 订单状态,s.apply_name 创建人,ci.name 部门,"" 销售方公司,"" 一级组织,"" 二级组织,"" 购买方公司,p.platform_name 所属平台,s.platform_order 平台订单号,s.poNo 其他单号,s.paytime 承诺回款时间,ou.order_use 订单用途,"" 活动类型,s.good_name 产品名称,"" 一级分类,gb.tax 税率,s.sale_price 销售单价,s.good_num 下单数量,s.total_price 销售总额,po.cgder 采购人,gb.customized 工期时间,s.arrive_time 要求到货时间,s.remark 备注,s.is_stock 是否库存品,s.cat_id,s.is_activity,s.good_type,s.customer_code,s.supplierNo')
+//            ->leftJoin('customer_info csi', 'csi.companyNo=s.customer_code')
+//            ->leftJoin('business b', 'b.companyNo=s.supplierNo')
             ->leftJoin('platform p', 'p.id=s.platform_id')
             ->leftJoin('good_basic gb', 'gb.spuCode=s.good_code')
             ->leftJoin('order_use ou', 'ou.id=s.use_order')
@@ -624,9 +655,26 @@ class NowReportHandle extends Command
             ->order('s.addtime', 'desc')
             ->cursor();
 
-        $list = [];
+        $list = $tmp_codes = $tmp_customer = [];
+
+        $userCommon = new User();
         foreach ($data as $value) {
 
+            if(!isset($tmp_codes[$value['supplierNo']])) {
+                $names = $userCommon->handle('getCodeAndName',['code'=>$value['supplierNo']]);
+                $tmp_codes[$value['supplierNo']] = $names['data'][$value['supplierNo']]??'';
+            }
+
+            if(!isset($tmp_customer[$value['customer_code']])){
+                $tmp = $userCommon->handle('cInfo',['companyNo'=>$value['customer_code']]);
+                $tmp_customer[$value['customer_code']]=['itemid'=>$tmp['data']['itemid'],'companyName'=>$tmp['data']['companyName']];
+            }
+
+            $value['购买方公司'] = $tmp_customer[$value['customer_code']]['companyName'];
+            $value['itemid'] = $tmp_customer[$value['customer_code']]['itemid'];
+            $value['销售方公司'] = $tmp_codes[$value['supplierNo']];
+
+
             $value['订单类型'] = isset($all_order_type[$value['订单类型']]) ? $all_order_type[$value['订单类型']] : '';
             $value['订单状态'] = isset($all_sale_status[$value['订单状态']]) ? $all_sale_status[$value['订单状态']] : '';
 
@@ -649,6 +697,8 @@ class NowReportHandle extends Command
             unset($value['cat_id']);
             unset($value['is_activity']);
             unset($value['good_type']);
+            unset($value['customer_code']);
+            unset($value['supplierNo']);
 
             yield $list[] = $value;
         }
@@ -1091,7 +1141,7 @@ class NowReportHandle extends Command
 	    $value["商品分类"]=Db::name("cat")->where("id",$value["商品分类"])->value("cat_name",'');
 	    $value["反馈商品分类"]=Db::name("cat")->where("id",$value["反馈商品分类"])->value("cat_name",'');
 	    $value["反馈商品单位"]=Db::name("unit")->where("id",$value["反馈商品单位"])->value("unit",'');
-	    $value["业务公司"]=Db::name("business")->where("companyNo",$value["业务公司"])->value("company","");
+	    $value["业务公司"]=Db::connect('mysql_sys')->name("business")->where("companyNo",$value["业务公司"])->value("company","");
 		$value["所属平台"]=Db::name("platform")->where("id", $value["所属平台"])->value("platform_name","");
 		$value['申请人部门'] = Db::name("depart_user")->alias("a")->leftJoin("company_item ci", "a.itemid=ci.id")->where(["a.uid" => $value['申请人部门'], "a.status" => 1, "a.is_del" => 0])->value('ci.name', '');
 		//状态 ;1招标进行中 2 招标已结束  3 等待议价结果   4.确认商品  5成功转单 6 取消转单 7 招标已暂
@@ -1105,7 +1155,7 @@ class NowReportHandle extends Command
 		$value["议价状态"]=$arr[$value["议价状态"]]??"";
 		$value['单位']=Db::name("unit")->where("id",$value['单位'])->value("unit",'');
 		$value['议价原因']=Db::name("result_info")->where("id",$value['议价原因'])->value("result_desc",'');
-		$value['客户名称']=Db::name("customer_info")->where("companyNo",$value['客户名称'])->value("companyName",'');
+		$value['客户名称']=Db::connect('mysql_sys')->name("customer_info")->where("companyNo",$value['客户名称'])->value("companyName",'');
     		yield $value;
     	}
     }

+ 2 - 1
app/command/handleYzOrderData.php

@@ -84,7 +84,8 @@ class handleYzOrderData extends Command
                     ->find();
 
                 if ($ct) {
-                    $customer_code = Db::name('customer_info')
+                    $customer_code = Db::connect('mysql_sys')
+                        ->name('customer_info')
                         ->where(['itemid' => $ct['org1_id'], 'companyName' => $ct['name'] . '客户', 'is_del' => 0])
                         ->value('companyNo', '');
 

Some files were not shown because too many files changed in this diff