Browse Source

/*完成华软无人机MQTT对接程序,在测试环境已经测试完成*/

master
htjcAdmin 2 months ago
parent
commit
6492b1ce37
3 changed files with 29 additions and 15 deletions
  1. +10
    -4
      inspect-main/inspect-main-task/src/main/java/com/inspect/taskstatus/controller/PatrolTaskStatusController.java
  2. +1
    -1
      inspect-metadata/src/main/java/com/inspect/metadata/mqtt/HuaRuanMQTTServiceImpl.java
  3. +18
    -10
      inspect-metadata/src/main/java/com/inspect/metadata/mqtt/MQTTUtils.java

+ 10
- 4
inspect-main/inspect-main-task/src/main/java/com/inspect/taskstatus/controller/PatrolTaskStatusController.java View File

@ -139,24 +139,26 @@ public class PatrolTaskStatusController extends BaseController {
@GetMapping({"/list"})
public TableDataInfo list(PatrolTaskStatus patrolTaskStatus) {
// log.info("[TASK STATUS] patrolTaskStatus: {}", patrolTaskStatus.toString());
log.info("PATROL_TASK_STATUS LIST patrolTaskStatus: {}", patrolTaskStatus.toString());
this.startPage();
List<PatrolTaskStatus> list = patrolTaskStatusService.selectPatrolTaskStatusList(patrolTaskStatus);
// log.info("[TASK STATUS] list cnt: {}", list.size());
log.info("PATROL_TASK_STATUS LIST cnt: {}", list.size());
String taskPatrolIds = "'" + list.stream().map((item) -> {
return item.getTaskPatrolledId();
}).collect(Collectors.joining("','")) + "'";
// log.info("[TASK STATUS] taskPatrolIds: {}", taskPatrolIds);
log.info("PATROL_TASK_STATUS LIST taskPatrolIds: {}", taskPatrolIds);
List<PatrolTaskResultMain> resultMains = patrolTaskResultMainService.selectMainFileStatus(taskPatrolIds);
String taskCodeIds = "'" + list.stream().map((item) -> {
return item.getTaskCode();
}).collect(Collectors.joining("','")) + "'";
log.info("PATROL_TASK_STATUS LIST resultMains size: {}", resultMains.size());
List<Map<String, Object>> pointList = patrolTaskInfoService.selectPatrolTaskInfoCount(taskCodeIds);
Map<String, String> pointMap = pointList.stream().collect(Collectors.toMap((item) -> {
return (String) item.get("taskMajorId");
}, (item) -> {
return String.valueOf(item.get("num"));
}));
log.info("PATROL_TASK_STATUS LIST pointMap size: {}", pointMap.size());
list.forEach((item) -> {
item.setPatrolStatus("1");
item.setPointCount(pointMap.get(item.getTaskCode()));
@ -176,14 +178,16 @@ public class PatrolTaskStatusController extends BaseController {
ResultAnalysis resultAnalysis = new ResultAnalysis();
resultAnalysis.setTaskPatrolledId(item.getTaskPatrolledId());
ResultAnalysis analysisRes = resultAnalysisService.selectTaskAbnormalData(resultAnalysis);
item.setCsQxNum(analysisRes == null ? 0 : analysisRes.getCsQxNum());
item.setAiQxNum(analysisRes == null ? 0 : analysisRes.getAiQxNum());
item.setCsYcNum(analysisRes == null ? 0 : analysisRes.getCsYcNum());
item.setAiYcNum(analysisRes == null ? 0 : analysisRes.getAiYcNum());
log.info("PATROL_TASK_STATUS LIST analysisRes.getLineId: {}",
analysisRes == null ? -1 : analysisRes.getLineId());
resultAnalysis.setResultType("0");
resultAnalysis.setTaskPatrolId(item.getTaskPatrolledId());
List<ResultAnalysis> filterList = resultAnalysisService.selectResultAnalysisList(resultAnalysis);
log.info("PATROL_TASK_STATUS LIST filterList size: {}", filterList.size());
Map<GroupKey, List<ResultAnalysis>> groupedFilterList = filterList.stream().collect(Collectors.groupingBy(
data -> new GroupKey(data.getObjectId(), data.getAlgType())
));
@ -192,6 +196,8 @@ public class PatrolTaskStatusController extends BaseController {
item.setTaskEstimatedTime("0");
}
});
log.info("PATROL_TASK_STATUS LIST END");
return this.getDataTable(list);
}


+ 1
- 1
inspect-metadata/src/main/java/com/inspect/metadata/mqtt/HuaRuanMQTTServiceImpl.java View File

@ -24,7 +24,7 @@ public class HuaRuanMQTTServiceImpl {
mqttUtils.getClient().setCallback(new MqttCallback() {
@Override
public void connectionLost(Throwable cause) {
log.error("Connection lost: {}", cause.getMessage());
log.info("Connection lost: {}", cause.getMessage());
}
@Override


+ 18
- 10
inspect-metadata/src/main/java/com/inspect/metadata/mqtt/MQTTUtils.java View File

@ -12,16 +12,20 @@ import javax.annotation.PreDestroy;
@Slf4j
@Service
public class MQTTUtils {
@Value("${huaRuan.mqtt.ip}")
@Value("${huaRuan.mqtt.ip:localhost}")
protected String ip;
@Value("${huaRuan.mqtt.clientId}")
@Value("${huaRuan.mqtt.port:1883}")
protected String port;
@Value("${huaRuan.mqtt.clientId:test}")
protected String clientId;
@Value("${huaRuan.mqtt.user}")
@Value("${huaRuan.mqtt.user:admin}")
protected String user;
@Value("${huaRuan.mqtt.pwd}")
@Value("${huaRuan.mqtt.pwd:123456}")
protected String pwd;
@Value("${huaRuan.mqtt.topicFilters}")
@Value("${huaRuan.mqtt.topicFilters:test}")
protected String topicFilters;
@Value("${mqtt.qos:1}")
protected int[] qos; // QoS 数组
private MqttClient client = null;
private Long id = 0L;
@ -43,9 +47,11 @@ public class MQTTUtils {
connOpts.setPassword(pwd.toCharArray());
connOpts.setCleanSession(true);
String broker = String.format("tcp://%s:%s", ip, port);
while (true) {
try {
client = new MqttClient(ip, clientId, persistence);
client = new MqttClient(broker, clientId, persistence);
client.setCallback(new MqttCallback() {
@Override
public void connectionLost(Throwable cause) {
@ -54,19 +60,21 @@ public class MQTTUtils {
@Override
public void messageArrived(String topic, MqttMessage message) {
// Handle incoming messages here
log.info("messageArrived: {}, message: {}", topic, message.toString());
}
@Override
public void deliveryComplete(IMqttDeliveryToken token) {
// Handle delivery completion here
}
});
log.info("Connecting to MQTT broker: {}", ip);
log.info("Connecting to MQTT broker: {}", broker);
client.connect(connOpts);
log.info("Connected to MQTT broker");
break; // Exit the loop if connected successfully
subscribe(new String[]{topicFilters}, qos);
break;
} catch (MqttException e) {
log.error("Failed to connect to MQTT broker. Reason: {}", e.getMessage());
try {


Loading…
Cancel
Save