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

Merge branch 'Haozi' of ssh://47.103.131.176:10022/var/git/bswas into haozi_test

 Conflicts:
	app/Http/Controllers/TestController.php
ajun 5 лет назад
Родитель
Сommit
becbc4e7ae

+ 7 - 2
app/Http/Controllers/StoreController.php

@@ -47,7 +47,9 @@ class StoreController extends Controller
     public function index()
     {
         if(!Gate::allows('入库管理-快速入库-查询')){ return redirect(url('/'));  }
-        $stores=Store::query()->with(['warehouse','owner'])->orderBy('id','DESC')->paginate(50);
+        $stores=Store::query()->with(['warehouse','owner'])
+            ->where('is_fast_stored','快速入库')
+            ->orderBy('id','DESC')->paginate(50);
         return view('store.fast.index',['stores'=>$stores]);
     }
 
@@ -107,6 +109,7 @@ class StoreController extends Controller
                 'stored_method'=>'快速入库',
                 'status'=>'未入库',
                 'remark'=>$WMSReflectReceive->NOTES,
+                'is_fast_stored'=>'快速入库',
             ]);
             $store->save();
 
@@ -178,7 +181,9 @@ class StoreController extends Controller
 
     public function quickStorage($asnno,$quality,$depository_code,$isVerification = true)
     {
-        $task = Store::query()->where("asn_code",$asnno)->where("stored_method","快速入库")
+        $task = Store::query()->where("asn_code",$asnno)
+            ->where("stored_method","快速入库")
+            ->orWhere('is_fast_stored','快速入库')
             ->where("status","已入库")->first();
         if ($task)return ['success'=>false, 'data'=>"已被快速入库"];
         $db = DB::connection('oracle');

+ 5 - 1
app/Http/Controllers/StoreItemsController.php

@@ -17,7 +17,11 @@ class StoreItemsController extends Controller
      */
     public function index()
     {
-        $storeItems=StoreItems::query()->with('store')->orderBy('id','DESC')->paginate(50);
+        $storeItems=StoreItems::query()->with('store')
+            ->whereHas('store',function($query){
+                $query->where('is_fast_stored','快速入库');
+            })
+            ->orderBy('id','DESC')->paginate(50);
         return view('store.fast.storeItem',['storeItems'=>$storeItems]);
     }
 }

+ 26 - 8
app/Http/Controllers/TestController.php

@@ -51,6 +51,7 @@ use App\Services\OwnerService;
 use App\Services\ShopService;
 use App\Services\StoreService;
 use App\Services\WarehouseService;
+use App\Store;
 use App\StoreCheckingReceiveItem;
 use App\User;
 use App\Warehouse;
@@ -1003,12 +1004,10 @@ where (commodities.owner_id,commodity_barcodes.code) in (select commodities.owne
 
     public function testSyncAsn()
     {
-        dump('handle.......start');
-        echo (string)Carbon::now() . PHP_EOL;
+        dump('start'.(string)Carbon::now());
         app(StoreService::class)->storeCreateByWms();
         app(StoreService::class)->storeUpdateByWms();
-        echo (string)Carbon::now() . PHP_EOL;
-        dump('handle.......end');
+        dump('end'.(string)Carbon::now());
     }
 
     public function changeOrder()
@@ -1282,12 +1281,15 @@ where (commodities.owner_id,commodity_barcodes.code) in (select commodities.owne
          * @var CommodityService $commodityService
          */
         $ownerIds=['13'];
-        $barcodes = ['5211801041604', '5211801041004', '5211801041603'];
+        $barcodes = 'BH08B4029E027110';
         $skus = ['BH08B4029E027110'];
         $commodityService = app(CommodityService::class);
-        $commodities=$commodityService->get_($ownerIds,$skus,[],true);
-        dd($commodities);
-
+        //$commodities=$commodityService->get_($ownerIds,$skus,[],true);
+//        dd($commodities->first());
+        $ownerId=13;
+        $sku='BH08B4029E027110';
+        $commodity=$commodityService->syncBarcodes($barcodes,$ownerId,$sku);
+        dd($commodity);
     }
 
     public function syncOrderTracking()
@@ -1314,4 +1316,20 @@ where (commodities.owner_id,commodity_barcodes.code) in (select commodities.owne
         dump((string)Carbon::now());
         dd('hendle...end');
     }
+    function testUpdateStores(){
+        $stores=Store::query()->where('stored_method','快速入库')->get();
+        $updated_at=Carbon::now()->toDateTimeString();
+        $updateParams = [[
+            'id', 'is_fast_stored','updated_at'
+        ]];
+        foreach ($stores as $store){
+            if ($store->stored_method!='快速入库') continue;
+            $updateParams[] = [
+                'id' => $store->id,
+                'is_fast_stored' =>'快速入库',
+                'updated_at' =>$updated_at,
+            ];
+        }
+        if (count($updateParams) > 1) app(BatchUpdateService::class)->batchUpdate('stores', $updateParams);
+    }
 }

+ 0 - 2
app/Http/Controllers/UserWorkgroupController.php

@@ -117,8 +117,6 @@ class UserWorkgroupController extends Controller
         if(!Gate::allows('工作组-删除')){ return redirect(url('/'));  }
         $UserWorkgroup=UserWorkgroup::with('signs')->find($id);
         app('LogService')->log(__METHOD__,__FUNCTION__,json_encode($UserWorkgroup),Auth::user()['id']);
-        $sign=$UserWorkgroup->signs;
-        $sign->delete();
         $result=$UserWorkgroup->delete();
         return ['success'=>$result];
     }

+ 38 - 61
app/Services/CommodityService.php

@@ -263,7 +263,13 @@ Class CommodityService
             }
             return $barcodes;
         })();
-        $commodity = $this->firstOrCreate(['owner_id' => $ownerId, 'sku' => $sku]);
+        //
+        $commodities=$this->get_([$ownerId],[$sku],[],true);
+        if ($commodities->first()){
+            $commodity=$commodities->first();
+        }else{
+            $commodity = $this->firstOrCreate(['owner_id' => $ownerId, 'sku' => $sku]);
+        }
         $commodityBarcodes = $commodity['barcodes'] ?? new Collection();
 
 
@@ -381,9 +387,9 @@ Class CommodityService
     public function getCommodityByOwnerCodeAndSKU($ownerCode, $sku)
     {
         $commodity_key = "owner_code_{$ownerCode}_sku_{$sku}";
-        return Cache::remember($commodity_key,config('cache.expirations.forever'),function()use($ownerCode,$sku){
-            $commodity = Commodity::query()->where('sku',$sku)->whereHas('owner',function($query)use($ownerCode){
-                $query->where('code',$ownerCode);
+        return Cache::remember($commodity_key, config('cache.expirations.forever'), function () use ($ownerCode, $sku) {
+            $commodity = Commodity::query()->where('sku', $sku)->whereHas('owner', function ($query) use ($ownerCode) {
+                $query->where('code', $ownerCode);
             })->first();
             if (isset($commodity)) return $commodity;
             $basSKu = app('OracleBasSkuService')->first(['sku' => $sku, 'customerid' => $ownerCode]);
@@ -420,13 +426,10 @@ Class CommodityService
         $last_time = $basSkus->first()['addtime'];
         $last_records = $basSkus->where('addtime', $last_time);
         if (!$basSkus) return;
-        $addBasSkus = $this->getLastRecordsByRedis($create_set, $create_key, $basSkus);
-        if (count($addBasSkus) > 0) {
-            $this->syncCreateCommodity($addBasSkus);
+            $this->syncCreateCommodity($basSkus);
             $this->deleteCacheKey($create_set, $create_keys);
             $this->setLastRecordsByRedis($create_key, $create_set, $create_keys, $last_records);
             $this->setAsnLastSyncAt($created_at, $last_time);
-        }
     }
 
     public function syncCommodityUpdated()
@@ -442,13 +445,10 @@ Class CommodityService
         $last_time = $basSkus->first()['edittime'];
         $last_records = $basSkus->where('edittime', $last_time);
         if (!$basSkus) return;
-        $addBasSkus = $this->getLastRecordsByRedis($update_set, $update_key, $basSkus);
-        if (count($addBasSkus) > 0) {
-            $this->syncUpdateCommodity($addBasSkus);
+            $this->syncUpdateCommodity($basSkus);
             $this->deleteCacheKey($update_set, $update_keys);
             $this->setLastRecordsByRedis($update_key, $update_set, $update_keys, $last_records);
             $this->setAsnLastSyncAt($updated_at, $last_time);
-        }
     }
 
     public function syncCreateCommodity($addBasSkus)
@@ -464,18 +464,18 @@ Class CommodityService
 
     public function insertCommodities($insert_params)
     {
-        if (count($insert_params)<1) return;
-        $ownerIds=array_unique(data_get($insert_params,'*.owner_id'));
+        if (count($insert_params) < 1) return;
+        $ownerIds = array_unique(data_get($insert_params, '*.owner_id'));
         sort($ownerIds);
-        $skus=array_unique(data_get($insert_params,'*.sku'));
+        $skus = array_unique(data_get($insert_params, '*.sku'));
         sort($skus);
         try {
             $bool = Commodity::query()->insert($insert_params);
             if ($bool) {
                 app('LogService')->log(__METHOD__, __FUNCTION__, "批量添加 Commodity Success " . count($insert_params) . ' || ' . json_encode($insert_params));
-                $commodities = Commodity::query()->with('owner')->whereIn('owner_id',$ownerIds)->whereIn('sku',$skus)->get();
+                $commodities = Commodity::query()->with('owner')->whereIn('owner_id', $ownerIds)->whereIn('sku', $skus)->get();
                 $md5 = md5(json_encode([$skus, $ownerIds]));
-                if (Cache::has('commodity_'.$md5)) Cache::forget('commodity_'.$md5);
+                if (Cache::has('commodity_' . $md5)) Cache::forget('commodity_' . $md5);
                 $this->pushToCache($commodities);
             } else app('LogService')->log(__METHOD__, __FUNCTION__, "批量添加 Commodity FAILED " . ' || ' . json_encode($insert_params));
         } catch (\Exception $e) {
@@ -652,9 +652,6 @@ Class CommodityService
         }
         if (count($insert_params) > 0) $this->insertCommodities($insert_params);
         if (count($updateParams) > 0) $this->updateCommodities($updateParams);
-//        if (count($updateParams) > 0) $this->batchUpdate($updateParams);
-//        $commodities = Commodity::query()->with('owner')->whereIn('owner_id', data_get($updateParams, '*.owner_id'))->whereIn('sku', data_get($updateParams, '*.sku'))->get();
-//        $this->pushToCache($commodities);
         /** @var CommodityBarcodeService $commodityBarcodeService */
         $commodityBarcodeService = app(CommodityBarcodeService::class);
         $commodityBarcodeService->updateBarcodeByWms($addBasSkus);
@@ -665,7 +662,7 @@ Class CommodityService
         if (count($commodities) < 1) return null;
         foreach ($commodities as $commodity) {
             $commodity_key = "owner_code_{$commodity['owner']['code']}_sku_{$commodity['sku']}";
-            Cache::put($commodity_key,$commodity);
+            Cache::put($commodity_key, $commodity);
         }
     }
 
@@ -694,20 +691,6 @@ Class CommodityService
         LogService::log(__METHOD__, __FUNCTION__, '修改或更新' . $key . json_encode($asnLastSyncAt));
         return $asnLastSyncAt;
     }
-
-    public function getLastRecordsByRedis($set, $prefixKey, $basSkus)
-    {
-        if (Cache::get($set)) {
-            $addBasSkus = collect();
-            foreach ($basSkus as $basSku) {
-                if (Cache::get($prefixKey . $basSku->customerid . '_' . $basSku->sku)) continue;
-                $addBasSkus->add($basSku);
-            }
-            return $addBasSkus;
-        }
-        return $basSkus;
-    }
-
     public function deleteCacheKey($set, $keys)
     {
         if (Cache::get($set)) {
@@ -733,15 +716,15 @@ Class CommodityService
 
     function updateCommodities($updateParams)
     {
-        if (count($updateParams) <1) return;
-        $ownerIds=array_unique(data_get($updateParams,'*.owner_id'));
+        if (count($updateParams) < 1) return;
+        $ownerIds = array_unique(data_get($updateParams, '*.owner_id'));
         sort($ownerIds);
-        $skus=array_unique(data_get($updateParams,'*.sku'));
+        $skus = array_unique(data_get($updateParams, '*.sku'));
         sort($skus);
         $this->batchUpdate($updateParams);
         $md5 = md5(json_encode([$skus, $ownerIds]));
-        if (Cache::has('commodity_'.$md5)) Cache::forget('commodity_'.$md5);
-        $commodities = Commodity::query()->with('owner')->whereIn('owner_id',$ownerIds)->whereIn('sku',$skus)->get();
+        if (Cache::has('commodity_' . $md5)) Cache::forget('commodity_' . $md5);
+        $commodities = Commodity::query()->with('owner')->whereIn('owner_id', $ownerIds)->whereIn('sku', $skus)->get();
         $this->pushToCache($commodities);
     }
 
@@ -752,11 +735,11 @@ Class CommodityService
      * @param array $skus
      * @param array $barcodes
      * @param bool $isSyncWms 是否开启同步wms数据  开启则必须给定 $ownerIds 和 $skus
-     * @param int $paginate
+     * @param int $paginate   分页只对  货主$ownerIds 条件
      * @param int $page
      * @return \Illuminate\Contracts\Pagination\LengthAwarePaginator|mixed|null
      */
-    function get_(array $ownerIds = [], array $skus = [], array $barcodes = [],$isSyncWms = false, $paginate = 100, $page = 1)
+    function get_(array $ownerIds = [], array $skus = [], array $barcodes = [], $isSyncWms = false, $paginate = 100, $page = 1)
     {
         if ($paginate < 100 || fmod($paginate, 100) != 0) return null; //$paginate小于100,或取余数100不为0,异常 //取余函数fmod()
         $time = config('cache.expirations.forever');
@@ -778,25 +761,22 @@ Class CommodityService
                     }
                     $bas_skus = OracleBasSKU::query()
                         ->select('customerid', 'sku', 'descr_c', 'alternate_sku1', 'alternate_sku2', 'alternate_sku3', 'skulength', 'skuwidth', 'skuhigh', 'cube', 'packid', 'addtime', 'edittime')
-                        ->whereIn('customerid',$ownerCodes)->whereIn('sku',$skus)
+                        ->whereIn('customerid', $ownerCodes)->whereIn('sku', $skus)
                         ->get();
                     if (!$bas_skus) return null;
                     $this->syncUpdateCommodity($bas_skus);
                 }
                 sort($skus);
                 //在取出的记录用 $ownerIds和$barcodes筛选
-                $sku_md5 = md5(json_encode([$skus]));
-                $commodities = Cache::remember('commodity_' . $sku_md5, $time, function () use ($skus) {
-                    return Commodity::query()
-                        ->with(['barcodes', 'owner'])
-                        ->whereIn('sku', $skus)->get();
-                });
+                $commodities = Commodity::query()
+                    ->with(['barcodes', 'owner'])
+                    ->whereIn('sku', $skus)->get();
                 if ($ownerIds) {
                     sort($ownerIds);
-                    $md5 = md5(json_encode([$skus, $ownerIds]));
-                    return Cache::remember('commodity_' . $md5, $time, function () use ($skus, $ownerIds, $commodities) {
+//                    $md5 = md5(json_encode([$skus, $ownerIds]));
+//                    return Cache::remember('commodity_' . $md5, $time, function () use ($skus, $ownerIds, $commodities) {
                         return $commodities->whereIn('owner_id', $ownerIds);
-                    });
+//                    });
                 }
                 if ($barcodes && !$ownerIds) {
                     sort($barcodes);
@@ -814,14 +794,11 @@ Class CommodityService
 
             case $status == '有条码没SKU':
                 sort($barcodes);
-                $barcodes_md5 = md5(json_encode([$barcodes]));
-                $commodities = Cache::remember('commodity_' . $barcodes_md5, $time, function () use ($barcodes) {
-                    return Commodity::query()
-                        ->with(['barcodes', 'owner'])
-                        ->whereHas('barcodes', function ($query) use ($barcodes) {
-                            $query->whereIn('code', $barcodes);
-                        })->get();
-                });
+                $commodities = Commodity::query()
+                    ->with(['barcodes', 'owner'])
+                    ->whereHas('barcodes', function ($query) use ($barcodes) {
+                        $query->whereIn('code', $barcodes);
+                    })->get();
                 if ($ownerIds) {
                     sort($ownerIds);
                     $barcodes_ownerIds_md5 = md5(json_encode([$barcodes, $ownerIds]));
@@ -841,7 +818,7 @@ Class CommodityService
                     $commodities = Commodity::query()
                         ->with(['barcodes', 'owner'])
                         ->whereIn('owner_id', $ownerIds)
-                        ->orderBy('owner_id','asc')
+                        ->orderBy('owner_id', 'asc')
                         ->paginate($paginate, '*', 'page', $page);
                     Cache::add($key, $commodities->items());
                     return $commodities;

+ 3 - 1
app/Services/RejectedBillService.php

@@ -106,6 +106,7 @@ Class RejectedBillService
                 ];
             } else {
                 preg_match("/[a-zA-Z]{0,5}\d{6,20}/", $data->notes, $result);
+                if (count($result)<1) continue;
                 $rejectedBill = $dataHandlerService->getKeyValue(['logistic_number_return' => $result[0]], $rejectedBills_map);
                 if ($rejectedBill && $rejectedBill->is_loaded != 1) $updateParams[] = [
                     'logistic_number_return' => $result[0],
@@ -123,7 +124,8 @@ Class RejectedBillService
         foreach ($asnHerders as $asnHerder) {
             if (($asnHerder->asnType->codename_c == '退货入库'
                     || $asnHerder->asnType->codename_c == '其他入库')
-                && $asnHerder->asnStatus->codename_c == '完全收货') {
+                && ($asnHerder->asnStatus->codename_c == '已入库'
+                    ||$asnHerder->asnStatus->codename_c == 'ASN关闭')) {
                 $updateCollect->add($asnHerder);
             }
         }

+ 4 - 4
app/Services/StoreItemService.php

@@ -23,12 +23,12 @@ Class StoreItemService
         $this->createStoreItem($asnDetails);
     }
 
-    public function storeItemUpdateByWms($asnHerders,$KSRK)
+    public function storeItemUpdateByWms($asnHerders)
     {
         if (!$asnHerders) return null;
-        if (count($KSRK)>0) $asnHerders=$asnHerders->filter(function ($asnHerder)use($KSRK){
-            return !in_array($asnHerder->asnno,$KSRK);
-        });
+//        if (count($KSRK)>0) $asnHerders=$asnHerders->filter(function ($asnHerder)use($KSRK){
+//            return !in_array($asnHerder->asnno,$KSRK);
+//        });
         $asnDetails = $this->getAsnDetailsByAsnHerder($asnHerders);
         $this->updateStoreItem($asnDetails);
     }

+ 44 - 63
app/Services/StoreService.php

@@ -54,13 +54,10 @@ Class StoreService
         $last_time = $asnHerders->first()['addtime'];
         $last_records = $asnHerders->where('addtime', $last_time);
         if (!$asnHerders) return;
-        $addAsnHerders = $this->getLastRecordsByRedis($create_set, $create_key, $asnHerders);
-        if (count($addAsnHerders) > 0) {
-            $this->createStore($addAsnHerders);
-            $this->deleteCacheKey($create_set, $create_keys);
-            $this->setLastRecordsByRedis($create_key, $create_set, $create_keys, $last_records);
-            $this->setAsnLastSyncAt($created_at, $last_time);
-        }
+        $this->createStore($asnHerders);
+        $this->deleteCacheKey($create_set, $create_keys);
+        $this->setLastRecordsByRedis($create_key, $create_set, $create_keys, $last_records);
+        $this->setAsnLastSyncAt($created_at, $last_time);
     }
 
     public function storeUpdateByWms()
@@ -77,14 +74,11 @@ Class StoreService
         $last_time = $asnHerders->first()['edittime'];
         $last_records = $asnHerders->where('edittime', $last_time);
         if (!$asnHerders) return;
-        $addAsnHerders = $this->getLastRecordsByRedis($update_set, $update_key, $asnHerders);
-        if (count($addAsnHerders) > 0) {
-            $this->createStore($addAsnHerders);
-            $this->updateStore($addAsnHerders);
-            $this->deleteCacheKey($update_set, $update_keys);
-            $this->setLastRecordsByRedis($update_key, $update_set, $update_keys, $last_records);
-            $this->setAsnLastSyncAt($updated_at, $last_time);
-        }
+        $this->createStore($asnHerders);
+        $this->updateStore($asnHerders);
+        $this->deleteCacheKey($update_set, $update_keys);
+        $this->setLastRecordsByRedis($update_key, $update_set, $update_keys, $last_records);
+        $this->setAsnLastSyncAt($updated_at, $last_time);
     }
 
     public function createStore($asnHerders)
@@ -137,9 +131,9 @@ Class StoreService
             if ($store_asn_code_map[$asnHerder->asnno] ?? false) continue;
             $owner = $owners_code_map[$asnHerder->customerid] ?? null;
             $warehouse = $warehouses_code_map[$asnHerder->warehouseid] ?? null;
-            $status=null;
-            if ($asnHerder->asnStatus && $asnHerder->asnStatus->codename_c=='完全收货') $status='已入库';
-            if ($asnHerder->asnStatus && $asnHerder->asnStatus->codename_c=='订单创建') $status='未入库';
+            $status = null;
+            if ($asnHerder->asnStatus && $asnHerder->asnStatus->codename_c == '完全收货') $status = '已入库';
+            if ($asnHerder->asnStatus && $asnHerder->asnStatus->codename_c == '订单创建') $status = '未入库';
             $params[] = [
                 'asn_code' => $asnHerder->asnno,
                 'warehouse_id' => $warehouse->id ?? null,
@@ -193,21 +187,21 @@ Class StoreService
         $updateParams = [[
             'id', 'asn_code', 'warehouse_id', 'owner_id', 'stored_method', 'status', 'remark', 'updated_at'
         ]];
-        $KSRK=[];
+//        $KSRK = [];
         foreach ($asnHerders as $asnHerder) {
             $store = $dataHandlerService->getKeyValue(['asn_code' => $asnHerder->asnno], $store_asn_code_map);
             if (!$store) continue;
-            if ($store&&$store->stored_method=='快速入库'){
-                array_push($KSRK,$store['asn_code']);
-                continue;
-            }
+//            if ($store && $store->stored_method == '快速入库') {
+//                array_push($KSRK, $store['asn_code']);
+//                continue;
+//            }
             $owner = $dataHandlerService->getKeyValue(['code' => $asnHerder->customerid], $owner_code_map);
             $warehouse = $dataHandlerService->getKeyValue(['code' => $asnHerder->warehouseid], $warehouses_map);
             $owner_id = $owner->id ?? null;
             $warehouse_id = $warehouse->id ?? null;
-            $status=null;
-            if ($asnHerder->asnStatus && $asnHerder->asnStatus->codename_c=='完全收货') $status='已入库';
-            if ($asnHerder->asnStatus && $asnHerder->asnStatus->codename_c=='订单创建') $status='未入库';
+            $status = null;
+            if ($asnHerder->asnStatus && $asnHerder->asnStatus->codename_c == '完全收货') $status = '已入库';
+            if ($asnHerder->asnStatus && $asnHerder->asnStatus->codename_c == '订单创建') $status = '未入库';
             if ($store->asn_code != $asnHerder->asnno ||
                 $store->warehouse_id != $warehouse_id ||
                 $store->owner_id != $owner_id ||
@@ -229,7 +223,7 @@ Class StoreService
         if (count($updateParams) > 1) $this->batchUpdate($updateParams);
         /** @var StoreItemService $storeItemService */
         $storeItemService = app(StoreItemService::class);
-        $storeItemService->storeItemUpdateByWms($asnHerders,$KSRK);
+        $storeItemService->storeItemUpdateByWms($asnHerders);
         /** @var RejectedBillService $rejectedBillService */
         $rejectedBillService = app(RejectedBillService::class);
         $rejectedBillService->syncLoadedStatusByAsnHerder($asnHerders);
@@ -281,19 +275,6 @@ Class StoreService
         return $asnLastSyncAt;
     }
 
-    public function getLastRecordsByRedis($set, $prefixKey, $asnHerders)
-    {
-        if (Cache::get($set)) {
-            $addAsnHerders = collect();
-            foreach ($asnHerders as $asnHerder) {
-                if (Cache::get($prefixKey . $asnHerder->customerid . '_' . $asnHerder->asnno)) continue;
-                $addAsnHerders->add($asnHerder);
-            }
-            return $addAsnHerders;
-        }
-        return $asnHerders;
-    }
-
     public function deleteCacheKey($set, $keys)
     {
         if (Cache::get($set)) {
@@ -308,40 +289,40 @@ Class StoreService
 
     public function setLastRecordsByRedis($prefixKey, $set, $keys, $last_records)
     {
-            $cacheKeys = [];
-            foreach ($last_records as $last_record) {
-                Cache::put($prefixKey . $last_record->customerid . '_' . $last_record->asnno, true);
-                array_push($cacheKeys, $prefixKey . $last_record->customerid . '_' . $last_record->asnno);
-            }
-            Cache::put($keys, $cacheKeys);
-            Cache::put($set, true);
+        $cacheKeys = [];
+        foreach ($last_records as $last_record) {
+            Cache::put($prefixKey . $last_record->customerid . '_' . $last_record->asnno, true);
+            array_push($cacheKeys, $prefixKey . $last_record->customerid . '_' . $last_record->asnno);
+        }
+        Cache::put($keys, $cacheKeys);
+        Cache::put($set, true);
     }
 
-    public function createInstantBill(Store $store):bool
+    public function createInstantBill(Store $store): bool
     {
-        if (!$store || $store->status!="已入库")return false;
-        if (!$store->storeItems)$store->load("storeItems");
+        if (!$store || $store->status != "已入库") return false;
+        if (!$store->storeItems) $store->load("storeItems");
 
 
         /** @var OwnerPriceOperationService $service */
         $service = app("OwnerPriceOperationService");
 
-        $mapping = ["packages"=>"storeItems","商品名称"=>"name","订单类型"=>"stored_method"];
+        $mapping = ["packages" => "storeItems", "商品名称" => "name", "订单类型" => "stored_method"];
 
-        $work_fee = $service->matchRule($store,$mapping,$store->owner_id,"入库");
-        if ($work_fee < 0)$work_fee = null;
+        $work_fee = $service->matchRule($store, $mapping, $store->owner_id, "入库");
+        if ($work_fee < 0) $work_fee = null;
 
         if (app("OwnerFeeDetailService")->create([
-            "owner_id"          => $store->owner_id,
-            "worked_at"         => $store->created_at,
-            "type"              => "收货",
-            "operation_bill"    => $store->asn_code,
-            "commodity_amount"  => array_sum(array_column($store->storeItems->toArray(),"amount")),
-            "work_fee"          => $work_fee,
-            "created_at"        => date('Y-m-d H:i:s'),
-            "outer_id"          => $store->id,
-            "outer_table_name"  => "stores",
-        ]))return true;
+            "owner_id" => $store->owner_id,
+            "worked_at" => $store->created_at,
+            "type" => "收货",
+            "operation_bill" => $store->asn_code,
+            "commodity_amount" => array_sum(array_column($store->storeItems->toArray(), "amount")),
+            "work_fee" => $work_fee,
+            "created_at" => date('Y-m-d H:i:s'),
+            "outer_id" => $store->id,
+            "outer_table_name" => "stores",
+        ])) return true;
         return false;
     }
 }

+ 1 - 1
app/Store.php

@@ -12,7 +12,7 @@ class Store extends Model
     use SoftDeletes;
 
     protected $fillable=[
-        'asn_code','warehouse_id','owner_id','stored_method','status','remark','deleted_at'
+        'asn_code','warehouse_id','owner_id','stored_method','status','remark','deleted_at','is_fast_stored'
     ];
 
 //    protected $appends=[

+ 32 - 0
database/migrations/2020_12_10_113555_add_stores_is_fast_stored_column.php

@@ -0,0 +1,32 @@
+<?php
+
+use Illuminate\Database\Migrations\Migration;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Support\Facades\Schema;
+
+class AddStoresIsFastStoredColumn extends Migration
+{
+    /**
+     * Run the migrations.
+     *
+     * @return void
+     */
+    public function up()
+    {
+        Schema::table('stores',function (Blueprint $table){
+            $table->enum('is_fast_stored',['无','快速入库'])->default('无')->comment('是否为快数入库');
+        });
+    }
+
+    /**
+     * Reverse the migrations.
+     *
+     * @return void
+     */
+    public function down()
+    {
+        Schema::table('stores',function (Blueprint $table){
+            $table->dropColumn('is_fast_stored');
+        });
+    }
+}

+ 1 - 1
resources/views/personnel/checking-in/importAndExportQRCode.blade.php

@@ -30,7 +30,7 @@
     </div>
 
 
-    <script src="{{ asset('js/app201009.js') }}"></script>
+    <script src="{{ asset('js/app.js') }}"></script>
     <script>
         function computeDiffMicroTime_fromNow(dateComparing) {
             let now=new Date();

+ 1 - 1
resources/views/personnel/checking-in/importAndExportSuccess.blade.php

@@ -27,7 +27,7 @@
         <h5 style="margin-top: 0;color: red">下班登出成功</h5>
     @endif
 </div>
-<script src="{{ asset('js/app201009.js') }}"></script>
+<script src="{{ asset('js/app.js') }}"></script>
 <script>
     new Vue({
         el:'#page',

+ 1 - 1
resources/views/personnel/checking-in/success.blade.php

@@ -16,7 +16,7 @@
         <h5 v-else style="margin-top: 0;color: red">等待组长确认登入,请勿关闭:<span id="_lefttime" ></span></h5>
     </div>
 </div>
-<script src="{{ asset('js/app201009.js') }}"></script>
+<script src="{{ asset('js/app.js') }}"></script>
 <script>
     new Vue({
         el:'#page',