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

OrderService 同步订单时同步Batch_id

ajun 5 лет назад
Родитель
Сommit
3d99d675f3

+ 21 - 110
app/Http/Controllers/TestController.php

@@ -19,6 +19,7 @@ use App\OracleActAllocationDetails;
 use App\OracleDOCOrderHeader;
 use App\OracleDocOrderPackingSummary;
 use App\OracleDOCWaveDetails;
+use App\OracleDOCWaveHeader;
 use App\Order;
 use App\OrderBin;
 use App\OrderCommodity;
@@ -141,17 +142,6 @@ class TestController extends Controller
             ]);
         }
     }
-
-    public function test4(){
-        $arr=[['id'=>3],['id'=>33],];
-        dd(data_get($arr,'*.id'));
-    }
-    public function t($a)
-    {
-        $r = new \ReflectionClass('App\Http\Controllers\UnitsController');
-        dd($r->getMethods(),$r->getConstants());
-    }
-
     public function updateLaborRemark(){
         $laborReports=LaborReport::query()->with(['remarks'=>function($query){
             return $query->whereNotNull('mark');
@@ -173,9 +163,6 @@ class TestController extends Controller
             app(BatchUpdateService::class)->batchUpdate('labor_reports',$updateParams);
         }
     }
-    public function test2(){
-    }
-
     function packageFromLog(Request $request)
     { //x        $packagesBatch=Package::where('batch_number',$batch_number)->first();
         ini_set('max_execution_time', 2500);
@@ -202,14 +189,6 @@ class TestController extends Controller
         });
         dd($uploaded . '/' . $count);
     }
-
-    function wmsSql()
-    {
-        $owner=Owner::first();
-//        $owner['phone_number'] ?? $owner['phone_number'] = '31115';
-//        $owner->update();
-        dd($owner);
-    }
     function issues()
     {
         /** @var OrderPackageService $orderPackageService */
@@ -222,18 +201,6 @@ class TestController extends Controller
             $orderPackageService->createdByOrder($item);
         }
     }
-
-    function t2(Request $request)
-    { //x        $packagesBatch=Package::where('batch_number',$batch_number)->first();
-
-
-        $inventoryCompareService = new InventoryCompareService();
-        echo ($inventoryCompareService)->getCreatingMissionCode('安桥主品');
-        echo ($inventoryCompareService)->getCreatingMissionCode('安桥主品');
-        echo ($inventoryCompareService)->getCreatingMissionCode('安桥主品');
-        echo ($inventoryCompareService)->getCreatingMissionCode('安桥主品');
-    }
-
     function tlog(Request $request)
     {
         app('LogService')->log(__METHOD__,'cczdelme'.__FUNCTION__,json_encode($request->all()),null);
@@ -244,7 +211,6 @@ class TestController extends Controller
         Cache::put('storedTest', $today);
         return "cacheing:'$today'<script>localStorage.setItem('storedTest','{$today}')</script>";
     }
-
     function getCache(Request $request)
     {
         $cache = Cache::get('storedTest');
@@ -275,13 +241,8 @@ class TestController extends Controller
             oci_bind_by_name($stmt, ':IN_UserID', $IN_UserID);
             oci_bind_by_name($stmt, ':OUT_Return_Code', $OUT_Return_Code);
             return oci_execute($stmt);
-
         }
-
-
     }
-
-
     function packageT(Request $request)
     {
         $package = Package::where('created_at', '<', '2020-07-08')->whereNotNull('logistic_number')->first();
@@ -324,7 +285,6 @@ class TestController extends Controller
         }
     }
 
-
     public function mergerPackageData()
     {
         ini_set('max_execution_time', 36000);
@@ -752,7 +712,6 @@ where (commodities.owner_id,commodity_barcodes.code) in (select commodities.owne
 
         Commodity::destroy($deleteCommodities);
     }
-
     /*1*/
     function socket(Request $request)
     {/**/
@@ -810,28 +769,6 @@ where (commodities.owner_id,commodity_barcodes.code) in (select commodities.owne
     }
 
 
-
-
-    public function test11()
-    {
-        $rejectedBills = RejectedBill::query()
-            ->where('created_at','>=','2020-11-10 18:00:22')
-            ->where('created_at','<=','2020-11-11 00:00:00')
-            ->get();
-        $update = [['id','logistic_number']];
-        $rejectedBills->each(function ($rejectedBill)use(&$update){
-            if($rejectedBill->logistic_number == '原单退回'){
-                $details = OracleActAllocationDetails::query()->with('oracleDocOrderHeader')->whereHas('oracleDocOrderHeader',function($query)use($rejectedBill){
-                    $query->where('SOReference1',$rejectedBill->order_number);
-                })->get()->groupBy('picktotraceid');
-                if($details->count() == 1){
-                    $update[] = ['id'=> $rejectedBill->id ,'logistic_number'=>$rejectedBill->logistic_number_return];
-                }
-            }
-        });
-        app('RejectedBillService')->batchUpdate($update);
-    }
-
     public function output()
     {
         /** @var CacheService $cacheService */
@@ -959,10 +896,6 @@ where (commodities.owner_id,commodity_barcodes.code) in (select commodities.owne
         app(StoreService::class)->insertStore($param);
         var_dump('end',Carbon::now());
     }
-    public  function  testSyncAsn(){
-        $startDate=Carbon::parse('2020-11-12 17:48:00')->subSeconds(65)->format('Y-m-d H:i:s');
-        app(StoreService::class)->syncWmsAsnData($startDate);
-    }
 
     public function changeOrder()
     {
@@ -1002,10 +935,7 @@ where (commodities.owner_id,commodity_barcodes.code) in (select commodities.owne
     public function view(){
         return view('test');
     }
-    public function tdel(){
-        echo '223232323';
-        return 'asdfsadfsdf';
-    }
+
     public function cleanOrderRepeat(){
 
         ini_set('max_execution_time',6500);
@@ -1068,16 +998,6 @@ where (commodities.owner_id,commodity_barcodes.code) in (select commodities.owne
         echo $i;
     }
 
-    public function orderTrackingImportTest(Request $request)
-    {
-        $file = $request->file('file');
-        ini_set('max_execution_time',4000);
-        ini_set('memory_limit', '1024M');
-        $extension = $request->file()['file']->getClientOriginalExtension();
-        $extension[0] = strtoupper($extension[0]);
-        Excel::import(new OrderTrackingImport(), $request->file('file')->path(), null, $extension);
-    }
-
     public function testImp()
     {
         $client_no = null;
@@ -1135,34 +1055,6 @@ where (commodities.owner_id,commodity_barcodes.code) in (select commodities.owne
 //
 //    }
 
-    public function testSyncOrder()
-     {
-        $carbon =Carbon::now()->subHours(1);
-        $date = '2020-05-18 18:13:50';
-        $orderHeader = 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');
-            }, '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');
-            },'oracleBASCode'=>function($query){
-                $query->selectRaw('BAS_Codes.CodeID,BAS_Codes.CodeName_C,BAS_Codes.Code');
-            }])
-            ->where('DOC_Order_Header.addTime','>=',$carbon)
-            ->get();
-        /** @var OrderService $service */
-        $service = app('OrderService');
-        $service->syncOrder($orderHeader);
-    }
-
-    public function OrderSync(){
-        dump(Carbon::now());
-        $tack = new SyncWMSOrderTask();
-        $tack->handle();
-        dump(Carbon::now());
-    }
-
     public function reNewBatches3()
     {
         $batches=Batch::query()->where('id','>',324)->get('code');
@@ -1232,4 +1124,23 @@ where (commodities.owner_id,commodity_barcodes.code) in (select commodities.owne
         dump((string)Carbon::now());
         dd('hendle...end');
     }
+
+    public function testSyncWaveNo()
+    {
+        $waveHeader = OracleDOCWaveHeader::query()->where('waveno','W201209000024')->first();
+//        Batch::query()->create([
+//            'code' => $waveHeader->waveno,
+//            'wms_created_at' => $waveHeader->addtime,
+//            'remark' => $waveHeader->descr,
+//            'wms_status' => '99',
+//        ]);
+        $waveHeaderDetails = OracleDOCWaveDetails::query()->where('waveno',$waveHeader->waveno)->get();
+        $orderNos = $waveHeaderDetails->map(function($item){
+            return $item->orderno;
+        });
+        $orderHeaderService = new OracleDOCOrderHeaderService();
+        $orderHeaders = $orderHeaderService->getOrderInfoByOrderNos($orderNos);
+        $orderService = new OrderService();
+        $orderService->syncOrderByWMSOrderHeaders($orderHeaders);
+    }
 }

+ 1 - 1
app/Services/LogisticService.php

@@ -104,7 +104,7 @@ Class LogisticService
         return Cache::remember("getLogisticByCode_{$code}", config('database.cache.expirations.rarelyChange'), function()use($code){
             $logistic = Logistic::query()->where('code',$code)->first();
             if($logistic)return $logistic;
-            $baseCustomers = app('OracleBasCustomerService')->first(['Customer_Type'=>'CA','CustomerID'=>'$code']);
+            $baseCustomers = app('OracleBasCustomerService')->first(['Customer_Type'=>'CA','CustomerID'=>$code]);
             if(!$baseCustomers)return null;
             try {
                 $logistic = Logistic::query()->create(['name' => $baseCustomers['descr_c'], 'code' => $baseCustomers['customerid']]);

+ 0 - 7
app/Services/OracleDOCOrderHeaderService.php

@@ -38,13 +38,6 @@ Class OracleDOCOrderHeaderService
                 $query->selectRaw('BAS_Codes.CodeID,BAS_Codes.CodeName_C,BAS_Codes.Code');
             }]);
     }
-    static $with = [
-        'oracleBASCustomer'=> (string) implode(',',OracleBasCustomer::$columns),
-        'oracleDOCOrderDetails'=> (string) implode(',',OracleDOCOrderDetail::$columns),
-        'actAllocationDetails'=> (string) implode(',',OracleActAllocationDetails::$columns),
-        'oracleBASCode'=> (string) implode(',',OracleBasCode::$columns),
-        'orderType'=> (string) implode(',',OracleBasCode::$columns),
-    ];
 
     function first(array $params){
         $order = OracleDOCOrderHeader::query();

+ 1 - 1
app/Services/OrderService.php

@@ -870,7 +870,7 @@ class OrderService
             });
         }
         $update_params = [
-            ['id','code','warehouse_id','owner_id','shop_id','logistic_id','consignee_name','consignee_phone','province','city','district','address','client_code','wms_status','created_at','updated_at','wms_edittime','order_type']
+            ['id','code','warehouse_id','owner_id','batch_id','shop_id','logistic_id','consignee_name','consignee_phone','province','city','district','address','client_code','wms_status','created_at','updated_at','wms_edittime','order_type']
         ];
 
         $update_order->each(function($item)use(&$update_params){

+ 10 - 1
database/factories/BatchFactory.php

@@ -6,7 +6,16 @@ use App\Batch;
 use Faker\Generator as Faker;
 
 $factory->define(Batch::class, function (Faker $faker) {
+    $status = ['未处理','已处理','取消','处理中','挂起','异常'];
+    $type = ['无'];
     return [
-        //
+        'code' => $faker->uuid,
+        'type' => '无',
+        'wms_type' =>$faker->name,
+        'status' => $status[rand(0,count($status)-1)],
+        'wms_status' =>$faker->name,
+        'wms_created_at'=> $faker->date(),
+        'remark' => $faker->text(20),
+        'owner_id' => 1,
     ];
 });

+ 47 - 0
tests/Services/BatchService/TestGetBatchByCodes.php

@@ -0,0 +1,47 @@
+<?php
+
+namespace Tests\Services\BatchService;
+
+use App\Batch;
+use App\Services\BatchService;
+use Illuminate\Foundation\Testing\RefreshDatabase;
+use Tests\TestCase;
+
+class TestGetBatchByCodes extends TestCase
+{
+//    use RefreshDatabase;
+
+    /** @var BatchService $service */
+    private $service;
+    private $data = [];
+
+    public function setUp(): void
+    {
+        parent::setUp(); // TODO: Change the autogenerated stub
+        $this->service = app('BatchService');
+        $batch = factory(Batch::class)->create();
+        $this->data['batch'] = $batch;
+    }
+
+    /**
+     * @test
+     */
+    public function getBatchByCodes()
+    {
+        $batch = $this->service->getBatchByCodes([$this->data['batch']['code']])->first();
+        $this->assertNotNull($batch);
+        $this->assertEquals($batch['code'],$this->data['batch']['code']);
+        $this->assertEquals($batch['type'],$this->data['batch']['type']);
+        $this->assertEquals($batch['wms_type'],$this->data['batch']['wms_type']);
+        $this->assertEquals($batch['status'],$this->data['batch']['status']);
+        $this->assertEquals($batch['wms_status'],$this->data['batch']['wms_status']);
+        $this->assertEquals($batch['remark'],$this->data['batch']['remark']);
+        $this->assertEquals($batch['owner_id'],$this->data['batch']['owner_id']);
+    }
+
+    public function tearDown(): void
+    {
+        $this->data['batch']->delete();
+        parent::tearDown(); // TODO: Change the autogenerated stub
+    }
+}