Browse Source

临时提交

ajun 5 years ago
parent
commit
6efeec064b
1 changed files with 36 additions and 0 deletions
  1. 36 0
      app/Http/Controllers/TestController.php

+ 36 - 0
app/Http/Controllers/TestController.php

@@ -1251,6 +1251,42 @@ where (commodities.owner_id,commodity_barcodes.code) in (select commodities.owne
         ValueStore::query()->where('name','order_last_updated_sync_at')->update(['value'=>'2020-12-22 09:00:00']);
     }
 
+    public function syncOrderTrackingTask()
+    {
+        $service = new OrderTrackingService();
+        $start_data = Carbon::parse('2020-12-21 10:00:00');
+        $end_data = Carbon::parse('2020-12-21 10:05:00');
+        $orderNos = OracleDOCOrderHeader::query()->selectRaw('orderno')
+            ->where('addTime', '>=', $start_data)
+            ->where('addTime', '<=', $end_data)
+            ->get()->map(function($orderHeader){
+                return $orderHeader->orderno;
+            });
+        $order_no_list = $orderNos->chunk(3000);
+        foreach ($order_no_list as $order_nos) {
+            $orderHeaders = OracleDOCOrderHeader::query()->selectRaw(implode(',', OracleDOCOrderHeaderService::$columns))
+                ->with(['oracleBASCustomer' => function ($query) {
+                    $query->selectRaw('BAS_CUSTOMER.CustomerID,BAS_CUSTOMER.Customer_Type,BAS_CUSTOMER.Descr_C,BAS_CUSTOMER.Active_Flag');
+                }, 'oracleDOCOrderDetails' => function ($query) {
+                    $query->selectRaw('doc_order_details.orderNo,doc_order_details.customerid,doc_order_details.sku,doc_order_details.QtyOrdered,doc_order_details.Location');
+                }, 'actAllocationDetails' => function ($query) {
+                    $query->selectRaw('ACT_Allocation_Details.AllocationDetailsID,ACT_Allocation_Details.OrderNo,ACT_Allocation_Details.Qty_Each,ACT_Allocation_Details.PickToTraceID,ACT_Allocation_Details.CustomerID,ACT_Allocation_Details.Sku,ACT_Allocation_Details.Location');
+                }, 'oracleBASCode' => function ($query) {
+                    $query->selectRaw('BAS_Codes.CodeID,BAS_Codes.CodeName_C,BAS_Codes.Code');
+                }, 'orderType' => function ($query) {
+                    $query->selectRaw('BAS_Codes.CodeID,BAS_Codes.CodeName_C,BAS_Codes.Code');
+                }])
+                ->whereIn('DOC_Order_Header.OrderNo', $order_nos)
+                ->get();
+            app(OrderService::class)->syncOrderByWMSOrderHeaders($orderHeaders);
+            app("OrderCommodityService")->syncOrderCommodity($orderHeaders);
+            app('OrderPackageService')->syncOrderPackage($orderHeaders);
+            app("OrderPackageCommoditiesService")->syncOrderPackageCommodities($orderHeaders);
+            $service->createByWmsOrderHeader($orderHeaders);
+            unset($orderHeaders);
+        }
+    }
+
     public function syncOrderTask()
     {
         $service = new OrderService();