ソースを参照

客户基础类型分离,合同修改

cqpCow 1 年間 前
コミット
f268d68f08

+ 2 - 1
app/Model/BasicType.php

@@ -13,7 +13,7 @@ class BasicType extends UseScopeBaseModel
     public static $type = [
         1 => '客户意向类型',
         2 => '客户来源类型',
-        3 => '客户类型',
+        3 => '客户类型(T9改装)',
         4 => '客户电话类型',
         5 => '进展阶段类型',
         6 => '客户状态类型',
@@ -40,5 +40,6 @@ class BasicType extends UseScopeBaseModel
         27 => '采购类型',
         28 => '默认账户',
         29 => '客户简称',
+        30 => '客户类型(T9二手车)',
     ];
 }

+ 12 - 0
app/Service/CustomerService.php

@@ -549,6 +549,18 @@ class CustomerService extends Service
         if(! empty($data['customer_intention'])) $model->where('customer_intention',$data['customer_intention']);
         if(! empty($data['customer_from'])) $model->where('customer_from',$data['customer_from']);
         if(! empty($data['customer_type'])) $model->where('customer_type',$data['customer_type']);
+        if(! empty($data['customer_intention_title'])){
+            $id = (new RangeService())->customerBasicTypeSearch($data['customer_intention_title'],[1]);
+            $model->whereIn('customer_intention', $id);
+        }
+        if(! empty($data['customer_from_title'])){
+            $id = (new RangeService())->customerBasicTypeSearch($data['customer_from_title'],[2]);
+            $model->whereIn('customer_from', $id);
+        }
+        if(! empty($data['customer_type_title'])) {
+            $id = (new RangeService())->customerBasicTypeSearch($data['customer_type_title'],[3,30]);
+            $model->whereIn('customer_type', $id);
+        }
         if(! empty($data['crt_time'][0]) && ! empty($data['crt_time'][1])) {
             $return = $this->changeDateToTimeStampAboutRange($data['crt_time']);
             $model->where('crt_time','>=',$return[0]);

+ 0 - 2
app/Service/PaymentReceiptService.php

@@ -299,7 +299,6 @@ class PaymentReceiptService extends Service
             }
         }
         $emp_map = Employee::whereIn('id',array_unique($emp_id))
-            ->where('del_time',0)
             ->pluck('emp_name','id')
             ->toArray();
 
@@ -628,7 +627,6 @@ class PaymentReceiptService extends Service
             }
         }
         $emp_map = Employee::whereIn('id',array_unique($emp_id))
-            ->where('del_time',0)
             ->pluck('emp_name','id')
             ->toArray();
 

+ 9 - 0
app/Service/RangeService.php

@@ -2,6 +2,7 @@
 
 namespace App\Service;
 
+use App\Model\BasicType;
 use App\Model\ConstructionInfo;
 use App\Model\Customer;
 use App\Model\CustomerInfo;
@@ -518,4 +519,12 @@ class RangeService extends Service
         return $employee;
     }
 
+    //客户类型
+    public function customerBasicTypeSearch($customer_type, $type){
+        $result = BasicType::where('del_time',0)
+            ->whereIn('type',$type)
+            ->where('title', 'LIKE', '%'.$customer_type.'%')
+            ->select('id')->get()->toArray();
+        return array_column($result,'id');
+    }
 }

+ 30 - 22
app/Service/SalesOrderService.php

@@ -560,8 +560,14 @@ class SalesOrderService extends Service
         $basic_map = BasicType::whereIn('id',$array)
             ->pluck('title','id')
             ->toArray();
+        $sales['crt_name'] = Employee::where('id',$sales['crt_id'])->value('emp_name');
         $sales = [$sales];
+
+        //订单状态数据组织
+        $state_array = $this->getStateMake($sales);
+
         foreach ($sales as $key => $value){
+            $sales[$key]['state_title'] = $this->makeState($value, $value['crt_name'], $state_array);
             $sales[$key]['plat_type_title'] = $basic_map[$value['plat_type']] ?? '';
             $sales[$key]['order_type_title'] = $basic_map[$value['order_type']] ?? '';
             $sales[$key]['car_type_title'] = $basic_map[$value['car_type']] ?? '';
@@ -576,7 +582,6 @@ class SalesOrderService extends Service
             ->where('sales_order_id',$sales['id'])
             ->get()->toArray();
         $emp_id = [];
-        $emp_id[] = $sales['crt_id'];
         foreach ($sales_info as $value){
             if(in_array($value['type'],SalesOrderInfo::$man)){
                 $emp_id[] = $value['data_id'];
@@ -584,7 +589,6 @@ class SalesOrderService extends Service
         }
 
         $emp_map = Employee::whereIn('id',array_unique($emp_id))
-            ->where('del_time',0)
             ->pluck('emp_name','id')
             ->toArray();
         foreach ($sales_info as $value){
@@ -670,7 +674,6 @@ class SalesOrderService extends Service
             $value['product'] = $sports_bag_pro[$key] ?? [];
             $sales['activity_product'][] = $value;
         }
-        $sales['crt_name'] = $emp_map[$sales['crt_id']] ?? '';
         $sales['crt_time'] = $sales['crt_time'] ? date("Y-m-d H:i:s",$sales['crt_time']): '';
         $sales['dispatch_time_first'] = $sales['dispatch_time_first'] ? date("Y-m-d H:i:s",$sales['dispatch_time_first']): '';
         $sales['dispatch_time_second'] = $sales['dispatch_time_second'] ? date("Y-m-d H:i:s",$sales['dispatch_time_second']): '';
@@ -1038,25 +1041,7 @@ class SalesOrderService extends Service
             $data['data'][$key]['employee_two_title'] = $employee_two[$value['id']] ?? "";
             $data['data'][$key]['purchase'] = $purchase[$value['id']] ?? "";
             $data['data'][$key]['fee'] = $fee[$value['id']] ?? "";
-            if($value['sales_order_type'] == SalesOrder::Order_type_one){
-                //安装件
-                if(! empty($state_array[$value['order_number']])){
-                    $emp_tmp = $state_array[$value['order_number']];
-                    $state = "待" . $emp_tmp . "审核";
-                }elseif($value['state'] == SalesOrder::State_zero){
-                    $state = "待" . $crt_name . "确认";
-                }else{
-                    if($value['model_type'] == SalesOrder::Model_type_four){
-                        $state = SalesOrder::$state[$value['state']] ?? '';
-                    }else{
-                        $state = SalesOrder::$state_2[$value['state']] ?? '';
-                    }
-                }
-                $data['data'][$key]['state_title'] = $state;
-            }else{
-                //快递件
-                $data['data'][$key]['state_title'] = SalesOrder::$state2[$value['state']] ?? '';
-            }
+            $data['data'][$key]['state_title'] = $this->makeState($value, $crt_name, $state_array);
             $data['data'][$key]['invoice_state_name'] = SalesOrder::$invoice_state[$value['invoice_state']] ?? '';
             $data['data'][$key]['is_confirm_title'] = $value['is_confirm'] ? "已接收" : "未接收" ;
             $tmp = $invoiceData[$value['id']] ?? [];
@@ -1409,4 +1394,27 @@ class SalesOrderService extends Service
 
         return (new OaService())->getOaTeamDetailList($order_no);
     }
+
+    public function makeState($value,$crt_name, $state_array){
+        if($value['sales_order_type'] == SalesOrder::Order_type_one){
+            //安装件
+            if(! empty($state_array[$value['order_number']])){
+                $emp_tmp = $state_array[$value['order_number']];
+                $state = "待" . $emp_tmp . "审核";
+            }elseif($value['state'] == SalesOrder::State_zero){
+                $state = "待" . $crt_name . "确认";
+            }else{
+                if($value['model_type'] == SalesOrder::Model_type_four){
+                    $state = SalesOrder::$state[$value['state']] ?? '';
+                }else{
+                    $state = SalesOrder::$state_2[$value['state']] ?? '';
+                }
+            }
+        }else{
+            //快递件
+            $state = SalesOrder::$state2[$value['state']] ?? '';
+        }
+
+        return $state;
+    }
 }