From 83f08194fb16c5feea1b05d682120fe76d599775 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Fri, 05 Mar 2021 17:45:41 +0800
Subject: [PATCH] 体温数据接口
---
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/nettyServer/ServerHandler.java | 191 +++++++++++++++++++++++------------------------
1 files changed, 92 insertions(+), 99 deletions(-)
diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/nettyServer/ServerHandler.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/nettyServer/ServerHandler.java
index 691565b..4206e9c 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/nettyServer/ServerHandler.java
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/nettyServer/ServerHandler.java
@@ -9,6 +9,7 @@
import org.springblade.jfpt.Netty.service.nettyService;
import org.springblade.jfpt.alarm.entity.Alarm;
import org.springblade.jfpt.alarm.service.IAlarmService;
+import org.springblade.jfpt.animalheat.service.AnimalHeatService;
import org.springblade.jfpt.catalog.service.catalogService;
import org.springblade.jfpt.equipment.service.IEquipmentService;
import org.springframework.beans.factory.annotation.Autowired;
@@ -41,6 +42,9 @@
@Autowired
private IEquipmentService equipmentService;
+
+ @Autowired
+ private AnimalHeatService animalHeatService;
@Autowired
private IAlarmService alarmService;
@@ -102,146 +106,135 @@
String body = new String(req, "UTF-8");
String content = body;
System.out.println("接收客户端数据:" + body);
- String ChannelName = content.substring(10, 22);//设备编码
- String sub = content.substring(23, 27);
- ConcurrentHashMap<String, Channel> channelHashMap = ChannelMap.getChannelHashMap();
- if (channelHashMap==null){
- if (!sub.equals("VIMO")){
- // 保存当前连接
- ChannelMap.addChannel(ChannelName,channelHandlerContext.channel());
+ //获取字符串的长度
+ int length = content.length();
+ //当字符串长度大于200时,采集体温数据,小于则采集报警数据
+ if (length>200){
+ //只有数据长度大于300时,采集体温数据 200-300 之间为心跳数据,当前不采集
+ if (length>250){
+ //插入数据
+ serverHandler.animalHeatService.save(body);
}
- }
- else {
- Channel channel = ChannelMap.getChannelByName(ChannelName);
- if (channel!=channelHandlerContext.channel()|| channel==null){
- if (!sub.equals("VIMO")){
+ }else {
+ String ChannelName = content.substring(10, 22);//设备编码
+ String sub = content.substring(23, 27);
+ ConcurrentHashMap<String, Channel> channelHashMap = ChannelMap.getChannelHashMap();
+ if (channelHashMap == null) {
+ if (!sub.equals("VIMO")) {
// 保存当前连接
- ChannelMap.addChannel(ChannelName,channelHandlerContext.channel());
+ ChannelMap.addChannel(ChannelName, channelHandlerContext.channel());
+ }
+ } else {
+ Channel channel = ChannelMap.getChannelByName(ChannelName);
+ if (channel != channelHandlerContext.channel() || channel == null) {
+ if (!sub.equals("VIMO")) {
+ // 保存当前连接
+ ChannelMap.addChannel(ChannelName, channelHandlerContext.channel());
+ }
}
}
- }
- List<String> outData = new ArrayList<>();
- switch (content.substring(0, 2))
- {
- case "LA":
- {
- String devId = content.substring(10, 22);
- String fqbm = content.substring(24, 26);
- List<Map<String, Object>> list = serverHandler.equipmentService.selectInfos(devId);
- Alarm alarm= new Alarm();
- alarm.setAlarmType("一键报警");
- alarm.setGalarmPeople("报警主机");
- Date day = new Date();
- SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- alarm.setAlarmTime(df.format(day));
- alarm.setPlace((String) list.get(0).get("streeName"));//事发地址
- alarm.setDeviceNumber((String) list.get(0).get("deviceNumber"));//设备编号
- alarm.setDistrict((String) list.get(0).get("district"));//县区
- alarm.setProvince((String) list.get(0).get("province"));//市
- alarm.setCity((String) list.get(0).get("city"));
- alarm.setJd((String) list.get(0).get("jd"));//经度
- alarm.setWd((String) list.get(0).get("wd"));//纬度
- alarm.setJtype("0");
- if (fqbm.equals("00")){
- alarm.setWaringType("旁路");
- }
- else if(fqbm.equals("01")){
- alarm.setWaringType("火警");
- }
- else if(fqbm.equals("02")){
- alarm.setWaringType("挟持");
- }
- else if(fqbm.equals("03")){
- alarm.setWaringType("紧急");
- }
- else if(fqbm.equals("04")){
- alarm.setWaringType("救护");
- }
- else if(fqbm.equals("05")){
- alarm.setWaringType("内部");
- }
- else if(fqbm.equals("06")){
- alarm.setWaringType("出入");
- }
- else if(fqbm.equals("07")){
- alarm.setWaringType("周边");
- }
- else {
- alarm.setWaringType("防拆");
- }
- serverHandler.alarmService.s(alarm);
- outData.add("LEOK#@");
+ List<String> outData = new ArrayList<>();
+ switch (content.substring(0, 2)) {
+ case "LA": {
+ String devId = content.substring(10, 22);
+ String fqbm = content.substring(24, 26);
+ List<Map<String, Object>> list = serverHandler.equipmentService.selectInfos(devId);
+ Alarm alarm = new Alarm();
+ alarm.setAlarmType("一键报警");
+ alarm.setGalarmPeople("报警主机");
+ Date day = new Date();
+ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ alarm.setAlarmTime(df.format(day));
+ alarm.setPlace((String) list.get(0).get("streeName"));//事发地址
+ alarm.setDeviceNumber((String) list.get(0).get("deviceNumber"));//设备编号
+ alarm.setDistrict((String) list.get(0).get("district"));//县区
+ alarm.setProvince((String) list.get(0).get("province"));//市
+ alarm.setCity((String) list.get(0).get("city"));
+ alarm.setJd((String) list.get(0).get("jd"));//经度
+ alarm.setWd((String) list.get(0).get("wd"));//纬度
+ alarm.setJtype("0");
+ if (fqbm.equals("00")) {
+ alarm.setWaringType("旁路");
+ } else if (fqbm.equals("01")) {
+ alarm.setWaringType("火警");
+ } else if (fqbm.equals("02")) {
+ alarm.setWaringType("挟持");
+ } else if (fqbm.equals("03")) {
+ alarm.setWaringType("紧急");
+ } else if (fqbm.equals("04")) {
+ alarm.setWaringType("救护");
+ } else if (fqbm.equals("05")) {
+ alarm.setWaringType("内部");
+ } else if (fqbm.equals("06")) {
+ alarm.setWaringType("出入");
+ } else if (fqbm.equals("07")) {
+ alarm.setWaringType("周边");
+ } else {
+ alarm.setWaringType("防拆");
+ }
+ serverHandler.alarmService.s(alarm);
+ outData.add("LEOK#@");
- break;
- }
- case "LD":
- {
+ break;
+ }
+ case "LD": {
// if (Pattern.matches(content, reg_LD))
- String deviceNumber = content.substring(10, 22);
+ String deviceNumber = content.substring(10, 22);
String keyword = content.substring(23, 27);
System.out.println(keyword);
- switch(keyword)
- {
- case "IMEI":
- {
+ switch (keyword) {
+ case "IMEI": {
Date d = new Date();
SimpleDateFormat sbf = new SimpleDateFormat("MMddHHmm");
outData.add("LC8C0470" + sbf.format(d) + "#@" + "LEOK#@");
outData.add("LEOK#@");
break;
}
- case "SRTC":
- {
+ case "SRTC": {
Date d = new Date();
SimpleDateFormat sbf = new SimpleDateFormat("yyyyMMddHHmmss");
outData.add("LEOK#@");
outData.add("LC8C0700" + sbf.format(d) + "#@");
break;
}
- case "STAS":
- {
+ case "STAS": {
outData.add("LEOK#@");
- outData.add("LC8100001E"+ "#@");
+ outData.add("LC8100001E" + "#@");
break;
}
- case "TEST":
- {
+ case "TEST": {
Date d = new Date();
SimpleDateFormat sbf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String format = sbf.format(d);
- serverHandler.equipmentService.updateChannel(format,deviceNumber);
+ serverHandler.equipmentService.updateChannel(format, deviceNumber);
outData.add("LEOK#@");
outData.add("LEON#@");
break;
}
- case "COMM":
- {
+ case "COMM": {
outData.add("LEOK#@");
break;
}
- default:
- {
+ default: {
outData.add("LEOK#@");
break;
}
}
- break;
- }
- case "LB":
- {
+ break;
+ }
+ case "LB": {
outData.add("LEOK#@");
- break;
+ break;
+ }
}
- }
- if(outData.size() == 0)
- {
- outData.add("LERR#@");
- }
- for (int i = 0; i < outData.size(); i++)
- {
- channelHandlerContext.writeAndFlush(Unpooled.copiedBuffer(outData.get(i), CharsetUtil.UTF_8));
+ if (outData.size() == 0) {
+ outData.add("LERR#@");
+ }
+ for (int i = 0; i < outData.size(); i++) {
+ channelHandlerContext.writeAndFlush(Unpooled.copiedBuffer(outData.get(i), CharsetUtil.UTF_8));
+ }
}
--
Gitblit v1.9.3