ソースを参照

大王椰出入库

cqpCow 1 年間 前
コミット
2dba984578
2 ファイル変更8 行追加3 行削除
  1. 6 1
      app/Jobs/DoorDeviceJob.php
  2. 2 2
      app/Service/InOutOptionService.php

+ 6 - 1
app/Jobs/DoorDeviceJob.php

@@ -47,7 +47,12 @@ class DoorDeviceJob implements ShouldQueue
             $type = $this->type;//1 入库 2 出库
             $order_number = [];
             foreach ($epc as $value){
-                $order_number[] = hex2bin($value); //十六进制字符串转回 原来字符串
+                $str = @hex2bin($value);
+                $str = ltrim($str, "\x00");
+                if(! empty($str) && substr($str, 0, 2) === "BZ"){
+                    if(! in_array($str, $order_number)) $order_number[] = $str; // 十六进制字符串转回原来字符串
+                }
+//                $order_number[] = hex2bin($value); //十六进制字符串转回 原来字符串
             }
             file_put_contents('record_door_result.txt',date("Y-m-d H:i:s",time())."原数据:".json_encode($epc) . "解析后:" . json_encode($order_number) .PHP_EOL.'start'.PHP_EOL,8);
             if(empty($order_number)) {

+ 2 - 2
app/Service/InOutOptionService.php

@@ -14,10 +14,10 @@ class InOutOptionService extends Service
 
     public function setOrderNumber($data){
         if(! empty($data['data']['tagList'])){
-            $in = $out = [];$site = "";
+            $in = $out = [];
             $device_id = $data['data']['id'] ?? 0; //设备id
+            $site = $data['data']['devMark'] ?? ""; //站点
             foreach ($data['data']['tagList'] as $value){
-                if(empty($site)) $site = $value['remark'] ?? ""; //配置成站点
                 if($value['direction'] == '1'){
                     //(判断到有发货出库的入库标识 存入缓存)
                     if(Redis::exists($device_id . self::Key)){