xiaofei 6 miesięcy temu
rodzic
commit
70a8b7c754

+ 2 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/BasicMessageServiceImpl.java

@@ -307,7 +307,7 @@ public class BasicMessageServiceImpl extends ServiceImpl<BasicMessageMapper, Bas
 
     @Override
     public void resendSmsTask() {
-        SysConfig sysConfig = sysConfigService.getByKey("sys.message.resendCount");
+        /*SysConfig sysConfig = sysConfigService.getByKey("sys.message.resendCount");
         if (sysConfig != null) {
             Integer resendCount = StringUtils.isBlank(sysConfig.getConfigValue()) ? 0 : Integer.valueOf(sysConfig.getConfigValue());
             QueryWrapper<BasicMessage> queryWrapper = new QueryWrapper<>();
@@ -318,7 +318,7 @@ public class BasicMessageServiceImpl extends ServiceImpl<BasicMessageMapper, Bas
                     this.saveMessageResendLog(basicMessage);
                 }
             }
-        }
+        }*/
     }
 
     @Override

+ 51 - 46
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/SmsSendServiceImpl.java

@@ -35,8 +35,10 @@ public class SmsSendServiceImpl implements SmsSendService {
     @Override
     public void sendSmsExpireTask() {
         SysConfig sysConfig = sysConfigService.getByKey("sys.warning.days");
-        if (sysConfig != null && StringUtils.isNotBlank(sysConfig.getConfigValue())) {
-            Integer configValue = Integer.valueOf(sysConfig.getConfigValue());
+//        if (sysConfig != null && StringUtils.isNotBlank(sysConfig.getConfigValue())) {
+        // 不发短信(update by 2024-11-19)
+        if (false) {
+            /*Integer configValue = Integer.valueOf(sysConfig.getConfigValue());
             // 当天15点
             Calendar c1 = Calendar.getInstance();
             c1.set(Calendar.HOUR_OF_DAY, 15);
@@ -83,7 +85,7 @@ public class SmsSendServiceImpl implements SmsSendService {
                     Long userId = Long.valueOf(keys[1]);
                     basicMessageService.sendNoticeExpireOrOverdue(schoolId, MessageEnum.NOTICE_OF_AUDIT_WILL_EXPIRE, userId, entry.getValue());
                 }
-            }
+            }*/
         }
     }
 
@@ -92,53 +94,56 @@ public class SmsSendServiceImpl implements SmsSendService {
      */
     @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();
+        // 不发短信(update by 2024-11-19)
+        if (false) {
+            // 当天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.SUBMIT.name()};
-        List<ExamTask> examTasks1 = examTaskMapper.listExamTaskExpire(startTime, endTime, examTaskStatus1);
-        if (examTasks1 != null && examTasks1.size() > 0) {
-            Map<String, List<String>> listMap = examTasks1.stream().collect(Collectors.groupingBy(m -> m.getSchoolId() + "#" + m.getUserId(), Collectors.mapping(m -> m.getId().toString(), Collectors.toList())));
-            for (Map.Entry<String, List<String>> entry : listMap.entrySet()) {
-                String[] keys = entry.getKey().split("#");
-                Long schoolId = Long.valueOf(keys[0]);
-                Long userId = Long.valueOf(keys[1]);
-                basicMessageService.sendNoticeExpireOrOverdue(schoolId, MessageEnum.NOTICE_OF_EXAM_TASK_OVERDUE, userId, entry.getValue());
+            // 1天前
+            Calendar cal = Calendar.getInstance();
+            cal.setTime(c1.getTime());
+            cal.add(Calendar.DATE, -1);
+            long startTime = cal.getTimeInMillis();
+            // 命题任务已逾期
+            String[] examTaskStatus1 = {ExamStatusEnum.SUBMIT.name()};
+            List<ExamTask> examTasks1 = examTaskMapper.listExamTaskExpire(startTime, endTime, examTaskStatus1);
+            if (examTasks1 != null && examTasks1.size() > 0) {
+                Map<String, List<String>> listMap = examTasks1.stream().collect(Collectors.groupingBy(m -> m.getSchoolId() + "#" + m.getUserId(), Collectors.mapping(m -> m.getId().toString(), Collectors.toList())));
+                for (Map.Entry<String, List<String>> entry : listMap.entrySet()) {
+                    String[] keys = entry.getKey().split("#");
+                    Long schoolId = Long.valueOf(keys[0]);
+                    Long userId = Long.valueOf(keys[1]);
+                    basicMessageService.sendNoticeExpireOrOverdue(schoolId, MessageEnum.NOTICE_OF_EXAM_TASK_OVERDUE, userId, entry.getValue());
+                }
             }
-        }
-        // 命题分配已逾期
-        String[] examTaskStatus2 = {ExamStatusEnum.SUBMIT.name()};
-        List<ExamTask> examTasks2 = examTaskMapper.listExamTaskExpire(startTime, endTime, examTaskStatus2);
-        if (examTasks2 != null && examTasks2.size() > 0) {
-            Map<String, List<String>> listMap = examTasks2.stream().collect(Collectors.groupingBy(m -> m.getSchoolId() + "#" + m.getCreateId(), Collectors.mapping(m -> m.getId().toString(), Collectors.toList())));
-            for (Map.Entry<String, List<String>> entry : listMap.entrySet()) {
-                String[] keys = entry.getKey().split("#");
-                Long schoolId = Long.valueOf(keys[0]);
-                Long userId = Long.valueOf(keys[1]);
-                basicMessageService.sendNoticeExpireOrOverdue(schoolId, MessageEnum.NOTICE_OF_ALLOCATION_OVERDUE, userId, entry.getValue());
+            // 命题分配已逾期
+            String[] examTaskStatus2 = {ExamStatusEnum.SUBMIT.name()};
+            List<ExamTask> examTasks2 = examTaskMapper.listExamTaskExpire(startTime, endTime, examTaskStatus2);
+            if (examTasks2 != null && examTasks2.size() > 0) {
+                Map<String, List<String>> listMap = examTasks2.stream().collect(Collectors.groupingBy(m -> m.getSchoolId() + "#" + m.getCreateId(), Collectors.mapping(m -> m.getId().toString(), Collectors.toList())));
+                for (Map.Entry<String, List<String>> entry : listMap.entrySet()) {
+                    String[] keys = entry.getKey().split("#");
+                    Long schoolId = Long.valueOf(keys[0]);
+                    Long userId = Long.valueOf(keys[1]);
+                    basicMessageService.sendNoticeExpireOrOverdue(schoolId, MessageEnum.NOTICE_OF_ALLOCATION_OVERDUE, userId, entry.getValue());
+                }
             }
-        }
 
-        // 审核待办已逾期
-        List<ExamTask> examTasks3 = examTaskMapper.listExamTaskAuditExpire(startTime, endTime);
-        if (examTasks3 != null && examTasks3.size() > 0) {
-            Map<String, List<String>> listMap = examTasks3.stream().collect(Collectors.groupingBy(m -> m.getSchoolId() + "#" + m.getCreateId(), Collectors.mapping(m -> m.getId().toString(), Collectors.toList())));
-            for (Map.Entry<String, List<String>> entry : listMap.entrySet()) {
-                String[] keys = entry.getKey().split("#");
-                Long schoolId = Long.valueOf(keys[0]);
-                Long userId = Long.valueOf(keys[1]);
-                basicMessageService.sendNoticeExpireOrOverdue(schoolId, MessageEnum.NOTICE_OF_AUDIT_OVERDUE, userId, entry.getValue());
-            }
+            // 审核待办已逾期
+            List<ExamTask> examTasks3 = examTaskMapper.listExamTaskAuditExpire(startTime, endTime);
+            if (examTasks3 != null && examTasks3.size() > 0) {
+                Map<String, List<String>> listMap = examTasks3.stream().collect(Collectors.groupingBy(m -> m.getSchoolId() + "#" + m.getCreateId(), Collectors.mapping(m -> m.getId().toString(), Collectors.toList())));
+                for (Map.Entry<String, List<String>> entry : listMap.entrySet()) {
+                    String[] keys = entry.getKey().split("#");
+                    Long schoolId = Long.valueOf(keys[0]);
+                    Long userId = Long.valueOf(keys[1]);
+                    basicMessageService.sendNoticeExpireOrOverdue(schoolId, MessageEnum.NOTICE_OF_AUDIT_OVERDUE, userId, entry.getValue());
+                }
+            }*/
         }
     }
 }

+ 3 - 3
distributed-print/src/main/java/com/qmth/distributed/print/start/StartRunning.java

@@ -55,7 +55,7 @@ public class StartRunning implements CommandLineRunner {
         expireJobMap.computeIfAbsent("name", v -> SendSmsExpireJob.class.getName());
         quartzService.deleteJob(JobEnum.SMS_NOTICE_TASK_EXPIRE_JOB.name(), JobEnum.SMS_NOTICE_TASK_EXPIRE_JOB.getGroupName());
         // 每天15点定时任务
-        quartzService.addJob(SendSmsExpireJob.class, JobEnum.SMS_NOTICE_TASK_EXPIRE_JOB.name(), JobEnum.SMS_NOTICE_TASK_EXPIRE_JOB.getGroupName(), "0 0 15 * * ?", expireJobMap);
+//        quartzService.addJob(SendSmsExpireJob.class, JobEnum.SMS_NOTICE_TASK_EXPIRE_JOB.name(), JobEnum.SMS_NOTICE_TASK_EXPIRE_JOB.getGroupName(), "0 0 15 * * ?", expireJobMap);
         log.info("服务器启动时执行,任务到期提醒定时任务 end");
 
         log.info("服务器启动时执行,任务逾期提醒定时任务 start");
@@ -63,7 +63,7 @@ public class StartRunning implements CommandLineRunner {
         orverdueJobMap.computeIfAbsent("name", v -> SendSmsOverdueJob.class.getName());
         quartzService.deleteJob(JobEnum.SMS_NOTICE_TASK_OVERDUE_JOB.name(), JobEnum.SMS_NOTICE_TASK_OVERDUE_JOB.getGroupName());
         // 每天9点定时任务
-        quartzService.addJob(SendSmsOverdueJob.class, JobEnum.SMS_NOTICE_TASK_OVERDUE_JOB.name(), JobEnum.SMS_NOTICE_TASK_OVERDUE_JOB.getGroupName(), "0 0 9 * * ?", orverdueJobMap);
+//        quartzService.addJob(SendSmsOverdueJob.class, JobEnum.SMS_NOTICE_TASK_OVERDUE_JOB.name(), JobEnum.SMS_NOTICE_TASK_OVERDUE_JOB.getGroupName(), "0 0 9 * * ?", orverdueJobMap);
         log.info("服务器启动时执行,任务逾期提醒定时任务 end");
 
         log.info("服务器启动时执行,短信发送失败重发定时任务 start");
@@ -71,7 +71,7 @@ public class StartRunning implements CommandLineRunner {
         rensendJobMap.computeIfAbsent("name", v -> ResendSmsJob.class.getName());
         quartzService.deleteJob(JobEnum.SMS_NOTICE_TASK_RESEND_JOB.name(), JobEnum.SMS_NOTICE_TASK_RESEND_JOB.getGroupName());
         // 每隔1小时定时任务
-        quartzService.addJob(ResendSmsJob.class, JobEnum.SMS_NOTICE_TASK_RESEND_JOB.name(), JobEnum.SMS_NOTICE_TASK_RESEND_JOB.getGroupName(), "0 0/30 * * * ?", rensendJobMap);
+//        quartzService.addJob(ResendSmsJob.class, JobEnum.SMS_NOTICE_TASK_RESEND_JOB.name(), JobEnum.SMS_NOTICE_TASK_RESEND_JOB.getGroupName(), "0 0/30 * * * ?", rensendJobMap);
         log.info("服务器启动时执行,短信发送失败重发定时任务 end");
 
         log.info("服务器启动时执行,MQ信息同步定时任务 start");

+ 2 - 2
teachcloud-mark/src/main/resources/mapper/MarkStudentMapper.xml

@@ -125,7 +125,7 @@
                         AND (ms.is_absent = 0 and ms.omr_absent = 0 and ms.is_manual_absent = 0 and bes.status != 'M' and ms.scan_status = 'SCANNED' AND ms.is_upload = 1)
                     </when>
                     <otherwise>
-                        AND (ms.scan_status = 'UNEXIST')
+                        AND (ms.scan_status = 'UNEXIST' and ms.is_absent = 0 and ms.omr_absent = 0 and ms.is_manual_absent = 0 and bes.status != 'M')
                     </otherwise>
                 </choose>
             </if>
@@ -493,7 +493,7 @@
             </choose>
         </if>
         <if test="req.orderType == null or req.orderType == '' or req.orderField == null or req.orderField == ''">
-            order by bes.status desc, bes.student_code
+            order by s.is_absent, bes.status desc, bes.student_code
         </if>
     </select>
     <sql id="archiveQuery">