From b67f13b04339ac0cd1a10b07d58e9c30c53b97a2 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期三, 03 四月 2024 15:04:39 +0800 Subject: [PATCH] # --- zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayShuttleThread.java | 38 +++++++++++++++++++++----------------- 1 files changed, 21 insertions(+), 17 deletions(-) diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayShuttleThread.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayShuttleThread.java index 5986a9b..75dd1fd 100644 --- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayShuttleThread.java +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayShuttleThread.java @@ -16,8 +16,11 @@ import com.zy.asrs.wcs.core.utils.NavigateUtils; import com.zy.asrs.wcs.rcs.News; import com.zy.asrs.wcs.rcs.cache.OutputQueue; +import com.zy.asrs.wcs.rcs.entity.DeviceDataLog; import com.zy.asrs.wcs.rcs.model.enums.ShuttleProtocolStatusType; +import com.zy.asrs.wcs.rcs.model.enums.SlaveType; import com.zy.asrs.wcs.rcs.model.protocol.ShuttleProtocol; +import com.zy.asrs.wcs.rcs.service.DeviceDataLogService; import com.zy.asrs.wcs.rcs.thread.ShuttleThread; import com.zy.asrs.wcs.core.utils.RedisUtil; import com.zy.asrs.wcs.rcs.entity.Device; @@ -106,14 +109,14 @@ //鏄惁椤跺崌 shuttleProtocol.setHasLift(data.getInteger("palletStatus") == 1 ? true : false); //鏄惁鏈夋墭鐩� - shuttleProtocol.setHasPallet(data.getInteger("hasPallet") != 2 ? true : false); + shuttleProtocol.setHasPallet(data.getInteger("hasPallet") == null ? true : data.getInteger("hasPallet") != 2 ? true : false); //琛岄┒鏂瑰悜 shuttleProtocol.setRunDirection(data.getString("direction") == null ? "none" : data.getString("direction")); //鏄惁涓哄厖鐢电姸鎬� shuttleProtocol.setHasCharge((deviceStatus == 5 || deviceStatus == 13) ? true : false); //*********璇诲彇鎵╁睍瀛楁********** - InnerSuhttleExtend extend = JSON.parseObject(JSON.toJSONString(shuttleProtocol.getExtend()), InnerSuhttleExtend.class); + InnerSuhttleExtend extend = (InnerSuhttleExtend) shuttleProtocol.getExtend(); extend.setMapVersion(data.getString("version"));//鍦板浘鐗堟湰 extend.setStatusDescription(data.getString("statusDescription"));//鐘舵�佹弿杩� shuttleProtocol.setExtend(extend);//鎵╁睍瀛楁 @@ -130,21 +133,22 @@ // shuttleProtocol.setProtocolStatusType(ShuttleProtocolStatusType.IDLE); // } -// if (System.currentTimeMillis() - shuttleProtocol.getDeviceDataLog() > 1000 * 5) { -// //閲囬泦鏃堕棿瓒呰繃5s锛屼繚瀛樹竴娆℃暟鎹褰� -// //淇濆瓨鏁版嵁璁板綍 -// DeviceDataLogService deviceDataLogService = SpringUtils.getBean(DeviceDataLogService.class); -// DeviceDataLog deviceDataLog = new DeviceDataLog(); -// deviceDataLog.setOriginData(Base64.getEncoder().encodeToString(result.Content)); -// deviceDataLog.setWcsData(JSON.toJSONString(shuttleProtocol)); -// deviceDataLog.setType("shuttle"); -// deviceDataLog.setDeviceNo(shuttleProtocol.getShuttleNo().intValue()); -// deviceDataLog.setCreateTime(new Date()); -// deviceDataLogService.insert(deviceDataLog); -// -// //鏇存柊閲囬泦鏃堕棿 -// shuttleProtocol.setDeviceDataLog(System.currentTimeMillis()); -// } + if (System.currentTimeMillis() - shuttleProtocol.getDeviceDataLog() > 1000 * 5) { + //閲囬泦鏃堕棿瓒呰繃5s锛屼繚瀛樹竴娆℃暟鎹褰� + //淇濆瓨鏁版嵁璁板綍 + DeviceDataLogService deviceDataLogService = SpringUtils.getBean(DeviceDataLogService.class); + DeviceDataLog deviceDataLog = new DeviceDataLog(); + deviceDataLog.setOriginData(JSON.toJSONString(data)); + deviceDataLog.setWcsData(JSON.toJSONString(shuttleProtocol)); + deviceDataLog.setType(String.valueOf(SlaveType.Shuttle)); + deviceDataLog.setDeviceNo(String.valueOf(shuttleProtocol.getShuttleNo())); + deviceDataLog.setCreateTime(new Date()); + deviceDataLog.setHostId(device.getHostId()); + deviceDataLogService.save(deviceDataLog); + + //鏇存柊閲囬泦鏃堕棿 + shuttleProtocol.setDeviceDataLog(System.currentTimeMillis()); + } } else { OutputQueue.SHUTTLE.offer(MessageFormat.format("銆恵0}銆憑1}璇诲彇鍥涘悜绌挎杞︾姸鎬佷俊鎭け璐�", DateUtils.convert(new Date()), device.getDeviceNo())); throw new CoolException(MessageFormat.format("璇诲彇鍥涘悜绌挎杞︾姸鎬佷俊鎭け璐� ===>> [id:{0}] [ip:{1}] [port:{2}]", device.getDeviceNo(), device.getIp(), device.getPort())); -- Gitblit v1.9.1