From e828d99f25ba6736cdb0c31128aa4d976348bcb3 Mon Sep 17 00:00:00 2001 From: tqs <56479841@qq.com> Date: 星期三, 12 十月 2022 17:39:34 +0800 Subject: [PATCH] Merge remote-tracking branch 'gitbit/gzynwcs' into gzynwcs --- src/main/java/com/zy/core/netty/handle/PackageServerHandler.java | 82 +++++++++++++++++++++++++++++++++++++---- 1 files changed, 74 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/zy/core/netty/handle/PackageServerHandler.java b/src/main/java/com/zy/core/netty/handle/PackageServerHandler.java index 52c96b9..8db7df1 100644 --- a/src/main/java/com/zy/core/netty/handle/PackageServerHandler.java +++ b/src/main/java/com/zy/core/netty/handle/PackageServerHandler.java @@ -1,6 +1,14 @@ package com.zy.core.netty.handle; +import com.baomidou.mybatisplus.mapper.EntityWrapper; +import com.core.common.DateUtils; +import com.core.common.SpringUtils; +import com.zy.asrs.entity.FireLog; +import com.zy.asrs.entity.LocMast; +import com.zy.asrs.service.FireLogService; +import com.zy.asrs.service.LocMastService; import com.zy.asrs.service.impl.MainServiceImpl; +import com.zy.asrs.utils.Utils; import com.zy.core.netty.AbstractInboundHandler; import com.zy.core.netty.cache.ChannelCache; import com.zy.core.netty.constant.Constant; @@ -13,6 +21,8 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; + +import java.util.Date; /** * 鍥芥爣涓氬姟澶勭悊handler @@ -29,17 +39,56 @@ @Override protected boolean channelRead0(ChannelHandlerContext ctx, ChPackage pac) { FireDataType dataType = FireDataType.get(pac.getBytes()[1], pac.getBytes()[2]); + Fire_3030 fire3030 = new Fire_3030().readFromBytes(pac.getBytes()); switch (dataType) { case HEARTBEAT: - Fire_3030 fire3030 = new Fire_3030().readFromBytes(pac.getBytes()); - String now = "20" + fire3030.getYear() + "-" + fire3030.getMonth() + "-" + fire3030.getDay() - + " " + fire3030.getHour() + ":" + fire3030.getMinute() + ":" + fire3030.getSeconds(); - ChannelCache.setChannel(String.valueOf(fire3030.getNo()), ctx.channel()); Constant.errorMap.remove(fire3030.getNo()); + LocMastService locMastService2 = SpringUtils.getBean(LocMastService.class); + LocMast locMast2 = locMastService2.selectOne(new EntityWrapper<LocMast>().eq("loc_no","0101804")); + if(null != locMast2) { + locMast2.setChannel(10000); + locMast2.setModiTime(new Date()); + locMastService2.update(locMast2, new EntityWrapper<LocMast>().eq("loc_no", "0101804")); + } break; case FIRE_ALARM: + //娑堥槻IO鐐圭紪鍙� +// String fireNo = fire3030.getNo().toString() + fire3030.getLoop().toString() + fire3030.getPartNo().toString(); + String fireNo =fire3030.getPartNo().toString(); //0100201 瀵瑰簲 30 31 0200201 瀵瑰簲 34 35 + String fireTime = "20" + fire3030.getYear() + "-" + fire3030.getMonth() + "-" + fire3030.getDay() + + " " + fire3030.getHour() + ":" + fire3030.getMinute() + ":" + fire3030.getSeconds(); + Date dt = DateUtils.convert(fireTime); + LocMastService locMastService = SpringUtils.getBean(LocMastService.class); + if(null != locMastService){ + //鎶ヨ淇″彿鏇存柊鍒板簱瀛樹富妗� fire_status瀛楁 + LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("fire_no",fireNo)); + if(null != locMast){ + if(locMast.getFireStatus() != 1) { + locMast.setFireStatus(1); + locMast.setModiTime(new Date()); + locMastService.update(locMast, new EntityWrapper<LocMast>().eq("fire_no", fireNo)); + } + //鎻掑叆鎶ヨ鏃ュ織璁板綍锛屽悓涓�搴撲綅鍚屼竴鎶ヨ鍙彃鍏ヤ竴娆� + FireLogService fireLogService = SpringUtils.getBean(FireLogService.class); + if(null != fireLogService){ + String ymd = "20" + fire3030.getYear() + "" + fire3030.getMonth() + "" + fire3030.getDay(); + FireLog one = fireLogService.selectOne(new EntityWrapper<FireLog>() + .eq("ymd",ymd) + .eq("fire_no",fireNo)); + if(null == one) { + FireLog fireLog = new FireLog(); + fireLog.setYmd(ymd); + fireLog.setFireNo(fireNo); + fireLog.setFireTime(dt); + fireLog.setLocNo(locMast.getLocNo()); + fireLog.setCreateTime(new Date()); + fireLogService.insert(fireLog); + } + } + } + } break; default: break; @@ -60,11 +109,29 @@ channel.writeAndFlush(chPackage); } - /******************************************************************************************/ /**************************************** 娴嬭瘯涓撶敤 *****************************************/ - /*****************************************************************************************/ public static void main(String[] args){ - byte[] bytes = new byte[]{(byte)0x82, 0x38, 0x30, 0x32, 0x34, 0x30, 0x38, 0x38, 0x3B, 0x30, 0x31, 0x31, 0x31, + byte[] rfidBytes = new byte[]{(byte)0xA0, 0x13, 0x01, (byte)0x8A, (byte)0xB6, 0x30, 0x00, + 0x38, 0x30, 0x33, 0x34, 0x35, 0x36, 0x37, (byte)0x38, 0x28, (byte)0xC3, (byte)0x81, 0x2D, (byte)0xB0, 0x2F }; + if(rfidBytes.length > 15) { + byte[] dataBytes = new byte[8]; + dataBytes[0] = rfidBytes[7]; + dataBytes[1] = rfidBytes[8]; + dataBytes[2] = rfidBytes[9]; + dataBytes[3] = rfidBytes[10]; + dataBytes[4] = rfidBytes[11]; + dataBytes[5] = rfidBytes[12]; + dataBytes[6] = rfidBytes[13]; + dataBytes[7] = rfidBytes[14]; + String str = new String(dataBytes); + String barcode = new String(rfidBytes,7,8); + System.out.println(str); + } + + String aa= "ILY0127 0001"; + byte[] byteAa = aa.getBytes(); + + byte[] bytes = new byte[]{(byte)0x82, 0x38, 0x30, 0x32, 0x34, 0x30, 0x38, 0x39, 0x3B, 0x30, 0x31, 0x31, 0x31, 0x30, 0x33, 0x30, 0x38, 0x31, 0x30, 0x30, 0x34, 0x30, 0x38, 0x38, 0x30, (byte)0x83}; Fire_3030 fire3030 = new Fire_3030().readFromBytes(bytes); String now = "20" + fire3030.getYear() + "-" + fire3030.getMonth() + "-" + fire3030.getDay() @@ -72,6 +139,5 @@ //娑堥槻IO鐐圭紪鍙� String fireNo = fire3030.getNo().toString() + fire3030.getLoop().toString() + fire3030.getPartNo().toString(); System.out.println(fireNo); - String aa=""; } } -- Gitblit v1.9.1