Browse Source

conflict

master
zhizhi wu 5 years ago
parent
commit
352897c811
  1. 36
      ccmq/src/main/java/com/ccsens/ccmq/lowlevel/message/MessageHandler.java
  2. 1
      ccmq/src/main/java/com/ccsens/ccmq/lowlevel/message/client/AuthMessage.java
  3. 26
      ccmq/src/main/java/wiki/tall/ccmq/common/util/ImgUtil.java
  4. 2
      ccmq/src/main/resources/application-prod.properties
  5. 6
      eureka/pom.xml

36
ccmq/src/main/java/com/ccsens/ccmq/lowlevel/message/MessageHandler.java

@ -277,15 +277,18 @@ public class MessageHandler {
AuthMessage inSysData = JacksonUtil.jsonToBean(data, AuthMessage.class);
if(null != inSysData.getData()){
if(StrUtil.isNotEmpty(inSysData.getData().getToken())) {
logger.info("token授权");
String userId = getUserService().getUserIdByToken(inSysData.getData().getToken());
if(StrUtil.isNotEmpty(inSysData.getData().getToken()) || StrUtil.isNotEmpty(inSysData.getData().getUserId())) {
String userId = inSysData.getData().getUserId();
if(StrUtil.isEmpty(userId)){
userId = getUserService().getUserIdByToken(inSysData.getData().getToken());
}
if(StrUtil.isNotEmpty(userId)){
ChannelManager.authChannel(ChannelManager.getCurrentChannel(),userId,inSysData.getData().getMajor(),inSysData.getData().getMinor(), inSysData.getMessage());
onClientOnLine(MessageConstant.DomainType.User,userId);
authSuccess = true;
}
} else if (inSysData.getData().getAuthId() != null) {
//硬件授权
logger.info("authid授权");
// authId有值默认授权通过
ChannelManager.authChannel(ChannelManager.getCurrentChannel(),String.valueOf(inSysData.getData().getAuthId()),inSysData.getData().getMajor(),inSysData.getData().getMinor(), inSysData.getMessage());
@ -450,7 +453,7 @@ public class MessageHandler {
}
case CCModBusEntity.Oper.WRITE_MORE : {
// 写多个寄存器
// 2. 如果是写操作且值发生改变,放到mq里
// 2. 如果是写操作,放到mq里
byte[] modBusData = modBusMessage.getData().getModBusData();
// 读起始寄存器地址
int startAddr = CCModBusEntity.getRegisterStartAddr(modBusData);
@ -459,6 +462,7 @@ public class MessageHandler {
Map<String, Long> register = wrapperedChannel.getRegister();
// 授权数据
Long authId = register.get(String.valueOf(MessageConstant.Register.Auth.getAddr()));
OutMessageSet set = new OutMessageSet();
for (int i = 0; i < num; i++) {
// 寄存器的原始数据
Long origin = register.get(String.valueOf(startAddr));
@ -471,20 +475,20 @@ public class MessageHandler {
if (origin == null || origin.longValue() != value) {
register.put(String.valueOf(startAddr), value);
logger.info("寄存器数据:{}", register);
// 数据不一致,放到消息队列里
Register register1 = new Register();
register1.setAuthId(authId);
register1.setAddr(startAddr+i);
register1.setValue(value);
OutMessage outMessage1 = new OutMessage(JacksonUtil.beanToJson(register1));
OutMessageSet set = new OutMessageSet();
set.add(outMessage1);
messageHandler.rabbitTemplate.convertAndSend("wisdom_car",
JacksonUtil.beanToJson(set));
logger.info("modbus通知mq:{}", set);
}
// 放到消息队列里
Register register1 = new Register();
register1.setAuthId(authId);
register1.setAddr(startAddr+i);
register1.setValue(value);
OutMessage outMessage1 = new OutMessage(JacksonUtil.beanToJson(register1));
set.add(outMessage1);
}
if (CollectionUtil.isEmpty(set.getMessageSet())) {
messageHandler.rabbitTemplate.convertAndSend("wisdom_car",
JacksonUtil.beanToJson(set));
logger.info("modbus通知mq:{}", set);
}
// 3. 封装返回值
outMessage = new OutMessage(JacksonUtil.beanToJson(new ModBusAckMessage(modBusData)));

1
ccmq/src/main/java/com/ccsens/ccmq/lowlevel/message/client/AuthMessage.java

@ -17,6 +17,7 @@ public class AuthMessage extends ServerMessage {
public static class Data{
private String token;
private Long authId;
private String userId;
// 主版本号
private int major;
// 此版本号

26
ccmq/src/main/java/wiki/tall/ccmq/common/util/ImgUtil.java

@ -1,13 +1,13 @@
package wiki.tall.ccmq.common.util;
import sun.font.FontDesignMetrics;
import java.awt.*;
public class ImgUtil {
public static int getStringWidth(String text,Font f){
FontMetrics fm = FontDesignMetrics.getMetrics(f);
int w = fm.stringWidth(text);
return w;
}
}
//package wiki.tall.ccmq.common.util;
//
//import sun.font.FontDesignMetrics;
//
//import java.awt.*;
//
//public class ImgUtil {
// public static int getStringWidth(String text,Font f){
// FontMetrics fm = FontDesignMetrics.getMetrics(f);
// int w = fm.stringWidth(text);
// return w;
// }
//}

2
ccmq/src/main/resources/application-prod.properties

@ -14,7 +14,7 @@ spring.servlet.multipart.max-request-size=100MB
spring.redis.database=0
spring.redis.host=127.0.0.1
spring.redis.port=6379
spring.redis.password=
spring.redis.password=areowqr!@43ef
spring.redis.timeout=1000ms
spring.redis.jedis.pool.max-active=200
spring.redis.jedis.pool.max-wait=-1ms

6
eureka/pom.xml

@ -28,12 +28,6 @@
<version>2.1.6</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-server</artifactId>
<version>2.1.6</version>
<scope>compile</scope>
</dependency>
</dependencies>

Loading…
Cancel
Save