From 8b6c03b3f14f1e140c2ab694f1e2a3bbc123d7f4 Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期六, 13 八月 2022 16:32:32 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/netty/handle/PackageServerHandler.java | 53 ++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 46 insertions(+), 7 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..5487114 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,48 @@
@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());
break;
case FIRE_ALARM:
+ //娑堥槻IO鐐圭紪鍙�
+ String fireNo = fire3030.getNo().toString() + fire3030.getLoop().toString() + fire3030.getPartNo().toString();
+ 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 +101,9 @@
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[] 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()
--
Gitblit v1.9.1