cqpCow 1 年間 前
コミット
cdbc4d0aad
1 ファイル変更48 行追加29 行削除
  1. 48 29
      app/Service/U8ServerService.php

+ 48 - 29
app/Service/U8ServerService.php

@@ -11,6 +11,7 @@ use App\Model\PurchaseOrder;
 use App\Model\PurchaseOrderInfo;
 use App\Model\SalesOrder;
 use App\Model\SalesOrderProductInfo;
+use App\Model\SeeRange;
 use App\Model\Setting;
 use App\Model\Supplier;
 use App\Model\U8Job;
@@ -197,8 +198,10 @@ class U8ServerService extends Service
                 "cmaker"=>"admin",
                 "cmaketime"=>$time,
                 "IsExamine"=>false,
-                "cvencode"=>$value['cvencode'], //供应商编码
-                "cdepcode"=>$value['cdepcode'], //部门编号
+                "cvencode"=>"", //供应商编码
+                "cvenname"=>$value['cvenname'], //供应商名称
+                "cdepcode"=>"", //部门编号
+                "cdepname"=>$value['cdepname'], //部门名称
                 "cpersoncode"=>$value['cpersoncode'], //业务员编码
                 "cdefine1"=>"",
                 "cdefine2"=>"",
@@ -272,6 +275,9 @@ class U8ServerService extends Service
         $time1 = date("Y-m-d H:i:s");
         foreach ($result as $value){
             $bodys = [];
+
+            $cdefine31 = "";
+            if(! empty($value['cstname']) && $value['cstname'] == "线下销售") $cdefine31 = $value['cstname'];
             foreach ($value['product'] as $son){
                 //子表数据
                 $bodys[] = [
@@ -286,17 +292,17 @@ class U8ServerService extends Service
                     "imoney"=>$son['imoney'], //原币无税金额
                     "itax"=>$son['itax'],//原币税额
                     "cbmemo"=>$son['mark'], //表体备注
-                    "cdefine22"=>"",
+                    "cdefine22"=>$son['cdefine22'], //手机号码
                     "cdefine23"=>"",
                     "cdefine24"=>"",
-                    "cdefine25"=>"",
+                    "cdefine25"=>$son['cdefine25'], //平台类型
                     "cdefine26"=>"",
                     "cdefine27"=>"",
-                    "cdefine28"=>"",
-                    "cdefine29"=>"",
-                    "cdefine30"=>"",
-                    "cdefine31"=>"",
-                    "cdefine32"=>"",
+                    "cdefine28"=>$son['cdefine28'], //平台单号
+                    "cdefine29"=>$son['cdefine29'], //分社施工
+                    "cdefine30"=>$son['cdefine30'], //业务员
+                    "cdefine31"=>$cdefine31, //客户名称
+                    "cdefine32"=>$son['cdefine32'], //直播销售
                     "cdefine33"=>"",
                     "cdefine34"=>"",
                     "cdefine35"=>"",
@@ -321,12 +327,15 @@ class U8ServerService extends Service
                 "ddate"=> $time,
                 "cmaker"=>"admin",
                 "dcreatesystime"=>$time1,
-                "cstcode"=>$value['cstcode'],
-                "ccuscode"=>$value['ccuscode'],
-                "cdepcode"=>$value['cdepcode'],
-                "cpersoncode"=>$value['cpersoncode'],
+                "cstcode"=>"",
+                "cstname"=>$value['cstname'], //销售类型
+                "ccuscode"=>"",
+                "ccusabbname"=>$value['ccusabbname'], //客户简称
+                "cdepcode"=>"",
+                "cdepname"=>$value['cdepname'], // 部门名称
+                "cpersoncode"=>"", //业务员编码 暂时不要
                 "itaxrate"=>"0",
-                "cmemo"=>"T9同步销售顶单",
+                "cmemo"=>"T9同步销售单",
                 "cdefine1"=>"",
                 "cdefine2"=>"",
                 "cdefine3"=>"",
@@ -343,8 +352,6 @@ class U8ServerService extends Service
                 "cdefine14"=>"",
                 "cdefine15"=>"",
                 "cdefine16"=>"",
-                "cdefine16"=>"",
-                "cdefine16"=>"",
                 "bodys"=>$bodys
             ];
 
@@ -413,7 +420,7 @@ class U8ServerService extends Service
         $supplier = Supplier::whereIn('id',array_unique(array_column($main,'supplier')))
             ->pluck('title','id')
             ->toArray();
-        $depart = Depart::whereIn('id',array_unique(array_column($main,'depart_id')))
+        $depart = Depart::whereIn('id',array_unique(array_column($main,'top_depart_id')))
             ->pluck('title','id')
             ->toArray();
         $emp = Employee::whereIn('id',array_unique(array_column($main,'purchase_id')))
@@ -453,8 +460,8 @@ class U8ServerService extends Service
             $sub_map[$value['purchase_order_id']][] = $value;
         }
         foreach ($main as $key => $value){
-            $main[$key]['cvencode'] = $supplier[$value['supplier']] ?? "";
-            $main[$key]['cdepcode'] = $depart[$value['depart_id']] ?? "";
+            $main[$key]['cvenname'] = $supplier[$value['supplier']] ?? "";
+            $main[$key]['cdepname'] = $depart[$value['top_depart_id']] ?? "";
             $main[$key]['cpersoncode'] = $emp[$value['purchase_id']] ?? "";
             $main[$key]['product'] = $sub_map[$value['id']] ?? [];
         }
@@ -467,6 +474,7 @@ class U8ServerService extends Service
             ->where('del_time',0)
             ->get()->toArray();
         if(empty($main)) return [];
+        $main_map = array_column($main,null,'id');
         $sub = SalesOrderProductInfo::whereIn('sales_order_id',$id)
             ->where('del_time',0)
             ->get()->toArray();
@@ -480,16 +488,22 @@ class U8ServerService extends Service
         $customer_map = Customer::whereIn('id',array_unique(array_column($main,'customer_id')))
             ->pluck('title','id')
             ->toArray();
-        $depart = Depart::whereIn('id',array_unique(array_column($main,'depart_id')))
+        $depart = Depart::where('parent_id',0)
             ->pluck('title','id')
             ->toArray();
         $emp = Employee::whereIn('id',array_unique(array_column($main,'crt_id')))
             ->pluck('number','id')
             ->toArray();
+        $see = SeeRange::where('del_time',0)
+            ->whereIn('data_id',array_column($main,'id'))
+            ->where('data_type',SeeRange::type_seven)
+            ->where('type',SeeRange::data_three)
+            ->pluck('param_id','data_id')->toArray();//指派的分社
 
         $sub_map = [];
         foreach ($sub as $value){
             $product_tmp = $product_map[$value['product_id']] ?? [];
+            $main_tmp = $main_map[$value['sales_order_id']] ?? [];
 
             //计算金额
             if($value['rate'] > 0){
@@ -508,19 +522,24 @@ class U8ServerService extends Service
                 $value['imoney'] = $value['isum'];
                 $value['itax'] = 0;
             }
+            $value['cdefine25'] = $code_map[$main_tmp['plat_type']] ?? ""; //平台类型
+            $value['cdefine28'] = $main_tmp['plat_order'] ?? ""; //平台单号
+            $top_depart_id = $see[$value['sales_order_id']] ?? 0;
+            $value['cdefine29'] = $depart[$top_depart_id] ?? "";//分社施工
+            $value['cdefine32'] = "";//直播销售 暂时没有
+            $value['cdefine31'] = "";//客户名称(线上的时候就是空  线下的话就是表头的客户简称)
+            $value['cdefine22'] = "";//手机号码 暂时没有
+            $value['cdefine30'] = $emp[$main_tmp['crt_id']] ?? "";//业务员
+            $value['code'] = $product_tmp['code'];//存货编码
 
-            $value['code'] = $product_tmp['code'];
             $sub_map[$value['sales_order_id']][] = $value;
         }
         foreach ($main as $key => $value){
-            $main[$key]['cstcode'] = $code_map[$value['sale_type']] ?? ""; //销售类型
-            $main[$key]['cbustype'] = $code_map[$value['business_type']] ?? ""; //业务类型
-            $main[$key]['cdefine25'] = $code_map[$value['plat_type']] ?? ""; //平台类型
-            $main[$key]['cdefine28'] = $code_map[$value['order_number']] ?? ""; //平台单号
-
-            $main[$key]['ccuscode'] = $customer_map[$value['customer_id']] ?? "";
-            $main[$key]['cdepcode'] = $depart[$value['depart_id']] ?? "";
-            $main[$key]['cpersoncode'] = $emp[$value['crt_id']] ?? "";
+            $main[$key]['cbustype'] = $code_map[$value['business_type']] ?? ""; //业务类型(本身就是中文)
+            $main[$key]['cstname'] = $code_map[$value['sale_type']] ?? ""; //销售类型
+            $main[$key]['ccusabbname'] = $customer_map[$value['customer_id']] ?? "";//客户简称
+            $main[$key]['cdepname'] = $depart[$value['top_depart_id']] ?? "";//部门名称
+//            $main[$key]['cpersoncode'] = $emp[$value['crt_id']] ?? "";//业务员
             $main[$key]['product'] = $sub_map[$value['id']] ?? [];
         }