Browse Source

优化TASK_CURRENT_CODE

master
lijiuwei 8 months ago
parent
commit
006366e8f2
4 changed files with 19 additions and 19 deletions
  1. +7
    -7
      inspect-job/src/main/java/com/inspect/job/task/JobMainTask.java
  2. +9
    -9
      inspect-main/inspect-main-task-exec/src/main/java/com/inspect/exec/controller/PatrolTaskExecController.java
  3. +1
    -1
      inspect-main/inspect-main-task/src/main/java/com/inspect/task/controller/PatrolTaskController.java
  4. +2
    -2
      inspect-main/inspect-main-task/src/main/java/com/inspect/taskstatus/controller/PatrolTaskStatusController.java

+ 7
- 7
inspect-job/src/main/java/com/inspect/job/task/JobMainTask.java View File

@ -672,12 +672,12 @@ public class JobMainTask {
redisService.setCacheObjectOfTask(RedisConst.TASK_RECORD_CNT, taskCode, size);
}
synchronized private void resetRedisCurrentCode() {
final String taskCode = redisService.getCacheObject(RedisConst.TASK_CURRENT_CODE);
synchronized private void resetRedisCurrentCode(String curTaskCode) {
final String taskCode = redisService.getCacheObjectOfTask(RedisConst.TASK_CURRENT_CODE, curTaskCode);
if (StringUtils.isNotEmpty(taskCode)) {
redisService.deleteObject(taskCode);
}
redisService.deleteObject(RedisConst.TASK_CURRENT_CODE);
redisService.deleteObjectOfTask(RedisConst.TASK_CURRENT_CODE, curTaskCode);
}
private void windUpRecord(String taskPatrolId) {
@ -709,7 +709,7 @@ public class JobMainTask {
log.info(Color.MAGENTA + "RECORD ROUND, patrolId: {}, recordCounter: {}, redisRecCnt: {}" + Color.END, taskPatrolId, execRecordCounter, redisRecCnt);
if (execRecordCounter == redisRecCnt) { // 最后一个record
resetRecordCounter(execRecord.getTaskCode());
resetRedisCurrentCode();
resetRedisCurrentCode(execRecord.getTaskCode());
redisService.deleteObjectOfTask(RedisConst.IMMEDIATELY_EXEC_TASK_TIME, execRecord.getTaskCode());
}
} else { // 该record下的点没有全部执行成功
@ -730,7 +730,7 @@ public class JobMainTask {
log.info(Color.MAGENTA + "[JOB] TIMES 0, execRecordCounter: {}, redisRecCnt: {}" + Color.END, execRecordCounter, redisRecCnt);
if (execRecordCounter == redisRecCnt) {
resetRecordCounter(execRecord.getTaskCode());
resetRedisCurrentCode();
resetRedisCurrentCode(execRecord.getTaskCode());
redisService.deleteObjectOfTask(RedisConst.IMMEDIATELY_EXEC_TASK_TIME, execRecord.getTaskCode());
}
}
@ -837,7 +837,7 @@ public class JobMainTask {
@PostMapping({"/immediatelyExecTask"})
public void immediatelyExecTask(@RequestBody PatrolTask patrolTask) {
String taskCode = redisService.getCacheObject(RedisConst.TASK_CURRENT_CODE);
String taskCode = redisService.getCacheObjectOfTask(RedisConst.TASK_CURRENT_CODE, patrolTask.getTaskCode());
if (StringUtils.isNotEmpty(taskCode)) {
log.info(Color.CYAN + "[JOB] TASK SLOT IS TAKEN BY: {}" + Color.END, taskCode);
return;
@ -862,7 +862,7 @@ public class JobMainTask {
String immediatelyExecTaskTime = DateUtils.parseDateToStr(DateUtils.yyyyMMddHHmmss, new Date());
redisService.setCacheObjectOfTask(RedisConst.IMMEDIATELY_EXEC_TASK_TIME, patrolTask.getTaskCode(), 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);
redisService.setCacheObjectOfTask(RedisConst.TASK_CURRENT_CODE, patrolTask.getTaskCode(), RedisConst.TASK_CODE + patrolTask.getTaskCode() + StringUtils.AT + immediatelyExecTaskTime);
resetRecordCounter(patrolTask.getTaskCode());
log.info(Color.CYAN + "[JOB IMMEDIATE] TASK REC CNT: {}" + Color.END, cameraPatrolTasks.size());//TASK REC CNT: 1
setRedisRecordCount(patrolTask.getTaskCode(), cameraPatrolTasks.size());


+ 9
- 9
inspect-main/inspect-main-task-exec/src/main/java/com/inspect/exec/controller/PatrolTaskExecController.java View File

@ -289,10 +289,10 @@ public class PatrolTaskExecController extends BaseController {
redisService.deleteObject(RedisConst.TASK_PATROL_STATE);
redisService.deleteObject(RedisConst.TASK_PATROL_ID);
String key = redisService.getCacheObject(RedisConst.TASK_CURRENT_CODE);
String key = redisService.getCacheObjectOfTask(RedisConst.TASK_CURRENT_CODE, taskCode);
if (key != null) {
log.info("[TASK] [{}] FINISH", key);
redisService.deleteObject(RedisConst.TASK_CURRENT_CODE);
redisService.deleteObjectOfTask(RedisConst.TASK_CURRENT_CODE, taskCode);
log.info("[TASK] [{}] REMOVE FROM QUEUE", key);
redisService.deleteObject(key);
}
@ -622,10 +622,10 @@ public class PatrolTaskExecController extends BaseController {
@PostMapping({"/execCurrentDayTask"})
public void execCurrentDayTask() throws ParseException {
String taskCodeStr = redisService.getCacheObject(RedisConst.TASK_CURRENT_CODE);
if (!StringUtils.isEmpty(taskCodeStr)) {
this.log.info(" 【当前正在执行的任务:{}, 其它任务不能执行!!!】", taskCodeStr);
} else {
// String taskCodeStr = redisService.getCacheObject(RedisConst.TASK_CURRENT_CODE);
// if (!StringUtils.isEmpty(taskCodeStr)) {
// this.log.info(" 【当前正在执行的任务:{}, 其它任务不能执行!!!】", taskCodeStr);
// } else {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
for (String key : this.redisService.keys(RedisConst.TASK_CODE_EX)) {
String fixedStartTime = key.split(StringUtils.AT)[2];
@ -637,12 +637,12 @@ public class PatrolTaskExecController extends BaseController {
extracted(key, key);
}
}
}
// }
}
private void extracted(String key, String taskCode) {
log.info(Color.RED + "[EXEC] Add new task [{}]" + Color.END, key);
redisService.setCacheObject(RedisConst.TASK_CURRENT_CODE, key);
log.info(Color.RED + "[EXEC] Add new task [{}]" + Color.END, key);//日志里没搜到
redisService.setCacheObjectOfTask(RedisConst.TASK_CURRENT_CODE, taskCode, key);
log.info("[EXEC] key: {}", key);
List<PatrolTask> cameraPatrolTasks = redisService.getCacheObject(key);
if (!cameraPatrolTasks.isEmpty()) {


+ 1
- 1
inspect-main/inspect-main-task/src/main/java/com/inspect/task/controller/PatrolTaskController.java View File

@ -520,7 +520,7 @@ public class PatrolTaskController extends BaseController {
List<PatrolTask> eqList = toPatrolTaskList(parseObject, flag);
makeupPatrolTaskDetails(eqList, flag);
PatrolTask patrolTask = eqList.get(0);
String key = redisService.getCacheObject(RedisConst.TASK_CURRENT_CODE);
String key = redisService.getCacheObjectOfTask(RedisConst.TASK_CURRENT_CODE, String.valueOf(patrolTask.getTaskId()));
if (key != null && key.contains(String.valueOf(patrolTask.getTaskId()))) {
return AjaxResult.error("Task is executing, modify forbidden!");
}


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

@ -611,7 +611,7 @@ public class PatrolTaskStatusController extends BaseController {
private void extracted(PatrolTask patrolTask) throws InterruptedException {
Thread.sleep(20000L);
String taskCode = redisService.getCacheObject(RedisConst.TASK_CURRENT_CODE);
String taskCode = redisService.getCacheObjectOfTask(RedisConst.TASK_CURRENT_CODE, String.valueOf(patrolTask.getTaskId()));
if (taskCode != null && taskCode.contains(String.valueOf(patrolTask.getTaskId()))) {
this.log.info("[TASK STATUS] UPDATE TASK: {} STATUS to IMMEDIATE", taskCode);
PatrolTaskStatus patrolTaskStatus = new PatrolTaskStatus();
@ -657,7 +657,7 @@ public class PatrolTaskStatusController extends BaseController {
String str = JSONObject.toJSONString(sendTask);
this.feignTaskClient.sendCommand(str);
} else {
String taskCode = redisService.getCacheObject(RedisConst.TASK_CURRENT_CODE);
String taskCode = redisService.getCacheObjectOfTask(RedisConst.TASK_CURRENT_CODE, String.valueOf(patrolTask.getTaskId()));
if (!StringUtils.isEmpty(taskCode)) {
log.info("[TASK] CURRENT EXEC TASK: {}", taskCode);
return AjaxResult.error(501, "THERE TASK IS RUNNING!");


Loading…
Cancel
Save