Просмотр исходного кода

问题追踪件 [部分优化]

ajun 5 лет назад
Родитель
Сommit
7a6631e3fe

+ 2 - 2
app/Services/OracleDOCOrderHeaderService.php

@@ -20,7 +20,7 @@ Class OracleDOCOrderHeaderService
         $owners = $ownerService->获取订单跟踪的货主();
         $ownerIds = data_get($owners, '*.code');
         return OracleDOCOrderHeader::query()
-            ->with(['oracleDOCOrderDetails', 'actAllocationDetails','oracleBASCustomer'])
+            ->with(['oracleDOCOrderDetails', 'actAllocationDetails','oracleBASCode'])
             ->where('addtime', '>=', $startDate)
             ->whereIn('customerID', $ownerIds)
             ->orderBy('addtime')
@@ -33,7 +33,7 @@ Class OracleDOCOrderHeaderService
         $owners = $ownerService->获取订单跟踪的货主();
         $ownerIds = data_get($owners, '*.code');
         return OracleDOCOrderHeader::query()
-            ->with(['oracleDOCOrderDetails', 'actAllocationDetails','oracleBASCustomer'])
+            ->with(['oracleDOCOrderDetails', 'actAllocationDetails','oracleBASCode'])
             ->where('EditTime','>=',$startDate)
             ->whereColumn('EditTime','<>','addtime')
             ->whereIn('customerID', $ownerIds)

+ 4 - 1
app/Services/OrderPackageService.php

@@ -237,7 +237,10 @@ class OrderPackageService
         $noAttributeCommodity = [];
         foreach ($orderPackages as $packages) {
             foreach ($packages as $package) {
-                $orderPackageCommodities =   $orderPackage['commodities'] ?? [];
+                if($package == null){
+                    continue;
+                }
+                $orderPackageCommodities = $package['commodities'] ?? [];
                 $updateArr = [
                     'id' => $package['id'],
                     'weight' => 0,

+ 11 - 4
app/Services/OrderService.php

@@ -493,8 +493,7 @@ class OrderService
 
         $orderPackages = [];
         foreach ($orders as $order) {
-           $packages =  $order['packages'];
-           array_push($orderPackages,$packages);
+            $orderPackages[] = $order['packages'];
         }
         $orderPackageService->更新WAS订单的包裹的重量和体积($orderHeaders,$orderPackages);
         return compact('orders', 'orderHeaders', 'actAllocationDetails', 'oracleDOCOrderDetails');
@@ -643,9 +642,17 @@ class OrderService
             })
             ->get();
 
-        unset($orderNos);
+        $orders = Order::query()
+            ->with('packages.commodities')
+            ->where('code',$orderNos)
+            ->get();
 
-        $orderPackageService->更新WAS订单的包裹的重量和体积($orderHeaders,$orderPackages);    // 同步包裹重量和体积
+        unset($orderNos);
+        $orderPackages_map = [];
+        foreach ($orders as $order) {
+            $orderPackages_map[] = $order['packages'];
+        }
+        $orderPackageService->更新WAS订单的包裹的重量和体积($orderHeaders,$orderPackages_map);    // 同步包裹重量和体积
 
     }