Kaynağa Gözat

修改追踪件导出

ajun 5 yıl önce
ebeveyn
işleme
31e8633158

+ 1 - 1
app/Http/Controllers/OrderTrackingController.php

@@ -193,7 +193,7 @@ class OrderTrackingController extends Controller
             $planning_sent_at=str_split($orderTracking->planning_sent_at,10)[0];
             $signed_at=str_split($orderTracking->signed_at,10)[0];
             $logistic_number =$orderTracking->commodities->package->logistic_number;
-            if($logistic=='新杰物流'||$logistic->name=='新杰物流到付'){
+            if($logistic=='新杰物流'||$logistic=='新杰物流到付'){
                 $logistic_number = $orderTracking->order_client_code;
             }
             if(str_starts_with('null',$logistic_number)){

+ 31 - 28
app/Http/Controllers/TestController.php

@@ -1084,15 +1084,7 @@ where (commodities.owner_id,commodity_barcodes.code) in (select commodities.owne
         dd($requests);
     }
 
-    public function syncOrderTracking()
-    {
-        /** @var OrderTrackingService $orderTrackingService */
-        $orderTrackingService = app('OrderTrackingService');
-        /** @var OrderService $orderService */
-        $orderService = app(OrderService::class);
-        $date = Carbon::parse('2020-12-15 00:00:00');
-        $orderTrackingService->trackingWmsOrderOnCreate($date);
-    }
+
 
     public function testSyncOrderTask()
     {
@@ -1295,8 +1287,8 @@ where (commodities.owner_id,commodity_barcodes.code) in (select commodities.owne
     public function syncOrderTask()
     {
         $service = new OrderService();
-        $start_data = Carbon::parse('2020-12-10 00:00:00');
-        $end_data = Carbon::parse('2020-12-11 00:00:00');
+        $start_data = Carbon::parse('2020-12-21 10:00:00');
+        $end_data = Carbon::parse('2020-12-21 11:00:00');
         $orderNos = OracleDOCOrderHeader::query()->selectRaw('orderno')
             ->where('addTime', '>=', $start_data)
             ->where('addTime', '<=', $end_data)
@@ -1323,33 +1315,45 @@ where (commodities.owner_id,commodity_barcodes.code) in (select commodities.owne
             unset($orderHeaders);
         }
     }
-
-    public function editOrderTrackingClientNo()
+    public function syncOrderTracking()
     {
-        $maxId = OrderTracking::query()->orderByDesc('id')->first()->id;
-        for ($i = 0;$i<=$maxId;$i+=100){
-            $orderTrackings = OrderTracking::query()->with('commodities.package.order')
-                ->where('id','>=',$i)
-                ->where('id','<',$i)
-                ->get();
-            $orderTrackings->each(function($orderTracking){
-                if((bool)mb_stristr($orderTracking->clinet,'天猫'))$orderTracking->client = '天猫';
-
+        $service = new OrderTrackingService();
+        $start_data = Carbon::parse('2020-12-21 10:00:00');
+        $end_data = Carbon::parse('2020-12-21 11:00: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();
+            $service->createByWmsOrderHeader($orderHeaders);
+            unset($orderHeaders);
         }
     }
 
+
     public function testMbStrPos()
     {
         $string = '天猫旗舰店';
         dd((bool)mb_stristr('天猫旗舰店','天猫'));
     }
 
-    public function orderByDesc()
-    {
-        dd(Owner::query()->orderByDesc('id')->first()->id);
-    }
-
     public function testOrderissue()
     {
         $orderIssue_unique = \App\OrderIssue::withTrashed()
@@ -1396,7 +1400,6 @@ where (commodities.owner_id,commodity_barcodes.code) in (select commodities.owne
         $minId= $orderTracking_min->id;
         $logistic = \App\Logistic::query()->where('name','新杰物流')->first();
         $logistic_zt = \App\Logistic::query()->where('name','自提')->first();
-
         for ($i=$minId;$i<= $maxId;$i+=100){
             $orderTrackings = \App\OrderTracking::query()
                 ->where('id','>=',$i)