From 64f912f0fbbf9b07f6347afa0fcc26d5c099edf3 Mon Sep 17 00:00:00 2001 From: tzsk <Administrator@qq.com> Date: 星期四, 11 四月 2024 20:06:09 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/thread/BarcodeThread.java | 27 ++++++++++++++++++++------- 1 files changed, 20 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/zy/core/thread/BarcodeThread.java b/src/main/java/com/zy/core/thread/BarcodeThread.java index 3a81562..60c83c6 100644 --- a/src/main/java/com/zy/core/thread/BarcodeThread.java +++ b/src/main/java/com/zy/core/thread/BarcodeThread.java @@ -3,12 +3,16 @@ import com.alibaba.fastjson.JSONObject; import com.core.common.Cools; import com.core.common.DateUtils; +import com.core.common.SpringUtils; +import com.zy.asrs.service.AgvBasDevpService; +import com.zy.asrs.service.BasDevpService; import com.zy.core.News; import com.zy.core.Slave; import com.zy.core.ThreadHandler; import com.zy.core.cache.OutputQueue; import lombok.Data; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import java.io.DataInputStream; import java.io.DataOutputStream; @@ -46,14 +50,24 @@ this.barcode.delete(0, this.barcode.length()); this.barcode.append(barcode); if(!Cools.isEmpty(barcode)) { + AgvBasDevpService agvBasDevpService = SpringUtils.getBean(AgvBasDevpService.class); News.info("{}鍙锋潯鐮佸櫒锛屾绱㈡暟鎹細{}", slave.getId(), this.barcode); + + String devNo = slave.getId() == 13 ? "310-1" : slave.getId() == 15 ? "312-2" : slave.getId() == 17 ? "314-1" : slave.getId() == 19 ? "316-1" : null; + if(!Cools.isEmpty(devNo)){ + barcode = barcode.substring(3,barcode.length()); + agvBasDevpService.updateBarcode(devNo,barcode); + } + News.info("{}鍙锋潯鐮佸櫒锛屾洿鏂版垚鍔�", slave.getId()); JSONObject jsonObject = new JSONObject(); jsonObject.put("time", DateUtils.convert(new Date(), DateUtils.yyyyMMddHHmmss_F)); jsonObject.put("barcode", barcode); + jsonObject.put("id", slave.getId()); if (OutputQueue.BARCODE.size() >= 32) { OutputQueue.BARCODE.poll(); } OutputQueue.BARCODE.offer(jsonObject); + } } @@ -99,22 +113,21 @@ connect(); while (true) { try { - byte[] read = read(14, 5000); + byte[] read = read(14, 15000); if (null != read) { String s = new String(read); if (!Cools.isEmpty(s)) { setBarcode(new String(read)); } - }else{ - setBarcode(""); } Thread.sleep(50); - } catch (SocketTimeoutException ignore) { - connCount++; - } catch (Exception e) { + }catch (Exception e) { setBarcode(""); - e.printStackTrace(); + log.error("run" + e); +// e.printStackTrace(); + connect(); } + } } -- Gitblit v1.9.1