|
@@ -75,6 +75,13 @@ class SalesOrderService extends Service
|
|
|
$model->save();
|
|
|
$time = time();
|
|
|
|
|
|
+ $old = SalesOrderInfo::where('del_time',0)
|
|
|
+ ->where('sales_order_id',$data['id'])
|
|
|
+ ->whereIn('type',[SalesOrderInfo::type_four])
|
|
|
+ ->select('file')
|
|
|
+ ->get()->toArray();
|
|
|
+ $old = array_column($old,'file');
|
|
|
+
|
|
|
SalesOrderInfo::where('del_time',0)
|
|
|
->where('sales_order_id',$data['id'])
|
|
|
->update(['del_time' => $time]);
|
|
@@ -121,6 +128,7 @@ class SalesOrderService extends Service
|
|
|
SalesOrderInfo::insert($insert);
|
|
|
}
|
|
|
|
|
|
+ $new = [];
|
|
|
if(! empty($data['file'])){
|
|
|
$insert = [];
|
|
|
foreach ($data['file'] as $value){
|
|
@@ -131,6 +139,7 @@ class SalesOrderService extends Service
|
|
|
'type' => SalesOrderInfo::type_four,
|
|
|
'crt_time' => $time,
|
|
|
];
|
|
|
+ $new[] = $value['url'];
|
|
|
}
|
|
|
SalesOrderInfo::insert($insert);
|
|
|
}
|
|
@@ -165,6 +174,8 @@ class SalesOrderService extends Service
|
|
|
return [false,$exception->getMessage()];
|
|
|
}
|
|
|
|
|
|
+ $this->delStorageFile($old, $new);
|
|
|
+
|
|
|
if(! empty($data['check'])) {
|
|
|
list($status,$msg) = (new CheckService())->checkAll([
|
|
|
"id" => $data['id'],
|
|
@@ -341,6 +352,14 @@ class SalesOrderService extends Service
|
|
|
|
|
|
SalesOrder::where('del_time',0)
|
|
|
->where('id',$data['id'])->update(['del_time'=> time()]);
|
|
|
+
|
|
|
+ $old = SalesOrderInfo::where('del_time',0)
|
|
|
+ ->where('sales_order_id',$data['id'])
|
|
|
+ ->whereIn('type',[SalesOrderInfo::type_four])
|
|
|
+ ->select('file')
|
|
|
+ ->get()->toArray();
|
|
|
+ $old = array_column($old,'file');
|
|
|
+
|
|
|
SalesOrderInfo::where('del_time',0)
|
|
|
->where('sales_order_id',$data['id'])
|
|
|
->update(['del_time' => time()]);
|
|
@@ -358,6 +377,8 @@ class SalesOrderService extends Service
|
|
|
return [false,$exception->getMessage()];
|
|
|
}
|
|
|
|
|
|
+ $this->delStorageFile($old);
|
|
|
+
|
|
|
return [true,''];
|
|
|
}
|
|
|
|
|
@@ -391,6 +412,8 @@ class SalesOrderService extends Service
|
|
|
$sales['order_type'],
|
|
|
$sales['car_type'],
|
|
|
$sales['pay_way'],
|
|
|
+ $sales['install_method'],
|
|
|
+ $sales['install_position'],
|
|
|
];
|
|
|
$basic_map = BasicType::whereIn('id',$array)
|
|
|
->pluck('title','id')
|
|
@@ -401,6 +424,8 @@ class SalesOrderService extends Service
|
|
|
$sales[$key]['order_type_title'] = $basic_map[$value['order_type']] ?? '';
|
|
|
$sales[$key]['car_type_title'] = $basic_map[$value['car_type']] ?? '';
|
|
|
$sales[$key]['pay_way_title'] = $basic_map[$value['pay_way']] ?? '';
|
|
|
+ $sales[$key]['install_method_title'] = $basic_map[$value['install_method']] ?? '';
|
|
|
+ $sales[$key]['install_position_title'] = $basic_map[$value['install_position']] ?? '';
|
|
|
}
|
|
|
$sales = $sales[0];
|
|
|
|
|
@@ -758,7 +783,12 @@ class SalesOrderService extends Service
|
|
|
$data['data'][$key]['product'] = $product[$value['id']] ?? [];
|
|
|
$data['data'][$key]['fee'] = $fee[$value['id']] ?? "";
|
|
|
if($value['sales_order_type'] == SalesOrder::Order_type_one){
|
|
|
- $data['data'][$key]['state_title'] = SalesOrder::$state[$value['state']] ?? '';
|
|
|
+ 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']] ?? '';
|
|
|
}
|
|
@@ -810,18 +840,10 @@ class SalesOrderService extends Service
|
|
|
DB::beginTransaction();
|
|
|
$time = time();
|
|
|
|
|
|
- if(empty($data['is_company'])){
|
|
|
- SalesOrder::where('del_time',0)->where('id',$msg['id'])->update([
|
|
|
- 'state' => SalesOrder::State_three,
|
|
|
- 'dispatch_time_first' => $time,
|
|
|
- ]);
|
|
|
- }else{
|
|
|
- SalesOrder::where('del_time',0)->where('id',$msg['id'])->update([
|
|
|
- 'state' => SalesOrder::State_four,
|
|
|
- 'dispatch_time_first' => $time,
|
|
|
- 'dispatch_time_second' => $time,
|
|
|
- ]);
|
|
|
- }
|
|
|
+ SalesOrder::where('del_time',0)->where('id',$msg['id'])->update([
|
|
|
+ 'state' => SalesOrder::State_three,
|
|
|
+ 'dispatch_time_first' => $time,
|
|
|
+ ]);
|
|
|
|
|
|
SeeRange::where('del_time',0)
|
|
|
->where('data_id',$msg['id'])
|
|
@@ -857,18 +879,6 @@ class SalesOrderService extends Service
|
|
|
SeeRange::insert($insert);
|
|
|
}
|
|
|
|
|
|
- if(! empty($data['is_company'])){
|
|
|
- $insert = [];
|
|
|
- $insert[] = [
|
|
|
- 'data_id' => $msg['id'],
|
|
|
- 'data_type' => SeeRange::type_seven,
|
|
|
- 'param_id' => $data['is_company'],
|
|
|
- 'type' => SeeRange::data_three,
|
|
|
- 'crt_time' => $time,
|
|
|
- ];
|
|
|
- SeeRange::insert($insert);
|
|
|
- }
|
|
|
-
|
|
|
(new OrderOperationService())->add([
|
|
|
'order_number' => $msg['order_number'],
|
|
|
'msg' => OrderOperation::$type[OrderOperation::one],
|
|
@@ -905,11 +915,6 @@ class SalesOrderService extends Service
|
|
|
if(! $bool) return [false,'合同产品不能为空'];
|
|
|
if(empty($data['dispatch_depart_one']) && empty($data['dispatch_employee'])) return [false, '请指派部门或人员'];
|
|
|
|
|
|
- //如果是分社的合同 派销售以后直接 分社结束
|
|
|
- $top_depart_id = $user['head'] ?? [];
|
|
|
- $top_depart_id = $top_depart_id['id'] ?? 0;
|
|
|
- if($top_depart_id != $sale['top_depart_id']) $data['is_company'] = $sale['top_depart_id'];
|
|
|
-
|
|
|
return [true, $sale];
|
|
|
}
|
|
|
|
|
@@ -987,7 +992,7 @@ class SalesOrderService extends Service
|
|
|
if(empty($sale)) return [false,'合同不存在或已被删除'];
|
|
|
$sale = $sale->toArray();
|
|
|
if($sale['sales_order_type'] != SalesOrder::Order_type_one) return [false,'非安装件合同,操作失败'];
|
|
|
- if($sale['state'] < SalesOrder::State_three) return [false,'合同还未指派销售,操作失败'];
|
|
|
+ if($sale['state'] < SalesOrder::State_three) return [false,'请确认合同状态,操作失败'];
|
|
|
if($sale['state'] > SalesOrder::State_four) return [false,'请确认合同状态,操作失败'];
|
|
|
$product = SalesOrderProductInfo::where('del_time',0)
|
|
|
->where('sales_order_id',$data['id'])
|
|
@@ -1054,11 +1059,11 @@ class SalesOrderService extends Service
|
|
|
|
|
|
$invoice = InvoiceOrder::where('del_time',0)
|
|
|
->whereIn('sales_order_id',$search_id)
|
|
|
- ->select('sales_order_id','order_number')
|
|
|
+ ->select('sales_order_id','order_number','logistics_number')
|
|
|
->get()->toArray();
|
|
|
$invoice_array = [];
|
|
|
foreach ($invoice as $value){
|
|
|
- $invoice_array[$value['sales_order_id']][] = $value['order_number'];
|
|
|
+ $invoice_array[$value['sales_order_id']][] = $value['logistics_number'];
|
|
|
}
|
|
|
|
|
|
return $invoice_array;
|