cqpCow 9 mesiacov pred
rodič
commit
46039be3b3

+ 1 - 13
app/Service/CustomerService.php

@@ -808,19 +808,7 @@ class CustomerService extends Service
             ->toArray();
 
         //跟进记录
-        $record = FollowUpRecord::where('del_time',0)
-            ->where('type',FollowUpRecord::type_one)
-            ->whereIn('data_id',array_column($data['data'],'id'))
-            ->select('data_id',DB::raw('max(visit_time) as visit_time'))
-            ->groupBy('data_id')
-            ->pluck('visit_time','data_id')->toArray();
-        $record_array = [];
-        if(! empty($record)){
-            $now = time();
-            foreach ($record as $key => $value){
-                $record_array[$key] = $this->showTimeAgo($value, $now);
-            }
-        }
+        $record_array = (new FollowUpRecordService())->getVisitDataOfTime(array_column($data['data'],'id'), FollowUpRecord::type_one);
 
         $customer_info = CustomerInfo::where('del_time',0)
             ->whereIn('customer_id',array_column($data['data'],'id'))

+ 20 - 0
app/Service/FollowUpRecordService.php

@@ -221,4 +221,24 @@ class FollowUpRecordService extends Service
 
         return array_values(array_column($follow_up_record,'data_id'));
     }
+
+    public function getVisitDataOfTime($data_id = [], $type = 0){
+        if(empty($data_id) || empty($type)) return [];
+
+        $record = FollowUpRecord::where('del_time',0)
+            ->where('type',$type)
+            ->whereIn('data_id',$data_id)
+            ->select('data_id',DB::raw('max(visit_time) as visit_time'))
+            ->groupBy('data_id')
+            ->pluck('visit_time','data_id')->toArray();
+        $record_array = [];
+        if(! empty($record)){
+            $now = time();
+            foreach ($record as $key => $value){
+                $record_array[$key] = $this->showTimeAgo($value, $now);
+            }
+        }
+
+        return $record_array;
+    }
 }

+ 16 - 6
app/Service/SalesOrderService.php

@@ -9,6 +9,7 @@ use App\Model\Customer;
 use App\Model\CustomerInfo;
 use App\Model\Depart;
 use App\Model\Employee;
+use App\Model\FollowUpRecord;
 use App\Model\InvoiceOrder;
 use App\Model\OrderOperation;
 use App\Model\PaymentReceipt;
@@ -970,6 +971,7 @@ class SalesOrderService extends Service
     public function fillData($data,$ergs){
         if(empty($data['data'])) return $data;
 
+        $data_id = array_column($data['data'],'id');
         $array = array_unique(array_merge_recursive(array_column($data['data'],'order_type'),array_column($data['data'],'car_type'),array_column($data['data'],'pay_way'),array_column($data['data'],'install_position'),array_column($data['data'],'install_method'),array_column($data['data'],'plat_type')));
         $basic_map = BasicType::whereIn('id',$array)
             ->pluck('title','id')
@@ -984,7 +986,7 @@ class SalesOrderService extends Service
         $product = $employee_two = $purchase = [];
         if(! empty($ergs['product'])){
             $sales_p_info = SalesOrderProductInfo::where('del_time',0)
-                ->whereIn('sales_order_id',array_column($data['data'],'id'))
+                ->whereIn('sales_order_id',$data_id)
                 ->get()->toArray();
             $basic_price = BasicType::whereIn('id',array_unique(array_column($sales_p_info,'basic_type_id')))->pluck('title','id')->toArray();
             $map = (new ProductService())->getProductDetail(array_column($sales_p_info,'product_id'));
@@ -1005,7 +1007,7 @@ class SalesOrderService extends Service
             //单据中选择的负责人
             $sales_order = SalesOrderInfo::where('del_time',0)
                 ->where('type',SalesOrderInfo::type_two)
-                ->whereIn('sales_order_id',array_column($data['data'],'id'))
+                ->whereIn('sales_order_id',$data_id)
                 ->select('sales_order_id','data_id')
                 ->get()->toArray();
             $empList = Employee::whereIn('id', array_unique(array_column($sales_order,'data_id')))
@@ -1023,7 +1025,7 @@ class SalesOrderService extends Service
         }
         if(! empty($ergs['purchase'])){
             $order = PurchaseOrder::where('del_time',0)
-                ->whereIn('sales_order_id',array_column($data['data'],'id'))
+                ->whereIn('sales_order_id',$data_id)
                 ->select('sales_order_id','order_number')
                 ->get()->toArray();
             foreach ($order as $value){
@@ -1036,7 +1038,7 @@ class SalesOrderService extends Service
         }
 
         list($for_amount_list, $for_amount_list1) = (new PaymentReceiptService())->getPaymentReceiptDataCountList(array_column($data['data'],'order_number'));
-        list($getDifferentAmountALL,$getDifferentAmountALL1) = (new ReturnExchangeOrderService())->getDifferentAmountALLNew(array_column($data['data'],'id'));
+        list($getDifferentAmountALL,$getDifferentAmountALL1) = (new ReturnExchangeOrderService())->getDifferentAmountALLNew($data_id);
 
         //获取分社订货合同关联的发货单
         $invoiceData = $this->getInvoiceOrderData($data['data']);
@@ -1051,10 +1053,14 @@ class SalesOrderService extends Service
         $state_array = $this->getStateMake($data['data']);
 
         //同步用友信息
-        $u8 = (new U8ServerService())->getMessage(array_column($data['data'], 'id'),U8Job::two);
+        $u8 = (new U8ServerService())->getMessage($data_id,U8Job::two);
 
         //关联施工单号
-        $construction_array = $this->getConstruction(array_column($data['data'], 'id'));
+        $construction_array = $this->getConstruction($data_id);
+
+        //跟进记录
+        $record_array = (new FollowUpRecordService())->getVisitDataOfTime($data_id, FollowUpRecord::type_two);
+
         foreach ($data['data'] as $key => $value){
             $data['data'][$key]['plat_type_title'] = $basic_map[$value['plat_type']] ?? '';
             $data['data'][$key]['sales_order_type_title'] = SalesOrder::$order_type[$value['sales_order_type']] ?? '';
@@ -1115,6 +1121,10 @@ class SalesOrderService extends Service
             //坏账金额
             $data['data'][$key]['fee4'] = $bad;
             //用于统计--------
+
+            $record_tmp = $record_array[$value['id']] ?? "";
+            $data['data'][$key]['has_record'] = $record_tmp ? "查看" : "无记录";
+            $data['data'][$key]['follow_record'] = $record_array[$value['id']] ?? "";
         }
 
         return $data;

+ 8 - 0
config/header/37.php

@@ -75,6 +75,14 @@ return [
         'value' => '坏账金额',
     ],
     [
+        'key' => 'has_record',
+        'value' => '跟进记录',
+    ],
+    [
+        'key' => 'follow_record',
+        'value' => '最后跟进时间',
+    ],
+    [
         'key' => 'crt_time',
         'value' => '创建时间',
     ],

+ 8 - 0
config/header/43.php

@@ -75,6 +75,14 @@ return [
         'value' => '坏账金额',
     ],
     [
+        'key' => 'has_record',
+        'value' => '跟进记录',
+    ],
+    [
+        'key' => 'follow_record',
+        'value' => '最后跟进时间',
+    ],
+    [
         'key' => 'crt_time',
         'value' => '创建时间',
     ],