diff --git a/libs/encrypt/Encryptor.dll b/libs/encrypt/Encryptor.dll new file mode 100644 index 0000000..edee19a Binary files /dev/null and b/libs/encrypt/Encryptor.dll differ diff --git a/web/src/main/java/com/zhehekeji/web/controller/PLCController.java b/web/src/main/java/com/zhehekeji/web/controller/PLCController.java index ac53d0a..bc95587 100644 --- a/web/src/main/java/com/zhehekeji/web/controller/PLCController.java +++ b/web/src/main/java/com/zhehekeji/web/controller/PLCController.java @@ -7,6 +7,7 @@ import com.zhehekeji.web.entity.Street; import com.zhehekeji.web.mapper.StreetMapper; import com.zhehekeji.web.service.*; import com.zhehekeji.web.service.ksec.KsecNettyClient; +import com.zhehekeji.web.service.putian.PuTianNettyClient; import com.zhehekeji.web.service.robotic.NettyClient; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -31,6 +32,8 @@ public class PLCController { private ConfigProperties configProperties; @Resource private KsecNettyClient ksecNettyClient; + @Resource + private PuTianNettyClient puTianNettyClient; @GetMapping("/tcp") @@ -38,7 +41,7 @@ public class PLCController { public Result tcp(@RequestParam Integer id){ if(configProperties.getServerMode() == 1){ try { - ksecNettyClient.createClient(configProperties.getKsec()); + puTianNettyClient.createClient(configProperties.getKsec()); }catch (Exception e){ Assert.isTrue(false,"连接失败,ip:"+configProperties.getKsec().getIp()+",port:"+configProperties.getKsec().getPort()); } diff --git a/web/src/main/java/com/zhehekeji/web/service/client/CETransmission.java b/web/src/main/java/com/zhehekeji/web/service/client/CETransmission.java index e291630..d06acf3 100644 --- a/web/src/main/java/com/zhehekeji/web/service/client/CETransmission.java +++ b/web/src/main/java/com/zhehekeji/web/service/client/CETransmission.java @@ -28,4 +28,5 @@ public class CETransmission { } } + } diff --git a/web/src/main/java/com/zhehekeji/web/service/client/ClientChanel.java b/web/src/main/java/com/zhehekeji/web/service/client/ClientChanel.java index 00fc653..7b82b40 100644 --- a/web/src/main/java/com/zhehekeji/web/service/client/ClientChanel.java +++ b/web/src/main/java/com/zhehekeji/web/service/client/ClientChanel.java @@ -11,6 +11,7 @@ import java.net.InetSocketAddress; import java.util.HashMap; import java.util.Map; import java.util.Set; +import java.util.concurrent.ConcurrentHashMap; /** * 所有的客户端的chanel @@ -23,20 +24,20 @@ public class ClientChanel { /** * key : 巷道标识符 */ - private static Map channelMap = new HashMap<>(); + private static Map channelMap = new ConcurrentHashMap<>(); /** * key :IP * value: 巷道标识符 */ - private static Map IP_SRMNumberMap = new HashMap<>(); + private static Map IP_SRMNumberMap = new ConcurrentHashMap<>(); /** * key :巷道标识符 * value: IP */ - private static Map SRMNumber_IPMap = new HashMap<>(); + private static Map SRMNumber_IPMap = new ConcurrentHashMap<>(); public static void putIp(String ip,String ID){ IP_SRMNumberMap.put(ip,ID); @@ -63,6 +64,7 @@ public class ClientChanel { InetSocketAddress socketAddress = (InetSocketAddress) channel.remoteAddress(); String clientIp = socketAddress.getAddress().getHostAddress(); putSRMNUmber_Ip(SRMNumber, clientIp); + log.info("connect 巷道 "); } public static void disConnect(String key){ diff --git a/web/src/main/java/com/zhehekeji/web/service/client/Decoder.java b/web/src/main/java/com/zhehekeji/web/service/client/Decoder.java index c70ed5e..c1e3611 100644 --- a/web/src/main/java/com/zhehekeji/web/service/client/Decoder.java +++ b/web/src/main/java/com/zhehekeji/web/service/client/Decoder.java @@ -1,6 +1,5 @@ package com.zhehekeji.web.service.client; -import com.sun.org.apache.bcel.internal.generic.PUTFIELD; import com.zhehekeji.web.entity.Stock; import com.zhehekeji.web.service.EmptyCheckService; import com.zhehekeji.web.service.PlcService; @@ -171,6 +170,7 @@ public class Decoder extends DelimiterBasedFrameDecoder { HBTransmission hbTransmission = new HBTransmission(body); //回复客户端心跳 ctx.channel().writeAndFlush(hbTransmission.toString()); + ClientChanel.connect(hbTransmission.getSRMNumber(), ctx.channel()); //tcpLogger.info("client:{} heart", hbTransmission.getSRMNumber()); in.release(); } else if(body.startsWith(TMTransmission.getHeader())){ diff --git a/web/src/main/java/com/zhehekeji/web/service/client/HBTransmission.java b/web/src/main/java/com/zhehekeji/web/service/client/HBTransmission.java index fced57e..779812b 100644 --- a/web/src/main/java/com/zhehekeji/web/service/client/HBTransmission.java +++ b/web/src/main/java/com/zhehekeji/web/service/client/HBTransmission.java @@ -28,4 +28,9 @@ public class HBTransmission { } } + + public static void main(String[] args) { + HBTransmission ceTransmission= new HBTransmission("HB&1"); + System.out.println(ceTransmission); + } } diff --git a/web/src/main/resources/application-test.yml b/web/src/main/resources/application-test.yml index 90415ee..c53c4e8 100644 --- a/web/src/main/resources/application-test.yml +++ b/web/src/main/resources/application-test.yml @@ -7,7 +7,7 @@ spring: maxWait: 60000 minEvictableIdleTimeMillis: 300000 minIdle: 15 - password: Leaper@123 + password: root poolPreparedStatements: true testOnBorrow: true testOnReturn: false @@ -20,6 +20,10 @@ spring: # --------本服务端口号 server: port: 8099 + # 服务端IP +IP: 127.0.0.1 +# 服务端TCP端口 +serverPort: 4000 #-------------- # ------用户中心地址 userUrl: http://115.236.65.98:11001