From 39fadbdc09af9b88ede0fcf1f1ca296d3f9f9431 Mon Sep 17 00:00:00 2001 From: lijiuwei Date: Wed, 2 Apr 2025 16:18:01 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=9A=E4=BB=BB=E5=8A=A1=E6=89=A7=E8=A1=8C?= =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/core/constant/RedisConst.java | 1 - .../com/inspect/job/task/JobMainTask.java | 33 +++-------------- .../controller/PatrolTaskExecController.java | 17 ++------- .../PatrolTaskStatusController.java | 36 ++++++------------- 4 files changed, 19 insertions(+), 68 deletions(-) diff --git a/inspect-base/inspect-base-core/src/main/java/com/inspect/base/core/constant/RedisConst.java b/inspect-base/inspect-base-core/src/main/java/com/inspect/base/core/constant/RedisConst.java index e5f018c..483f87e 100644 --- a/inspect-base/inspect-base-core/src/main/java/com/inspect/base/core/constant/RedisConst.java +++ b/inspect-base/inspect-base-core/src/main/java/com/inspect/base/core/constant/RedisConst.java @@ -11,6 +11,5 @@ public class RedisConst { public static final String TASK_PATROL_STATE = "TASK_PATROL_STATE"; public static final String TASK_RECORD_CNT = "TASK_RECORD_CNT"; public static final String TASK_CURRENT_CODE = "TASK_CURRENT_CODE@"; - public static final String TASK_TIMER_CLOCK = "TASK_TIMER_CLOCK"; public static final String IMMEDIATELY_EXEC_TASK_TIME = "IMMEDIATELY_EXEC_TASK_TIME"; } 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 c6c9a22..eadd461 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 @@ -663,22 +663,13 @@ public class JobMainTask { return cursor; } - private void resetTaskTimerClock() { - redisService.setCacheObject(RedisConst.TASK_TIMER_CLOCK, System.currentTimeMillis()); - } - - private void resetExecRecordCounter() { + synchronized private void resetRecordCounter() { execRecordCounter = 0; + redisService.setCacheObject(RedisConst.TASK_RECORD_CNT, 0); } - synchronized private void taskStartInitialize() { - resetTaskTimerClock(); - resetExecRecordCounter(); - } - - synchronized private void resetRecordCounter() { - resetExecRecordCounter(); - redisService.setCacheObject(RedisConst.TASK_RECORD_CNT, 0); + private void setRedisRecordCount(final int size) { + redisService.setCacheObject(RedisConst.TASK_RECORD_CNT, size); } synchronized private void resetRedisCurrentCode() { @@ -689,14 +680,6 @@ public class JobMainTask { redisService.deleteObject(RedisConst.TASK_CURRENT_CODE); } - synchronized private void calcExecCostTime(final String oldPatrolId) { - Long startTime = redisService.getCacheObject(RedisConst.TASK_TIMER_CLOCK); - if (startTime != null) { - log.info(Color.MAGENTA + "[JOB] TASK: [{}], COST: [{} ms]" + Color.END, oldPatrolId, System.currentTimeMillis() - startTime); - redisService.setCacheObject(RedisConst.TASK_TIMER_CLOCK, 0L); - } - } - private void windUpRecord(String taskPatrolId) { PatrolTaskExecRecord execRecord = taskExecClient.selectPatrolTaskExecRecordByTaskPatrolId(taskPatrolId); final int total = execRecord.getTotalNumber(); @@ -728,7 +711,6 @@ public class JobMainTask { resetRecordCounter(); resetRedisCurrentCode(); redisService.deleteObject(RedisConst.IMMEDIATELY_EXEC_TASK_TIME); - calcExecCostTime(execRecord.getOldTaskPatrolId()); } } else { // 该record下的点没有全部执行成功 //设置本record的执行状态为终止 @@ -750,7 +732,6 @@ public class JobMainTask { if (execRecordCounter == redisRecCnt) { resetRecordCounter(); resetRedisCurrentCode(); - calcExecCostTime(execRecord.getOldTaskPatrolId()); } } } @@ -882,7 +863,7 @@ public class JobMainTask { redisService.setCacheObject(RedisConst.IMMEDIATELY_EXEC_TASK_TIME, immediatelyExecTaskTime); log.info(Color.CYAN + "[JOB IMMEDIATE] TASK_CURRENT_CODE: {}, value: {}" + Color.END, RedisConst.TASK_CURRENT_CODE, RedisConst.TASK_CODE + patrolTask.getTaskCode() + StringUtils.AT + immediatelyExecTaskTime); redisService.setCacheObject(RedisConst.TASK_CURRENT_CODE, RedisConst.TASK_CODE + patrolTask.getTaskCode() + StringUtils.AT + immediatelyExecTaskTime); - taskStartInitialize(); + resetRecordCounter(); log.info(Color.CYAN + "[JOB IMMEDIATE] TASK REC CNT: {}" + Color.END, cameraPatrolTasks.size()); setRedisRecordCount(cameraPatrolTasks.size()); for (PatrolTask task : cameraPatrolTasks) { @@ -948,10 +929,6 @@ public class JobMainTask { } } - private void setRedisRecordCount(final int size) { - redisService.setCacheObject(RedisConst.TASK_RECORD_CNT, size); - } - private void assembleVideoTask(List patrolTaskList, List cameraPatrolTasks) { if (patrolTaskList != null) { for (PatrolTask task : patrolTaskList) { diff --git a/inspect-main/inspect-main-task-exec/src/main/java/com/inspect/exec/controller/PatrolTaskExecController.java b/inspect-main/inspect-main-task-exec/src/main/java/com/inspect/exec/controller/PatrolTaskExecController.java index c4d0363..4d52eac 100644 --- a/inspect-main/inspect-main-task-exec/src/main/java/com/inspect/exec/controller/PatrolTaskExecController.java +++ b/inspect-main/inspect-main-task-exec/src/main/java/com/inspect/exec/controller/PatrolTaskExecController.java @@ -285,20 +285,9 @@ public class PatrolTaskExecController extends BaseController { updateTaskExecRecord(TaskStatus.RUNNING.getCode(), execRecords); } else if (TaskStatus.HALTED.getCode().equals(state)) { updateTaskExecRecord(TaskStatus.HALTED.getCode(), execRecords); - String redisImmediatelyExecTaskTime = redisService.getCacheObject(RedisConst.IMMEDIATELY_EXEC_TASK_TIME); - if (StringUtils.isNotEmpty(redisImmediatelyExecTaskTime)) { - redisService.deleteObject(RedisConst.IMMEDIATELY_EXEC_TASK_TIME); - } - - String redisTaskPatrolState = redisService.getCacheObject(RedisConst.TASK_PATROL_STATE); - if (redisTaskPatrolState != null) { - redisService.deleteObject(RedisConst.TASK_PATROL_STATE); - } - - String redisTaskPatrolId = redisService.getCacheObject(RedisConst.TASK_PATROL_ID); - if (!StringUtils.isEmpty(redisTaskPatrolId)) { - redisService.deleteObject(RedisConst.TASK_PATROL_ID); - } + redisService.deleteObject(RedisConst.IMMEDIATELY_EXEC_TASK_TIME); + redisService.deleteObject(RedisConst.TASK_PATROL_STATE); + redisService.deleteObject(RedisConst.TASK_PATROL_ID); String key = redisService.getCacheObject(RedisConst.TASK_CURRENT_CODE); if (key != null) { 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 d8ea83e..82bd0db 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 @@ -514,15 +514,8 @@ public class PatrolTaskStatusController extends BaseController { //立即执行任务 @GetMapping({"/controlChange"}) public AjaxResult controlChange(PatrolTask patrolTask) { - String taskCode = redisService.getCacheObject(RedisConst.TASK_CURRENT_CODE); - if (!StringUtils.isEmpty(taskCode)) { - log.info("[TASK] CURRENT EXEC TASK: {}", taskCode); - return AjaxResult.error(501, "THERE TASK IS RUNNING!"); - } else { - PatrolTask patrol = patrolTaskService.selectPatrolTaskByTaskId(patrolTask.getTaskId()); - issueToRobot(patrol);//type=41 立即执行任务 - return toAjax(1); - } + PatrolTask patrol = patrolTaskService.selectPatrolTaskByTaskId(patrolTask.getTaskId()); + return issueToRobot(patrol);//type=41 立即执行任务 } public void sendTaskToVideo(final PatrolTask patrolTask) { @@ -565,7 +558,7 @@ public class PatrolTaskStatusController extends BaseController { } - public void issueToRobot(PatrolTask patrolTask) { + public AjaxResult issueToRobot(PatrolTask patrolTask) { String receiveCode = ""; String sendCode = ""; BasedataEqpBookMoMain basedataEqpBookMoMain = new BasedataEqpBookMoMain(); @@ -594,24 +587,17 @@ public class PatrolTaskStatusController extends BaseController { String str = JSONObject.toJSONString(sendTask); this.feignTaskClient.sendCommand(str); } else { - sendTaskToVideo(patrolTask); + String taskCode = redisService.getCacheObject(RedisConst.TASK_CURRENT_CODE); + if (!StringUtils.isEmpty(taskCode)) { + log.info("[TASK] CURRENT EXEC TASK: {}", taskCode); + return AjaxResult.error(501, "THERE TASK IS RUNNING!"); + } else { + sendTaskToVideo(patrolTask); + } } -// -// SendTask sendTaskcontrol = new SendTask(); -// sendTaskcontrol.setReceiveCode(receiveCode); -// sendTaskcontrol.setSendCode(sendCode); -// sendTaskcontrol.setCode(devNo); -// sendTaskcontrol.setType("1"); -// sendTaskcontrol.setCommand("5"); -// List sendTaskArrayList = new ArrayList<>(); -// PatrolSendTask patrolSendTask = new PatrolSendTask(); -// patrolSendTask.setValue("1"); -// sendTaskArrayList.add(patrolSendTask); -// sendTaskcontrol.setItems(sendTaskArrayList); -// String jsonString = JSONObject.toJSONString(sendTaskcontrol); -// this.feignTaskClient.sendCommand(jsonString); } } + return toAjax(1); } @GetMapping({"/taskStatusChange"})