Selaa lähdekoodia

Merge branch 'master-new' into master-new-wgg

wugg 2 vuotta sitten
vanhempi
commit
00cc06c00f

+ 13 - 10
app/admin/controller/After.php

@@ -377,23 +377,26 @@ class After extends Base
         if ($info['return_wsm'] != '') {
             $wsmcode = Db::name("warehouse_info")
                 ->alias("a")
-                ->leftJoin("supplier b", "a.supplierNo=b.code")
+//                ->leftJoin("supplier b", "a.supplierNo=b.code")
                 ->where(["a.wsm_code" => $info['return_wsm']])
-                ->field("a.name as wsm_name,b.name,b.code,a.wsm_code,a.contactor_name,a.position,a.mobile,a.addrs_code,a.addr,a.companyNo")
+                ->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_code'] = isset($wsmcode['wsm_code']) ? $wsmcode['wsm_code'] : "";
         $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'] : "";
-        $customer = [];
-        if (isset($orderinfo['supplierNo']) && $orderinfo['supplierNo'] != '') {
-            $customer = Db::name("business")->field('id,company,companyNo')->where(["companyNo" => $orderinfo['supplierNo']])->find();
-        }
+        $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'] = isset($customer['company']) ? trim($customer['company']) : '';
-        $info['customer_code'] = isset($customer['companyNo']) ? trim($customer['companyNo']) : '';
+        $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;
 
         //仓库的联系人、职位、电话、省市区和地址

+ 30 - 16
app/admin/controller/Allot.php

@@ -118,32 +118,42 @@ class Allot extends Base
         $all_createrid = array_column($list,'apply_id');
         $item = get_company_name_by_uid($all_createrid);
 
+        $userCommon = new \app\admin\common\User();
+
         $data=[];
         foreach ($list as $value){
             $db = Db::name('warehouse_info')
                 ->alias('a')
-                ->join("supplier b","b.code=a.supplierNo","left")
-                ->join("business bus","bus.companyNo=a.companyNo","left")
-                ->field("a.name,a.wsm_code,b.name rname,b.code,bus.company")
+//                ->join("supplier b","b.code=a.supplierNo","left")
+//                ->join("business bus","bus.companyNo=a.companyNo","left")
+//                ->field("a.name,a.wsm_code,b.name rname,b.code,bus.company")
+                ->field("a.name,a.wsm_code,a.supplierNo,a.companyNo")
                 ->where(['a.wsm_code'=>$value['wsm_out'],'a.is_del'=>0])
                 ->find();
             $value['name'] =isset($db['name']) ? $db['name']:"";
             $value['wsm_code'] =isset($db['wsm_code']) ? $db['wsm_code']:"";
-            $value['rname'] = isset($db['rname']) ? $db['rname'] : "";
-            $value['code'] = isset($db['code']) ? $db['code'] : "";
-            $value['out_company_name'] = isset($db['company']) ? $db['company'] : "";
+
             $dc = Db::name('warehouse_info')
                 ->alias('a')
-                ->join("business bus","bus.companyNo=a.companyNo","left")
-                ->join("supplier b","b.code=a.supplierNo","left")
-                ->field("a.name,a.wsm_code,b.name tname,b.code,bus.company")
+//                ->join("business bus","bus.companyNo=a.companyNo","left")
+//                ->join("supplier b","b.code=a.supplierNo","left")
+//                ->field("a.name,a.wsm_code,b.name tname,b.code,bus.company")
+                ->field("a.name,a.wsm_code,a.supplierNo,a.companyNo")
                 ->where(['a.wsm_code'=>$value['wsm_in'],'a.is_del'=>0])
                 ->find();
+
+            $names = $userCommon->handle('getCodeAndName',['code'=>[$db['supplierNo'],$db['companyNo'],$dc['supplierNo'],$dc['companyNo']]]);
+
+            $value['rname'] = $names['data'][$db['supplierNo']]??'';//isset($db['rname']) ? $db['rname'] : "";
+            $value['code'] = $db['supplierNo'];
+            $value['out_company_name'] = $names['data'][$db['companyNo']]??'';//isset($db['company']) ? $db['company'] : "";
+
+
             $value['wsm_in_name'] =isset($dc['name']) ? $dc['name']:"";
             $value['wsm_in_code'] =isset($dc['wsm_code']) ? $dc['wsm_code']:"";
-            $value['tname'] =isset($dc['tname']) ? $dc['tname']:"";
-            $value['rcode'] =isset($dc['code']) ? $dc['code']:"";
-            $value['in_company_name'] =isset($dc['company']) ? $dc['company']:"";
+            $value['tname'] =$names['data'][$dc['supplierNo']]??'';//isset($dc['tname']) ? $dc['tname']:"";
+            $value['rcode'] =isset($dc['supplierNo']) ? $dc['supplierNo']:"";
+            $value['in_company_name'] =$names['data'][$dc['companyNo']]??'';//isset($dc['company']) ? $dc['company']:"";
             $value['company_name'] = $item[$value['apply_id']]??'';
 
             //是否具有编辑权限
@@ -886,10 +896,14 @@ public function vesio(){
             //品牌信息
             $brands = Db::name('brand')->whereIn('id', array_column($list, 'brand_id'))->where('is_del', 0)->column('brand_name', 'id');
             $units = Db::name('unit')->whereIn('id', array_column($list, 'good_unit'))->where('is_del', 0)->column('unit', 'id');
-            $business = Db::name('business')->whereIn('companyNo', array_column($list, 'companyNo'))->where('is_del', 0)->column('company', 'companyNo');
+//            $business = Db::name('business')->whereIn('companyNo', array_column($list, 'companyNo'))->where('is_del', 0)->column('company', 'companyNo');
+            $userCommon=new \app\admin\common\User();
+            $names = $userCommon->handle('getCodeAndName',['code'=>array_merge(array_column($list, 'supplierNo'),array_column($list, 'companyNo'))]);
+//            $business = $names['data'];
+
             foreach ($list as $key => $value) {
-                $supplier = Db::name("supplier")->where(["code" => $value['supplierNo']])->find();
-                $value['supplier_name'] = isset($supplier['name']) ? $supplier['name'] : "";
+//                $supplier = Db::name("supplier")->where(["code" => $value['supplierNo']])->find();
+                $value['supplier_name'] = $names['data'][$value['supplierNo']]??'';//isset($supplier['name']) ? $supplier['name'] : "";
                 $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'] : "";
@@ -898,7 +912,7 @@ public function vesio(){
 
                 $value['brand_name'] = isset($brands[$value['brand_id']]) ? $brands[$value['brand_id']] : '';
                 $value['unit'] = isset($units[$value['good_unit']]) ? $units[$value['good_unit']] : '';
-                $value['companyName'] = isset($business[$value['companyNo']]) ? $business[$value['companyNo']] : '';
+                $value['companyName'] = $names['data'][$value['companyNo']]??'';//isset($names['data'][$value['companyNo']]) ? $business[$value['companyNo']] : '';
                 //规格信息
                 $spec = Db::name("good_spec")->where(["spuCode" => $value['spuCode'], "is_del" => 0])->select()->toArray();
 

+ 83 - 30
app/admin/controller/Good.php

@@ -393,11 +393,17 @@ class Good extends Base
         $data['unit'] = isset($unit['unit'])?$unit['unit']:'';
         $data['cat_info'] = made($data['cat_id'],[]);
         $spec = Db::name("good_spec")->where(["spuCode"=>$good_platform['spuCode'],"is_del"=>0])->select()->toArray();
-        $supplier = Db::name("supplier")->where(["code"=>$data['supplierNo']])->find();
-        $data['supplierName'] = isset($supplier['name'])?$supplier['name']:"";
+
+        $userCommon = new \app\admin\common\User();
+        $names = $userCommon->handle('getCodeAndName',['code'=>[$data['supplierNo'],$data['companyNo']]]);
+//        $supplier = Db::name("supplier")->where(["code"=>$data['supplierNo']])->find();
+        $data['supplierName'] = $names['data'][$data['supplierNo']]??'';//isset($supplier['name'])?$supplier['name']:"";
+
+//        $company = Db::name("business")->where(["companyNo"=>$data['companyNo']])->find();
+        $data['company'] = $names['data'][$data['companyNo']]??'';//isset($company['company'])?$company['company']:"";
+
         $data['noble_name']=isset($data['noble_metal'])&&$data['noble_metal']!=0?$this->noble[$data['noble_metal']] :"";
-        $company = Db::name("business")->where(["companyNo"=>$data['companyNo']])->find();
-        $data['company'] = isset($company['company'])?$company['company']:"";
+
         if($data['brand_id']!=0){
             $brand=Db::name("brand")->where(["id"=>$data['brand_id']])->find();
             $data["brand_name"]=isset($brand['brand_name'])?$brand['brand_name']:"";
@@ -608,16 +614,23 @@ class Good extends Base
         $page>=ceil($count/$size) ? $page=ceil($count/$size) :"";
         $list = Db::name("good_stock")->where($condition)->page($page,$size)->order("addtime desc")->select();
         $data=[];
+
+        $userCommon = new \app\admin\common\User();
+
         foreach ($list as $key=>$value){
             $temp=[];
             if($value['wsm_code']!=""){
                 $wsm = Db::name("warehouse_info")
                     ->alias("a")
-                    ->leftJoin("supplier b","a.supplierNo=b.code")
-                    ->leftJoin("business bus","a.companyNo=bus.companyNo")
+//                    ->leftJoin("supplier b","a.supplierNo=b.code")
+//                    ->leftJoin("business bus","a.companyNo=bus.companyNo")
                     ->where(['a.wsm_code'=>$value['wsm_code'],"a.is_del"=>0])
-                    ->field("a.name as wsm_name,wsm_code,a.supplierNo,b.name supplierName,a.companyNo,bus.company")
+                    ->field("a.name as wsm_name,wsm_code,a.supplierNo,a.companyNo")
                     ->find();
+
+                $names = $userCommon->handle('getCodeAndName',['code'=>[$wsm['supplierNo'],$wsm['companyNo']]]);
+                $wsm['supplierName'] = $names['data'][$wsm['supplierNo']]??'';
+                $wsm['company'] = $names['data'][$wsm['companyNo']]??'';
             }
             $temp['wsm_name'] = isset($wsm['wsm_name'])?$wsm['wsm_name']:"";
             $temp['wsm_code']=$value['wsm_code'];
@@ -730,15 +743,17 @@ class Good extends Base
             ->select()
             ->toArray();
         $data=[];
+
+        $userCommon = new \app\admin\common\User();
         foreach ($list as $key=>$value){
             $temp=[];
             if($value['wsm_code']!=""){
                 $wsm = Db::name("warehouse_info")
                     ->alias("a")
-                    ->leftJoin("business bus", "bus.companyNo=a.companyNo")
-                    ->leftJoin("supplier b","a.supplierNo=b.code")
+//                    ->leftJoin("business bus", "bus.companyNo=a.companyNo")
+//                    ->leftJoin("supplier b","a.supplierNo=b.code")
                     ->where(['a.wsm_code'=>$value['wsm_code'],"a.is_del"=>0])
-                    ->field("a.name as wsm_name,wsm_code,a.supplierNo,b.name supplierName,a.companyNo,bus.company")
+                    ->field("a.name as wsm_name,wsm_code,a.supplierNo,a.companyNo")
                     ->find();
                 $good = Db::name("good_stock")
                     ->alias("a")
@@ -747,6 +762,10 @@ class Good extends Base
                     ->select()
                     ->toArray();
 
+                $names = $userCommon->handle('getCodeAndName', [$wsm['supplierNo'], $wsm['companyNo']]);
+                $wsm['supplierName'] = $names['data'][$wsm['supplierNo']] ?? '';
+                $wsm['company'] = $names['data'][$wsm['companyNo']] ?? '';
+
                 //商品单位和品牌
                 $good_unit_s = Db::name("unit")->whereIn('id', array_column($good, 'good_unit'))->where('is_del', 0)->column('unit', 'id');
                 $brands = Db::name("brand")->whereIn('id', array_column($good, 'brand_id'))->where('is_del', 0)->column('brand_name', 'id');
@@ -843,19 +862,26 @@ class Good extends Base
             $good_unit_s = Db::name("unit")->whereIn('id', array_column($list, 'good_unit'))->where('is_del', 0)->column('unit', 'id');
             $brands = Db::name("brand")->whereIn('id', array_column($list, 'brand_id'))->where('is_del', 0)->column('brand_name', 'id');
 
+            $userCommon = new \app\admin\common\User();
             foreach ($list as $key => $value) {
                 $temp = [];
                 if ($value['spuCode'] != "") {
                     $child = Db::name("good_stock")
                         ->alias("a")
                         ->join("warehouse_info b", "a.wsm_code=b.wsm_code", "left")
-                        ->join("business bus", "bus.companyNo=b.companyNo", "left")
-                        ->join("supplier s", "s.code=b.supplierNo", "left")
+//                        ->join("business bus", "bus.companyNo=b.companyNo", "left")
+//                        ->join("supplier s", "s.code=b.supplierNo", "left")
                         ->where(['a.spuCode' => $value['spuCode'], "a.is_del" => 0])
                         ->where("b.wsm_type","<>",2)
-                        ->field("a.wsm_code,b.name wsm_name,a.wait_in_stock,a.wait_out_stock,a.usable_stock,a.intra_stock,(a.wait_out_stock+a.usable_stock) total_stock,a.warn_stock,b.supplierNo,s.name supplierName,b.companyNo,bus.company")
+                        ->field("a.wsm_code,b.name wsm_name,a.wait_in_stock,a.wait_out_stock,a.usable_stock,a.intra_stock,(a.wait_out_stock+a.usable_stock) total_stock,a.warn_stock,b.supplierNo,b.companyNo")
                         ->select()
                         ->toArray();
+
+                    foreach ($child as &$val){
+                        $names = $userCommon->handle('getCodeAndName',['code'=>[$val['supplierNo'],$val['companyNo']]]);
+                        $val['supplierName'] = $names['data'][$val['supplierNo']]??'';
+                        $val['company'] = $names['data'][$val['companyNo']]??'';
+                    }
                    // echo Db::name("good_stock")->getLastSql();
                 }
                 $temp['good_name'] = $value['good_name'];
@@ -1058,15 +1084,21 @@ class Good extends Base
 //            }
 //        }
 
+        $userCommon = new \app\admin\common\User();
+
         foreach ($list as &$value){
             $wsm = Db::name("warehouse_info")
                 ->alias("a")
-                ->Join("supplier b","a.supplierNo=b.code","left")
-                ->Join("business bus","bus.companyNo=a.companyNo","left")
+//                ->Join("supplier b","a.supplierNo=b.code","left")
+//                ->Join("business bus","bus.companyNo=a.companyNo","left")
                 ->where(['a.wsm_code'=>$value['wsm_code'],"a.is_del"=>0])
                 ->field("a.name as wsm_name,wsm_code,b.code,b.name,bus.company,bus.companyNo")
                 ->find();
 
+            $names = $userCommon->handle('getCodeAndName', ['code' => [$wsm['supplierNo'], $wsm['companyNo']]]);
+            $wsm['supplierName'] = $names['data'][$wsm['supplierNo']] ?? '';
+            $wsm['company'] = $names['data'][$wsm['companyNo']] ?? '';
+
 //            $godd = Db::name("good")->field('id,good_name,cat_id,is_stock')->where(["spuCode" => $value['spuCode'], "is_del" => 0])->find();
 //            $value['good_name']=isset($godd['good_name'])? $godd['good_name']:"";
 //            $value['cat_id']=isset($godd['cat_id'])? $godd['cat_id']:"";
@@ -1161,19 +1193,36 @@ class Good extends Base
 //            ->select();halt($list);
 //            ->toArray();
         $data = [];
+
+        $platform = Db::name('platform')
+            ->whereIn('id',array_column($list,'platform_code'))
+            ->column('platform_name,platform_code','id');
+
+        $brand = Db::name('brand')
+            ->whereIn('id',array_column($list,'brand_id'))
+            ->column('brand_name','id');
+
+        $unit = Db::name('unit')
+            ->whereIn('id',array_column($list,'good_unit'))
+            ->column('unit','id');
+
+        $userCommon = new \app\admin\common\User();
+
+        $names = $userCommon->handle('getCodeAndName',['code'=>array_merge(array_column($list,'supplierNo'),array_column($list,'companyNo'))]);
+
         foreach ($list as $value) {
             $value['cat_info'] = made($value['cat_id'], []);
-            $platform = Db::name("platform")->where(["id" => $value['platform_code']])->find();
-            $value['platform_name'] = isset($platform['platform_name']) ? $platform['platform_name'] : "";
-            $value['platform_code_en'] = isset($platform['platform_code']) ? $platform['platform_code'] : "";
-            $supplier = Db::name("supplier")->where(["code" => $value['supplierNo']])->find();
-            $value['supplier_name'] = isset($supplier['name']) ? $supplier['name'] : "";
-            $brand = Db::name("brand")->where(["id" => $value['brand_id']])->find();
-            $value["brand_name"] = isset($brand['brand_name']) ? $brand['brand_name'] : "";
-            $unit = Db::name("unit")->where(["id" => $value['good_unit']])->find();
-            $value['unit'] = isset($unit['unit']) ? $unit['unit'] : "";
-            $company = Db::name("business")->where(["companyNo" => $value['companyNo']])->find();
-            $value['company'] = isset($company['company']) ? $company['company'] : "";
+//            $platform = Db::name("platform")->where(["id" => $value['platform_code']])->find();
+            $value['platform_name'] = $platform[$value['platform_code']]['platform_name']??'';//isset($platform['platform_name']) ? $platform['platform_name'] : "";
+            $value['platform_code_en'] = $platform[$value['platform_code']]['platform_code']??'';//isset($platform['platform_code']) ? $platform['platform_code'] : "";
+//            $supplier = Db::name("supplier")->where(["code" => $value['supplierNo']])->find();
+            $value['supplier_name'] = $names['data'][$value['supplierNo']]??'';//isset($supplier['name']) ? $supplier['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'] : "";
+//            $unit = Db::name("unit")->where(["id" => $value['good_unit']])->find();
+            $value['unit'] = $unit[$value['good_unit']]??'';//isset($unit['unit']) ? $unit['unit'] : "";
+//            $company = Db::name("business")->where(["companyNo" => $value['companyNo']])->find();
+            $value['company'] = $names['data'][$value['companyNo']]??'';//isset($company['company']) ? $company['company'] : "";
             $value['stock_total'] = Db::name("good_stock")->where(['spuCode' => $value['spuCode'], "is_del" => 0])->sum("usable_stock");
             $value['status'] = $value['exam_status'];
             $data[] = $value;
@@ -1262,10 +1311,14 @@ class Good extends Base
             ->whereIn('id', array_column($list, 'brand_id'))
             ->column('brand_name', 'id');
 
-        $all_company = Db::name('business')
-            ->where('is_del', 0)
-            ->whereIn('companyNo', array_column($list, 'companyNo'))
-            ->column('company', 'companyNo');
+        $userCommon = new \app\admin\common\User();
+        $names = $userCommon->handle('getCodeAndName', ['code' => array_column($list, 'companyNo')]);
+        $all_company = $names['data'];
+
+//        $all_company = Db::name('business')
+//            ->where('is_del', 0)
+//            ->whereIn('companyNo', array_column($list, 'companyNo'))
+//            ->column('company', 'companyNo');
 
         foreach ($list as &$value) {
             $value['cat_info'] = made($value['cat_id'], []);

+ 6 - 3
app/admin/controller/Purchback.php

@@ -217,7 +217,10 @@ public function backfe(){
         if(empty($goon)){
             return error_show(1002,"未找到商品数据");
         }
-        $supplier=Db::name("supplier")->where(["code"=>$dom['supplierNo']])->find();
+
+        $userCommon=new \app\admin\common\User();
+        $names = $userCommon->handle('getCodeAndName',['code'=>$dom['supplierNo']]);
+//        $supplier=Db::name("supplier")->where(["code"=>$dom['supplierNo']])->find();
         $int= isset($goon['cat_id']) && $goon['cat_id'] !=0 ? made($goon['cat_id']):[];
         //$info['good'] = isset($wsmcode['good_name']) ? $wsmcode['good_name'] : "";
         $info['good_num'] = isset($dom['good_num']) ? $dom['good_num'] : "";
@@ -225,8 +228,8 @@ public function backfe(){
         $info['good_name'] = isset($dom['good_name']) ? $dom['good_name'] : "";
         $info['good_price'] = isset($dom['good_price']) ? $dom['good_price'] : "";
         $info['return_price'] = round($info['good_price']*$info['return_num'],2);
-        $info['wsm_supplier'] = isset($supplier['name']) ? $supplier['name'] : "";
-        $info['wsm_supplierNo'] = isset($supplier['code']) ? $supplier['code'] : "";
+        $info['wsm_supplier'] = $names['data'][$dom['supplierNo']]??'';//isset($supplier['name']) ? $supplier['name'] : "";
+        $info['wsm_supplierNo'] = $dom['supplierNo'];
         $info['can']=$int;
         return app_show(0,"获取成功",$info);
     }