|
|
@ -1536,17 +1536,6 @@ public class JobMainTask { |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@SuppressWarnings({"unused"}) |
|
|
|
|
|
public void makeEveryDayTask() { |
|
|
|
|
|
log.info("***************************** JobTaskTimer makeEveryDayTask *************************************"); |
|
|
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
|
taskExecClient.makeCurrentDayTask(); |
|
|
|
|
|
} catch (Exception e) { |
|
|
|
|
|
log.info("[JOB] makeCurrentDayTask: {}", e.getMessage()); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// private String getTaskPatrolId(final PatrolTask patrolTask) { |
|
|
// private String getTaskPatrolId(final PatrolTask patrolTask) { |
|
|
// String time = DateUtils.format(DateUtils.yyyyMMddHHmmss, patrolTask.getFixedStartTime()); |
|
|
// String time = DateUtils.format(DateUtils.yyyyMMddHHmmss, patrolTask.getFixedStartTime()); |
|
|
// return patrolTask.getDevNo() + "_" + patrolTask.getTaskCode() + "_" + time; |
|
|
// return patrolTask.getDevNo() + "_" + patrolTask.getTaskCode() + "_" + time; |
|
|
@ -1559,7 +1548,7 @@ public class JobMainTask { |
|
|
|
|
|
|
|
|
@SuppressWarnings({"unused"}) |
|
|
@SuppressWarnings({"unused"}) |
|
|
public void execEveryDayTask(List<PatrolTask> patrolTaskList) { |
|
|
public void execEveryDayTask(List<PatrolTask> patrolTaskList) { |
|
|
log.info("***************************** JobTaskTimer execEveryDayTask *************************************"); |
|
|
|
|
|
|
|
|
log.info("***************************** JobTaskTimer execEveryDayTask with parameters *************************************"); |
|
|
|
|
|
|
|
|
// setRedisRecordCount(patrolTaskList.size()); |
|
|
// setRedisRecordCount(patrolTaskList.size()); |
|
|
// for (PatrolTask patrolTask : patrolTaskList) { |
|
|
// for (PatrolTask patrolTask : patrolTaskList) { |
|
|
@ -1617,7 +1606,7 @@ public class JobMainTask { |
|
|
|
|
|
|
|
|
@SuppressWarnings({"unused"}) |
|
|
@SuppressWarnings({"unused"}) |
|
|
public void execRepeatDayTask(List<PatrolTask> patrolTaskList) { |
|
|
public void execRepeatDayTask(List<PatrolTask> patrolTaskList) { |
|
|
log.info("***************************** JobTaskTimer execRepeatDayTask *************************************"); |
|
|
|
|
|
|
|
|
log.info("***************************** JobTaskTimer execRepeatDayTask with parameters *************************************"); |
|
|
|
|
|
|
|
|
// for (PatrolTask patrolTask : patrolTaskList) { |
|
|
// for (PatrolTask patrolTask : patrolTaskList) { |
|
|
// final String taskPatrolId = getTaskPatrolId(patrolTask); |
|
|
// final String taskPatrolId = getTaskPatrolId(patrolTask); |
|
|
@ -1645,4 +1634,59 @@ public class JobMainTask { |
|
|
// } |
|
|
// } |
|
|
// } |
|
|
// } |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private boolean isTaskSlotEmpty(String taskCode) { |
|
|
|
|
|
String taskCurrentCode = redisService.getCacheObjectOfTask(RedisConst.TASK_CURRENT_CODE, taskCode); |
|
|
|
|
|
Integer redisRecCnt = redisService.getCacheObjectOfTask(RedisConst.TASK_RECORD_CNT, taskCode); |
|
|
|
|
|
log.info(Color.YELLOW + "[JOB] TASK_CURRENT_CODE: {}, TASK_RECORD_CNT: {}" + Color.END, taskCurrentCode, redisRecCnt); |
|
|
|
|
|
return StringUtils.isEmpty(taskCurrentCode) || |
|
|
|
|
|
!StringUtils.isEmpty(taskCurrentCode) && (redisRecCnt == null || redisRecCnt == 0); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
private synchronized void extractRedisTask(String redisKey, String taskCode) { |
|
|
|
|
|
List<PatrolTask> patrolTaskList = JSON.parseArray(redisService.getCacheObject(redisKey), PatrolTask.class); |
|
|
|
|
|
if (patrolTaskList != null && !patrolTaskList.isEmpty()) { |
|
|
|
|
|
log.info(Color.YELLOW + "[JOB] ADD NEW TASK: {}, TASK LIST SIZE: {}" + Color.END, redisKey, patrolTaskList.size()); |
|
|
|
|
|
redisService.setCacheObjectOfTask(RedisConst.TASK_CURRENT_CODE, taskCode, redisKey); |
|
|
|
|
|
execEveryDayTask(patrolTaskList); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@SuppressWarnings({"unused"}) |
|
|
|
|
|
public void execEveryDayTask() { |
|
|
|
|
|
log.info("***************************** JobTaskTimer execEveryDayTask *************************************"); |
|
|
|
|
|
|
|
|
|
|
|
Collection<String> redisKeys = redisService.keys(RedisConst.TASK_CODE_EX); |
|
|
|
|
|
for (String redisKey : redisKeys) { |
|
|
|
|
|
try { |
|
|
|
|
|
String[] keywords = StringUtils.split(redisKey, StringUtils.AT); |
|
|
|
|
|
if (keywords.length == 3) { |
|
|
|
|
|
String taskCode = keywords[1]; |
|
|
|
|
|
String fixedStartTime = keywords[2]; |
|
|
|
|
|
if (isTaskSlotEmpty(taskCode)) { |
|
|
|
|
|
long currentDays = TimeUnit.MILLISECONDS.toDays(System.currentTimeMillis()); |
|
|
|
|
|
long fixedDays = TimeUnit.MILLISECONDS.toDays(DateUtils.parse(DateUtils.yyyyMMddHHmmss2, fixedStartTime).getTime()); |
|
|
|
|
|
long currentMinutes = TimeUnit.MILLISECONDS.toMinutes(System.currentTimeMillis()); |
|
|
|
|
|
long fixedStartMinutes = TimeUnit.MILLISECONDS.toMinutes(DateUtils.parse(DateUtils.yyyyMMddHHmmss2, fixedStartTime).getTime()); |
|
|
|
|
|
if (currentDays == fixedDays && currentMinutes >= fixedStartMinutes) { |
|
|
|
|
|
extractRedisTask(redisKey, taskCode); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} catch (Exception e) { |
|
|
|
|
|
log.error("error", e); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@SuppressWarnings({"unused"}) |
|
|
|
|
|
public void makeEveryDayTask() { |
|
|
|
|
|
log.info("***************************** JobTaskTimer makeEveryDayTask *************************************"); |
|
|
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
|
taskExecClient.makeCurrentDayTask(); |
|
|
|
|
|
} catch (Exception e) { |
|
|
|
|
|
log.error("error", e); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
} |
|
|
} |