From af27c2aa0946c633e78b2ce2cfb23116d13519be Mon Sep 17 00:00:00 2001 From: Junjie <xjj@123> Date: 星期二, 29 四月 2025 10:52:09 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/thread/SiemensCrnThread.java | 25 +++++++++++++++++++++++++ 1 files changed, 25 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/zy/core/thread/SiemensCrnThread.java b/src/main/java/com/zy/core/thread/SiemensCrnThread.java index ae1efa9..32ca91b 100644 --- a/src/main/java/com/zy/core/thread/SiemensCrnThread.java +++ b/src/main/java/com/zy/core/thread/SiemensCrnThread.java @@ -37,6 +37,9 @@ private CrnProtocol crnProtocol; private boolean resetFlag = false; + //鍘熷璁惧鏁版嵁 + private Object originDeviceData; + public SiemensCrnThread(CrnSlave slave) { this.slave = slave; } @@ -142,6 +145,7 @@ OperateResultExOne<byte[]> result = siemensNet.Read("DB101.0", (short) 56); if (result.IsSuccess) { + this.originDeviceData = result.Content; if (null == crnProtocol) { crnProtocol = new CrnProtocol(); } @@ -182,6 +186,27 @@ } } + if (System.currentTimeMillis() - crnProtocol.getDeviceDataLog() > 1000 * 5) { + if (this.originDeviceData != null) { + //閲囬泦鏃堕棿瓒呰繃5s锛屼繚瀛樹竴娆℃暟鎹褰� + //淇濆瓨鏁版嵁璁板綍 + DeviceDataLogService deviceDataLogService = SpringUtils.getBean(DeviceDataLogService.class); + if (deviceDataLogService == null) { + return; + } + DeviceDataLog deviceDataLog = new DeviceDataLog(); + deviceDataLog.setOriginData(JSON.toJSONString(this.originDeviceData)); + deviceDataLog.setWcsData(JSON.toJSONString(crnProtocol)); + deviceDataLog.setType(String.valueOf(SlaveType.Crn)); + deviceDataLog.setDeviceNo(slave.getId()); + deviceDataLog.setCreateTime(new Date()); + deviceDataLogService.insert(deviceDataLog); + + //鏇存柊閲囬泦鏃堕棿 + crnProtocol.setDeviceDataLog(System.currentTimeMillis()); + } + } + try { // 鏍规嵁瀹炴椂淇℃伅鏇存柊鏁版嵁搴� BasCrnpService basCrnpService = SpringUtils.getBean(BasCrnpService.class); -- Gitblit v1.9.1