haozi před 5 roky
rodič
revize
af7970b1bd
2 změnil soubory, kde provedl 12 přidání a 15 odebrání
  1. 10 13
      app/Services/StoreItemService.php
  2. 2 2
      app/Services/StoreService.php

+ 10 - 13
app/Services/StoreItemService.php

@@ -8,9 +8,6 @@ use App\Services\common\BatchUpdateService;
 use App\Services\common\DataHandlerService;
 use App\Store;
 use App\StoreItems;
-use Carbon\Carbon;
-use Doctrine\DBAL\Query\QueryBuilder;
-use Illuminate\Support\Facades\DB;
 
 Class StoreItemService
 {
@@ -69,10 +66,9 @@ Class StoreItemService
 //        });
         return $asnDetails;
     }
-    //TODO
+
     public function createStoreItem($asnDetails)
     {
-
         if ($asnDetails->isEmpty()) return null;
         ini_set('memory_limit', '512M');
         $stores = Store::query()->whereIn('asn_code', array_unique(data_get($asnDetails, '*.asnno')))->get();
@@ -129,7 +125,7 @@ Class StoreItemService
                 'name' => $asnDetail->skudescrc,
                 'sku' => $asnDetail->sku,
                 'amount' => $asnDetail->receivedqty ?? 0,
-                'quality' => $asnDetail->qualityStatus ?$asnDetail->qualityStatus->codename_c :' ',
+                'quality' => $asnDetail->qualityStatus ? $asnDetail->qualityStatus->codename_c :'',
                 'status' => $status ? $status : $asnDetail->lineStatus->codename_c,
                 'created_at' => $asnDetail->addtime ?? null,
                 'updated_at' => $asnDetail->edittime ?? null,
@@ -152,12 +148,10 @@ Class StoreItemService
             }
         }
     }
-    //TODO
+
     public function updateStoreItem($asnDetails)
     {
-        if (!$asnDetails || $asnDetails->count() == 0) {
-            return null;
-        }
+        if (!$asnDetails || $asnDetails->count() == 0) return null;
         /**
          * @var DataHandlerService $dataHandlerService
          * @var CommodityService $commodityService
@@ -186,7 +180,7 @@ Class StoreItemService
         ]];
         $delete_storeItems = [];
         foreach ($storeItems as $storeItem) {
-            $commodity=$dataHandlerService->getKeyValue(['id'=>$storeItem->commodity_id],$commodities_map);if (!$commodity)continue;
+            $commodity= $dataHandlerService->getKeyValue(['id'=>$storeItem->commodity_id],$commodities_map);if (!$commodity) continue;
             $asnDetail = $dataHandlerService
                 ->getKeyValue(['asnno' => $storeItem->store_asn_code, 'asnlineno' => $storeItem->asn_line_code,'customerid'=>$owner_map[$commodity->owner_id],'sku' => $commodity->sku], $asnDetails_map);
             if (!$asnDetail) {
@@ -196,7 +190,10 @@ Class StoreItemService
             $status = null;
             if ($asnDetail->lineStatus && $asnDetail->lineStatus->codename_c == '完全收货') $status = '已入库';
             if ($asnDetail->lineStatus && $asnDetail->lineStatus->codename_c == '订单创建') $status = '未入库';
-            if ($storeItem->updated_at != $asnDetail->edittime) {
+            if ($storeItem->updated_at != $asnDetail->edittime ||
+            $storeItem->status !=$asnDetail->lineStatus->codename_c||
+            $storeItem->quality !=$asnDetail->qualityStatus->codename_c
+            ) {
                 $updateParams[] = [
                     'id' => $storeItem->id,
                     'store_id' => $storeItem->store->id,
@@ -204,7 +201,7 @@ Class StoreItemService
                     'name' => $asnDetail->skudescrc,
                     'sku' => $asnDetail->sku,
                     'amount' => $asnDetail->receivedqty ?? 0,
-                    'quality' => $asnDetail->qualityStatus ?$asnDetail->qualityStatus->codename_c :' ',
+                    'quality' => $asnDetail->qualityStatus ? $asnDetail->qualityStatus->codename_c :'',
                     'status' => $status ? $status : $asnDetail->lineStatus->codename_c,
                     'created_at' => $asnDetail->addtime ?? null,
                     'updated_at' => $asnDetail->edittime ?? null,

+ 2 - 2
app/Services/StoreService.php

@@ -230,8 +230,8 @@ Class StoreService
             }
         }
         /** @var StoreItemService $storeItemService */
-        //$storeItemService = app(StoreItemService::class);
-        //$storeItemService->storeItemUpdateByWms($asnHerders);
+        $storeItemService = app(StoreItemService::class);
+        $storeItemService->storeItemUpdateByWms($asnHerders);
         /** @var RejectedBillService $rejectedBillService */
         $rejectedBillService = app(RejectedBillService::class);
         $rejectedBillService->syncLoadedStatusByAsnHerder($asnHerders);