xiaofei hai 7 meses
pai
achega
649aa34c06

+ 1 - 15
distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/service/impl/PdfTaskLogicServiceImpl.java

@@ -186,7 +186,6 @@ public class PdfTaskLogicServiceImpl implements PdfTaskLogicService {
                 ExamTaskDetail examTaskDetail = createPdfUtil.extractPaperType(tbTaskPdf, examDetailCourse);
                 List<ExamStudent> examStudentList = examStudentService.listByExamDetailCourseId(examDetailCourse.getId());
                 // 考生实际关联试卷类型
-                List<String> relatePaperTypes = new ArrayList<>();
                 List<String> paperTypes = Arrays.stream(examTaskDetail.getPaperType().split(",")).sorted(Comparator.comparing(String::valueOf)).collect(Collectors.toList());
                 if (CollectionUtils.isNotEmpty(examStudentList)) {
                     AtomicInteger atomicInteger = new AtomicInteger(0);
@@ -194,24 +193,11 @@ public class PdfTaskLogicServiceImpl implements PdfTaskLogicService {
                         int i1 = atomicInteger.getAndIncrement();
                         int mod = i1 % paperTypes.size();
                         examStudent.setPaperType(paperTypes.get(mod));
-                        if (!relatePaperTypes.contains(examStudent.getPaperType())) {
-                            relatePaperTypes.add(examStudent.getPaperType());
-                        }
                     }
-                } else if (examDetailCourse.getTotalSubjects() != null) {
-                    if (examDetailCourse.getTotalSubjects().intValue() - paperTypes.size() >= 0) {
-                        relatePaperTypes.addAll(paperTypes);
-                    } else {
-                        for (int i = 0; i < examDetailCourse.getTotalSubjects().intValue(); i++) {
-                            relatePaperTypes.add(paperTypes.get(i));
-                        }
-                    }
-                } else {
-                    relatePaperTypes.addAll(paperTypes);
                 }
 
                 examDetailCourse.setSerialNumber(examTaskDetail.getSerialNumber());
-                examDetailCourse.setPaperType(String.join(",", relatePaperTypes));
+                examDetailCourse.setPaperType(examTaskDetail.getPaperType());
                 examDetailCourseService.updateById(examDetailCourse);
 
                 examStudentService.updateBatchById(examStudentList);

+ 1 - 1
distributed-print/install/mysql/init/teachcloud_db.sql

@@ -5419,7 +5419,7 @@ CREATE TABLE IF NOT EXISTS `t_b_session` (
   `school_id` bigint DEFAULT NULL COMMENT '学校id',
   `org_id` bigint DEFAULT NULL COMMENT '机构id',
   `identity` varchar(100) NOT NULL COMMENT '用户标识',
-  `type` varchar(50) NOT NULL COMMENT '用户类型',
+  `type` varchar(200) NOT NULL COMMENT '用户类型',
   `source` varchar(50) NOT NULL COMMENT '访问来源',
   `platform` varchar(50) NOT NULL COMMENT '设备分类',
   `device_id` varchar(100) NOT NULL COMMENT '设备标识',

+ 2 - 0
distributed-print/install/mysql/upgrade/3.4.2.sql

@@ -147,3 +147,5 @@ update mark_paper set paper_file_path = concat('[',paper_file_path, ']') where p
 
 -- 2024-11-11
 ALTER TABLE obe_course_outline MODIFY COLUMN course_type varchar(50) NOT NULL COMMENT '课程类别';
+
+ALTER TABLE `t_b_session` CHANGE COLUMN `type` `type` VARCHAR(200) NOT NULL COMMENT '用户类型' ;

+ 2 - 2
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/MarkStudentServiceImpl.java

@@ -1118,12 +1118,12 @@ public class MarkStudentServiceImpl extends ServiceImpl<MarkStudentMapper, MarkS
     public UpdateTimeVo confirm(Long examId, String coursePaperId, String studentCode, Boolean omrAbsent) {
         MarkStudent student = findByExamIdAndCoursePaperIdAndStudentCode(examId, coursePaperId, studentCode);
         LambdaUpdateWrapper<MarkStudent> lw = new LambdaUpdateWrapper<>();
+
         lw.set(MarkStudent::getOmrAbsentChecked, true);
+        lw.set(MarkStudent::getOmrAbsent, omrAbsent);
         if (omrAbsent) {
             lw.set(MarkStudent::getObjectiveScore, null);
             lw.set(MarkStudent::getObjectiveScoreList, null);
-        } else {
-            lw.set(MarkStudent::getOmrAbsent, false);
         }
         lw.eq(MarkStudent::getId, student.getId());
         update(lw);

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

@@ -843,7 +843,8 @@
                ms.is_absent absent,
                ms.is_upload upload,
                ms.is_manual_absent manualAbsent,
-               ms.omr_absent
+               ms.omr_absent,
+               ms.omr_absent_checked
                from mark_student ms
             LEFT JOIN
             basic_exam_student bes on ms.basic_student_id = bes.id