diff --git a/inspect-job/src/main/java/com/inspect/job/task/JobMainTask.java b/inspect-job/src/main/java/com/inspect/job/task/JobMainTask.java index df54f67..b1b1877 100644 --- a/inspect-job/src/main/java/com/inspect/job/task/JobMainTask.java +++ b/inspect-job/src/main/java/com/inspect/job/task/JobMainTask.java @@ -453,7 +453,7 @@ public class JobMainTask { .isEnable("1") .build()); } catch (Exception e) { - e.printStackTrace(); + log.info("Error queryPatrolPresetPos: {}", patrolPointId); } if (presetPosSlim == null) { diff --git a/inspect-main/inspect-main-task/src/main/java/com/inspect/analysis/service/impl/AnalysisRedisKeyExpireListener.java b/inspect-main/inspect-main-task/src/main/java/com/inspect/analysis/service/impl/AnalysisRedisKeyExpireListener.java new file mode 100644 index 0000000..1b5e568 --- /dev/null +++ b/inspect-main/inspect-main-task/src/main/java/com/inspect/analysis/service/impl/AnalysisRedisKeyExpireListener.java @@ -0,0 +1,37 @@ +package com.inspect.analysis.service.impl; + +import com.inspect.analysis.constant.AnalyseConstants; +import com.inspect.base.core.constant.Color; +import com.inspect.base.redis.service.RedisService; + +import com.inspect.partrolresult.domain.AnalyseRequest; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.data.redis.connection.Message; +import org.springframework.data.redis.listener.KeyExpirationEventMessageListener; +import org.springframework.data.redis.listener.RedisMessageListenerContainer; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; + +@Component +public class AnalysisRedisKeyExpireListener extends KeyExpirationEventMessageListener { + private final Logger log = LoggerFactory.getLogger(AnalysisRedisKeyExpireListener.class); + + @Resource + private RedisService redisService; + + public AnalysisRedisKeyExpireListener(RedisMessageListenerContainer listenerContainer) { + super(listenerContainer); + } + + public void onMessage(Message message, byte[] pattern) { + String expiredKey = message.toString(); + log.info(Color.YELLOW + "Analysis RedisKey Expire: {}, pattern: {}" + Color.END, expiredKey, pattern); + if(expiredKey.startsWith(AnalyseConstants.ANALYSE_FILTER_REQUEST)) { + AnalyseRequest analyseRequest = (AnalyseRequest) redisService.redisTemplate.opsForValue().getAndDelete(expiredKey); + log.info(Color.YELLOW + "Analysis RedisKey Expire Request: {}" + Color.END, analyseRequest); + } + } + +} diff --git a/inspect-main/inspect-main-task/src/main/java/com/inspect/partrolresult/service/AnalyseRemoteService.java b/inspect-main/inspect-main-task/src/main/java/com/inspect/partrolresult/service/AnalyseRemoteService.java index 58c8f8a..d3361cf 100644 --- a/inspect-main/inspect-main-task/src/main/java/com/inspect/partrolresult/service/AnalyseRemoteService.java +++ b/inspect-main/inspect-main-task/src/main/java/com/inspect/partrolresult/service/AnalyseRemoteService.java @@ -26,6 +26,10 @@ public class AnalyseRemoteService { private static final Logger log = LoggerFactory.getLogger(AnalyseRemoteService.class); @Resource private RedisService redisService; + + @Value("${task.test-mode:false}") + private boolean testMode; + @Value("${server.port}") private String port; @@ -56,7 +60,7 @@ public class AnalyseRemoteService { if ("1".equals(analyseFilter) && isFilter) { final String analyzeFilterRequestIdRedisKey = AnalyseConstants.ANALYSE_FILTER_REQUEST.concat(requestId); log.info("[FILTER] sendRequest analyseFilterRequestIdRedisKey: {}, analyseReq: {}", analyzeFilterRequestIdRedisKey, analyseReq); - this.redisService.setCacheObject(analyzeFilterRequestIdRedisKey, analyseReq.clone(), requestTimeout, TimeUnit.DAYS); + this.redisService.setCacheObject(analyzeFilterRequestIdRedisKey, analyseReq.clone(), testMode?3L:requestTimeout, testMode?TimeUnit.MINUTES:TimeUnit.DAYS); AnalyseReqItem analyseReqItem = analyseReq.getObjectList().get(0);//只取第一个 analyseReqItem.setTypeList(typeList); analyseReq.setObjectList(Collections.singletonList(analyseReqItem)); diff --git a/inspect-main/inspect-main-task/src/main/java/com/inspect/taskstatus/controller/PatrolTaskStatusController.java b/inspect-main/inspect-main-task/src/main/java/com/inspect/taskstatus/controller/PatrolTaskStatusController.java index 4a8e3b6..a2d2090 100644 --- a/inspect-main/inspect-main-task/src/main/java/com/inspect/taskstatus/controller/PatrolTaskStatusController.java +++ b/inspect-main/inspect-main-task/src/main/java/com/inspect/taskstatus/controller/PatrolTaskStatusController.java @@ -638,7 +638,6 @@ public class PatrolTaskStatusController extends BaseController { } public AjaxResult issuePatrolTask(final PatrolTask patrolTask) { - String receiveCode = ""; String sendCode = ""; BasedataEqpBookMoMain basedataEqpBookMoMain = new BasedataEqpBookMoMain(); basedataEqpBookMoMain.setType("20");// type:20 - robot @@ -658,6 +657,7 @@ public class PatrolTaskStatusController extends BaseController { BasedataEqpBookMoMain basedataEqpbookMomain = new BasedataEqpBookMoMain(); basedataEqpbookMomain.setPatrolDeviceCode(devNos[i]); List eqpBookMoMains = patrolResultService.selectBasedataEqpBookList(basedataEqpbookMomain); + String receiveCode = ""; if (!eqpBookMoMains.isEmpty() && eqpBookMoMains.get(0).getMainSystemCode() != null) { receiveCode = eqpBookMoMains.get(0).getMainSystemCode(); } @@ -681,7 +681,11 @@ public class PatrolTaskStatusController extends BaseController { // 下发无人机任务 for(String pilotTaskCmd : pilotTaskCmds) { log.info("无人机-机器人任务下发, pilotTaskCmd: {}", pilotTaskCmd); - this.feignTaskClient.sendCommand(pilotTaskCmd); + try { + this.feignTaskClient.sendCommand(pilotTaskCmd); + } catch (Exception e) { + log.error("无人机-机器人任务下发异常: {}", e.getMessage()); + } } // 下发可见光任务 diff --git a/inspect-main/inspect-main-video/src/main/resources/mapper/patrol/PatrolPresetPosMapper.xml b/inspect-main/inspect-main-video/src/main/resources/mapper/patrol/PatrolPresetPosMapper.xml index 9b01bde..6b025ab 100644 --- a/inspect-main/inspect-main-video/src/main/resources/mapper/patrol/PatrolPresetPosMapper.xml +++ b/inspect-main/inspect-main-video/src/main/resources/mapper/patrol/PatrolPresetPosMapper.xml @@ -155,7 +155,7 @@ select a.preset_pos_id,a.preset_pos_code,a.preset_pos_name,a.patrol_point_id,a.channel_id,a.patrol_device_code, a.alg_subtype_code,a.channel_code,a.channel_type,a.video_nvr_code,b.host,b.port,b.username,b.password,b.address from patrol_preset_pos a - left join basedata_eqpbook_channel b on a.channel_code = b.channel_code + left join basedata_eqpbook_channel b on a.channel_code = b.channel_code and a.channel_id = b.channel_id where a.patrol_point_id = #{patrolPointId} and a.is_enable = #{isEnable}