Przeglądaj źródła

同步商品增加过滤带 * 的SKU

Zhouzhendong 5 lat temu
rodzic
commit
bf151e15fe

+ 15 - 5
app/Http/Controllers/CommodityController.php

@@ -185,6 +185,11 @@ class CommodityController extends Controller
         foreach ($wmsCommodities as $index => $wmsCommodity){
             $map[$wmsCommodity->sku] = $index;
             $skus[] = $wmsCommodity->sku;
+            $trimSku = rtrim($wmsCommodity->sku,"*");
+            if ($trimSku != $wmsCommodity->sku){
+                $skus[] = $trimSku;
+                $map[$trimSku] = $index;
+            }
         }
         /** @var CommodityService $commodityService */
         $commodityService = app('commodityService');
@@ -194,18 +199,20 @@ class CommodityController extends Controller
         $commodities = $commodityService->getOwnerCommodities(['owner_id' => $owner_id, 'sku'=>$skus]);
         $updateCommodities = [];
         $updateCommodities[] = [
-            'id', 'name', 'length', 'width', 'height', 'volumn',
+            'id', 'sku', 'name', 'length', 'width', 'height', 'volumn',
         ];
         $barcodeMap = [];
         $commoditiesId = [];
         $barcodes = [];
         foreach ($commodities as $commodity){
             $wms = $wmsCommodities[$map[$commodity->sku]];
-            if (($commodity->length != $wms->skulength) || ($commodity->width != $wms->skuwidth)
-                || ($commodity->height != $wms->skuhigh) || ($commodity->volumn != $wms->cube)
-                || ($commodity->name != $wms->descr_c)){
+            $trimSku = rtrim($wms->sku,"*");
+            if (($commodity->sku != $trimSku) || ($commodity->length != $wms->skulength)
+                || ($commodity->width != $wms->skuwidth) || ($commodity->name != $wms->descr_c)
+                || ($commodity->height != $wms->skuhigh) || ($commodity->volumn != $wms->cube)){
                 $updateCommodities[] = [
                     'id'=>$commodity->id,
+                    'sku'=>$trimSku,
                     'name' => $wms->descr_c,
                     'length' => $wms->skulength,
                     'width' => $wms->skuwidth,
@@ -221,7 +228,9 @@ class CommodityController extends Controller
                 }
             }
             $commoditiesId[] = $commodity->id;
-            unset($wmsCommodities[$map[$commodity->sku]],$map[$commodity->sku]);
+            unset($wmsCommodities[$map[$commodity->sku]]);
+            if (isset($map[$wms->sku]))unset($map[$commodity->sku]);
+            if (isset($map[$trimSku]))unset($map[$trimSku]);
         }
         unset($commodities,$skus);
 
@@ -255,6 +264,7 @@ class CommodityController extends Controller
         $skus = [];
 
         foreach ($map as $sku => $index){
+            if (substr($sku,-1) == "*")continue;
             $wms = $wmsCommodities[$index];
             $createCommodities[] = [
                 'owner_id' => $owner_id,

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

@@ -391,7 +391,7 @@ class TestController extends Controller
 
     public function test2(){
         $a = "025648*96875**";
-        dd(rtrim($a,'*'));
+        dd(substr($a,-1));
     }
 
     /*1*/