diff --git a/inspect-main/inspect-main-task/src/main/java/com/inspect/partrolresult/controller/PatrolResultController.java b/inspect-main/inspect-main-task/src/main/java/com/inspect/partrolresult/controller/PatrolResultController.java index b65566c..a7039fe 100644 --- a/inspect-main/inspect-main-task/src/main/java/com/inspect/partrolresult/controller/PatrolResultController.java +++ b/inspect-main/inspect-main-task/src/main/java/com/inspect/partrolresult/controller/PatrolResultController.java @@ -1154,8 +1154,9 @@ public class PatrolResultController extends BaseController { double dbProgress = 0.0; try { String runProgressStr = patrolTaskStatusItem.getTaskProgress().replaceAll("[^0-9]", ""); + String dbProgressStr = patrolTaskStatusOfDb.getTaskProgress().replaceAll("[^0-9]", ""); runProgress = Double.parseDouble(runProgressStr); - dbProgress = Double.parseDouble(patrolTaskStatusOfDb.getTaskProgress()); + dbProgress = Double.parseDouble(dbProgressStr); } catch (Exception e) { logger.error("patrol_task_status error number, run_progress: {}, db_progress: {}", patrolTaskStatusItem.getTaskProgress(), patrolTaskStatusOfDb.getTaskProgress()); } @@ -1167,8 +1168,9 @@ public class PatrolResultController extends BaseController { patrolTaskStatusItem.setTaskName(sendCode + "-" + patrolTaskStatusItem.getTaskName()); } logger.info(Color.CYAN + "updating patrol_task_status taskPatrolledId: {}, progress: {}, taskState: {}" + Color.END, - patrolTaskStatusItem.getTaskPatrolledId(), patrolTaskStatusItem.getTaskProgress(), patrolTaskStatusItem.getTaskState()); - + patrolTaskStatusItem.getTaskPatrolledId(), + runProgress, + patrolTaskStatusItem.getTaskState()); /* * 智能巡视任务下发完成100%, 在这个节点不能更新task_state字段, 原因如下: * 1. 不能更新task_state为已经完成状态, 因为整个任务的完成状态应该由算法任务是否完成来决定; @@ -1176,17 +1178,17 @@ public class PatrolResultController extends BaseController { * 因此原本算法任务已经将状态置为已经完成的情况下为了防止智巡任务再把它改为执行中,所以此时只需要 * 更新智巡的进度值为100即可 */ - if ("100.0".equals(patrolTaskStatusItem.getTaskProgress()) + if ("100.0".equals(String.valueOf(runProgress)) && TaskStatus.RUNNING.getCode().equals(patrolTaskStatusItem.getTaskState())) { List statusList = patrolTaskStatusService.selectPatrolTaskStatusList(PatrolTaskStatus.builder().taskPatrolledId(patrolTaskStatusItem.getTaskPatrolledId()).build()); if (!statusList.isEmpty()) { logger.info(Color.CYAN + "updating patrol_task_status 100%, taskPatrolledId: {}, progress: {}, taskState: {}, taskCurCodeInRedis: {}" + Color.END, patrolTaskStatusItem.getTaskPatrolledId(), - patrolTaskStatusItem.getTaskProgress(), + runProgress, patrolTaskStatusItem.getTaskState(), RedisConst.TASK_CURRENT_CODE + patrolTaskStatusItem.getTaskCode()); PatrolTaskStatus taskStatus = statusList.get(0); - taskStatus.setTaskProgress(patrolTaskStatusItem.getTaskProgress()); + taskStatus.setTaskProgress(String.valueOf(runProgress)); iPatrolTaskStatusService.updatePatrolTaskStatusOfTaskProgress(taskStatus); redisService.deleteObjectOfTask(RedisConst.TASK_CURRENT_CODE, taskStatus.getTaskCode()); } @@ -1197,7 +1199,7 @@ public class PatrolResultController extends BaseController { if (TaskStatus.RUNNING.getCode().equals(taskStatus.getTaskState())) { logger.info(Color.CYAN + "updating patrol_task_status state, taskPatrolledId: {}, taskState: {}, taskCurCodeInRedis: {}" + Color.END, patrolTaskStatusItem.getTaskPatrolledId(), - patrolTaskStatusItem.getTaskProgress(), + runProgress, patrolTaskStatusItem.getTaskState(), RedisConst.TASK_CURRENT_CODE + patrolTaskStatusItem.getTaskCode()); patrolTaskStatusItem.setTaskState(TaskStatus.RUNNING.getCode()); @@ -1207,7 +1209,12 @@ public class PatrolResultController extends BaseController { } } if ("E100-001".equals(sendCode)) { - if ("100".equals(patrolTaskStatusItem.getTaskProgress())) { + if (StringUtils.isNotEmpty(patrolTaskStatusItem.getTaskProgress()) && + !patrolTaskStatusItem.getTaskProgress().contains("100")) { + logger.info(Color.CYAN + "E100-001 directly save to result taskPatrolledId: {}, progress: {}, taskState: {}" + Color.END, + patrolTaskStatusItem.getTaskPatrolledId(), + patrolTaskStatusItem.getTaskProgress(), + patrolTaskStatusItem.getTaskState()); saveDataToResultAnalysis(patrolTaskStatusItem.getTaskPatrolledId()); } } @@ -1323,7 +1330,7 @@ public class PatrolResultController extends BaseController { logger.info("taskResultMain: {}", taskResultMain); List patrolTaskResultMainList = iPatrolTaskResultMainService.selectPatrolTaskResultMainList(taskResultMain); if (!patrolTaskResultMainList.isEmpty()) { - mainID = ((PatrolTaskResultMain) patrolTaskResultMainList.get(0)).getLineId().intValue(); + mainID = patrolTaskResultMainList.get(0).getLineId().intValue(); logger.info("exist PatrolTaskResultMain Id: {}", mainID); } else { PatrolTaskResultMain patrolTaskResultMain = new PatrolTaskResultMain(); @@ -1441,9 +1448,9 @@ public class PatrolResultController extends BaseController { if (StringUtils.isNotEmpty(patrolResult.getFileType())) { String fileType = patrolResult.getFileType(); - if (fileType.indexOf(",") > 0 && fileType.endsWith(",")) { + if (fileType.indexOf(StringUtils.COMMA) > 0 && fileType.endsWith(StringUtils.COMMA)) { // 去掉最后一个逗号 - patrolResult2.setFileType(fileType.substring(0, fileType.lastIndexOf(","))); + patrolResult2.setFileType(fileType.substring(0, fileType.lastIndexOf(StringUtils.COMMA))); } else { patrolResult2.setFileType(fileType); } @@ -1532,9 +1539,9 @@ public class PatrolResultController extends BaseController { if (StringUtils.isNotEmpty(patrolResult.getFileType())) { String fileType = patrolResult.getFileType(); - if (fileType.indexOf(",") > 0 && fileType.endsWith(",")) { + if (fileType.indexOf(StringUtils.COMMA) > 0 && fileType.endsWith(StringUtils.COMMA)) { // 去掉最后一个逗号 - patrolResult.setFileType(fileType.substring(0, fileType.lastIndexOf(","))); + patrolResult.setFileType(fileType.substring(0, fileType.lastIndexOf(StringUtils.COMMA))); } else { patrolResult.setFileType(fileType); } @@ -1572,7 +1579,7 @@ public class PatrolResultController extends BaseController { logger.info("algList: {}", algList.toString()); int algCount = 0; for (String alg : algList) { - String[] sub = alg.split(","); + String[] sub = alg.split(StringUtils.COMMA); algCount += sub.length; } logger.info("algCount: {}", algCount);