|
@@ -1090,25 +1090,25 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
return reviewSampleDtoList.get(0);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 统计截止到当天为止的即将逾期的审核待办任务总数
|
|
|
+ */
|
|
|
@Override
|
|
|
public void sendSmsExpireTask() {
|
|
|
SysConfig sysConfig = sysConfigService.getByKey("sys.warning.days");
|
|
|
if (sysConfig != null && StringUtils.isNotBlank(sysConfig.getConfigValue())) {
|
|
|
Integer configValue = Integer.valueOf(sysConfig.getConfigValue());
|
|
|
// 当天15点
|
|
|
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd 15:00:00");
|
|
|
- Date thirteenDate = null;
|
|
|
- try {
|
|
|
- thirteenDate = sdf.parse(sdf.format(new Date()));
|
|
|
- } catch (ParseException e) {
|
|
|
- log.error("定时发送到期预警短信,时间格式化错误");
|
|
|
- }
|
|
|
- long startTime = thirteenDate.getTime();
|
|
|
- // 3天前
|
|
|
- Calendar cal = Calendar.getInstance();
|
|
|
- cal.setTime(thirteenDate);
|
|
|
- cal.add(Calendar.DATE, configValue);
|
|
|
- long endTime = cal.getTimeInMillis();
|
|
|
+ Calendar c1 = Calendar.getInstance();
|
|
|
+ c1.set(Calendar.HOUR_OF_DAY, 15);
|
|
|
+ c1.set(Calendar.MINUTE, 0);
|
|
|
+ c1.set(Calendar.SECOND, 0);
|
|
|
+ long startTime = c1.getTimeInMillis();
|
|
|
+ // 3天后
|
|
|
+ Calendar c2 = Calendar.getInstance();
|
|
|
+ c2.setTime(c1.getTime());
|
|
|
+ c2.add(Calendar.DATE, configValue);
|
|
|
+ long endTime = c2.getTimeInMillis();
|
|
|
// 命题任务到期预警
|
|
|
String[] examTaskStatus1 = {ExamStatusEnum.READY.name(), ExamStatusEnum.STAGE.name()};
|
|
|
List<ExamTask> examTasks1 = this.baseMapper.listExamTaskExpire(startTime, endTime, examTaskStatus1);
|
|
@@ -1129,7 +1129,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
}
|
|
|
|
|
|
// 审核待办到期预警
|
|
|
- List<ExamTask> examTasks3 = this.baseMapper.listExamTaskAuditExpire(startTime, endTime, examTaskStatus2);
|
|
|
+ List<ExamTask> examTasks3 = this.baseMapper.listExamTaskAuditExpire(startTime, endTime);
|
|
|
if (examTasks3 != null && examTasks3.size() > 0) {
|
|
|
Map<Long, List<String>> listMap = examTasks3.stream().collect(Collectors.groupingBy(ExamTask::getCreateId, Collectors.mapping(m -> m.getId().toString(), Collectors.toList())));
|
|
|
for (Map.Entry<Long, List<String>> entry : listMap.entrySet()) {
|
|
@@ -1138,4 +1138,50 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 统计当天逾期的审核任务增量
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public void sendSmsOverdueTask() {
|
|
|
+ // 当天9点
|
|
|
+ Calendar c1 = Calendar.getInstance();
|
|
|
+ c1.set(Calendar.HOUR_OF_DAY, 9);
|
|
|
+ c1.set(Calendar.MINUTE, 0);
|
|
|
+ c1.set(Calendar.SECOND, 0);
|
|
|
+ long endTime = c1.getTimeInMillis();
|
|
|
+
|
|
|
+ // 1天前
|
|
|
+ Calendar cal = Calendar.getInstance();
|
|
|
+ cal.setTime(c1.getTime());
|
|
|
+ cal.add(Calendar.DATE, -1);
|
|
|
+ long startTime = cal.getTimeInMillis();
|
|
|
+ // 命题任务已逾期
|
|
|
+ String[] examTaskStatus1 = {ExamStatusEnum.READY.name(), ExamStatusEnum.STAGE.name()};
|
|
|
+ List<ExamTask> examTasks1 = this.baseMapper.listExamTaskExpire(startTime, endTime, examTaskStatus1);
|
|
|
+ if (examTasks1 != null && examTasks1.size() > 0) {
|
|
|
+ Map<Long, List<String>> listMap = examTasks1.stream().collect(Collectors.groupingBy(ExamTask::getUserId, Collectors.mapping(m -> m.getId().toString(), Collectors.toList())));
|
|
|
+ for (Map.Entry<Long, List<String>> entry : listMap.entrySet()) {
|
|
|
+ basicMessageService.sendNoticeExpireOrOverdue(MessageEnum.NOTICE_OF_EXAM_TASK_OVERDUE, entry.getKey(), entry.getValue());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 命题分配已逾期
|
|
|
+ String[] examTaskStatus2 = {ExamStatusEnum.NEW.name()};
|
|
|
+ List<ExamTask> examTasks2 = this.baseMapper.listExamTaskExpire(startTime, endTime, examTaskStatus2);
|
|
|
+ if (examTasks2 != null && examTasks2.size() > 0) {
|
|
|
+ Map<Long, List<String>> listMap = examTasks2.stream().collect(Collectors.groupingBy(ExamTask::getCreateId, Collectors.mapping(m -> m.getId().toString(), Collectors.toList())));
|
|
|
+ for (Map.Entry<Long, List<String>> entry : listMap.entrySet()) {
|
|
|
+ basicMessageService.sendNoticeExpireOrOverdue(MessageEnum.NOTICE_OF_ALLOCATION_OVERDUE, entry.getKey(), entry.getValue());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 审核待办已逾期
|
|
|
+ List<ExamTask> examTasks3 = this.baseMapper.listExamTaskAuditExpire(startTime, endTime);
|
|
|
+ if (examTasks3 != null && examTasks3.size() > 0) {
|
|
|
+ Map<Long, List<String>> listMap = examTasks3.stream().collect(Collectors.groupingBy(ExamTask::getCreateId, Collectors.mapping(m -> m.getId().toString(), Collectors.toList())));
|
|
|
+ for (Map.Entry<Long, List<String>> entry : listMap.entrySet()) {
|
|
|
+ basicMessageService.sendNoticeExpireOrOverdue(MessageEnum.NOTICE_OF_AUDIT_OVERDUE, entry.getKey(), entry.getValue());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|