|
|
@@ -258,17 +258,7 @@ class OrderTrackingService
|
|
|
$order_header = $order_headers_map[$order->code];
|
|
|
if(!$order_header){continue ;}
|
|
|
if($order_header->sostatus == 90){continue;}
|
|
|
- $client = null;
|
|
|
- $order_remark = null;
|
|
|
- if ($order_header['notes'] ?? false) {
|
|
|
- $notes = $order_header->notes;
|
|
|
- if (strpos($notes, '[')) {
|
|
|
- $strings = [];
|
|
|
- preg_match_all('/^(.*?)(\\[)(.*?)(\\])(.*?)$/u',$notes,$strings);
|
|
|
- $client = $strings[1][0];
|
|
|
- $order_remark = $strings[3][0];
|
|
|
- }
|
|
|
- }
|
|
|
+
|
|
|
$web_order_number = null;
|
|
|
if(preg_match('/^O[\d]/',$order_header['soreference1'] ?? '') > 0){
|
|
|
$web_order_number = $order_header['soreference1'];
|
|
|
@@ -282,9 +272,10 @@ class OrderTrackingService
|
|
|
'order_package_commodity_id' => $item->id,
|
|
|
'owner_id' => $order->owner_id,
|
|
|
'order_client_code' =>$order->client_code,
|
|
|
- 'client' => $client,
|
|
|
+ 'sale' => $param['sale'],
|
|
|
+ 'client' => $param['client'],
|
|
|
'created_at' => $order->created_at,
|
|
|
- 'order_remark' => $order_remark,
|
|
|
+ 'order_remark' => $param['order_remark'],
|
|
|
'pick_up_at' => $order_header->lastshipmenttime, // 提货时间,
|
|
|
'web_order_number' => $web_order_number,
|
|
|
'gross_weight'=> $gross_weight,
|
|
|
@@ -293,7 +284,6 @@ class OrderTrackingService
|
|
|
'planning_sent_at' => $param['planning_sent_at'] ?? ''
|
|
|
];
|
|
|
}
|
|
|
-
|
|
|
try {
|
|
|
if (count($params) > 0) {
|
|
|
$this->insert($params);
|
|
|
@@ -310,12 +300,14 @@ class OrderTrackingService
|
|
|
/** @var DataHandlerService $dataService */
|
|
|
$dataService = app(DataHandlerService::class);
|
|
|
$order_nos = data_get($orderHeaders,'*.orderno');
|
|
|
- $order_package_commodities = OrderPackageCommodities::query()
|
|
|
- ->with('package.order')
|
|
|
+
|
|
|
+ $order_package_commodities = OrderPackageCommodities::query()->with('package.order')
|
|
|
->whereHas('package.order',function($query) use ($order_nos){
|
|
|
$query->whereIn('code',$order_nos);
|
|
|
})->get();
|
|
|
+
|
|
|
$orderTrackings = OrderTracking::query()->whereIn('order_package_commodity_id',data_get($order_package_commodities,'*.id'))->get();
|
|
|
+
|
|
|
$order_tracking_id_map = [];
|
|
|
foreach ($orderTrackings as $orderTracking) {
|
|
|
$order_tracking_id_map[$orderTracking->order_package_commodity_id] = $orderTracking;
|
|
|
@@ -415,16 +407,6 @@ class OrderTrackingService
|
|
|
{
|
|
|
$client = null;
|
|
|
$order_remark = null;
|
|
|
- if ($orderHeader['notes'] ?? false) {
|
|
|
- $notes = $orderHeader->notes;
|
|
|
- if (strpos($notes, '[')) {
|
|
|
- $index = strpos($notes, '[');
|
|
|
- $client = substr($notes,0,$index);
|
|
|
- $order_remark = substr($notes,$index);
|
|
|
- $order_remark = ltrim($order_remark,'[');
|
|
|
- $order_remark = rtrim($order_remark,']');
|
|
|
- }
|
|
|
- }
|
|
|
$web_order_number = null;
|
|
|
if(preg_match('/^O[\d]/',$orderHeader['soreference1'] ?? '') > 0){
|
|
|
$web_order_number = $orderHeader['soreference1'];
|
|
|
@@ -439,10 +421,11 @@ class OrderTrackingService
|
|
|
}
|
|
|
return [
|
|
|
'owner_id' => $order->owner_id,
|
|
|
- 'client' => $client,
|
|
|
+ 'client' => $orderHeader['c_contact'],
|
|
|
+ 'sale' => $orderHeader['issuepartyname'],
|
|
|
'created_at' => $order->created_at,
|
|
|
- 'order_remark' => $order_remark,
|
|
|
- 'pick_up_at' => $orderHeader->lastshipmenttime, // 提货时间
|
|
|
+ 'order_remark' => $orderHeader['notes'],
|
|
|
+ 'pick_up_at' => $orderHeader['lastshipmenttime'] ?? '', // 提货时间
|
|
|
'web_order_number' =>$web_order_number,
|
|
|
'is_on_duty_shift'=>$planning_sent_at?'是':null,
|
|
|
'planning_sent_at' => (string)$planning_sent_at
|