xiaofei 8 kuukautta sitten
vanhempi
commit
d320dbd1db

+ 36 - 12
distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/service/impl/ImportLogicServiceImpl.java

@@ -134,7 +134,7 @@ public class ImportLogicServiceImpl implements ImportLogicService {
 
         BasicSchool basicSchool = commonCacheService.schoolCache(schoolId);
         // 学校设置强制校验卷型或者模式4
-        boolean needPaperNumber = (basicSchool.getHasPaperNumber() != null && basicSchool.getHasPaperNumber()) || ExamModelEnum.MODEL4.equals(basicExam.getExamModel());
+        boolean needPaperNumber = (basicSchool.getHasPaperNumber() != null && basicSchool.getHasPaperNumber());
         // 试卷编号->课程
         Map<String, Long> paperNumberCourseIdMap = new HashMap<>();
         // 试卷编号->考试时间
@@ -158,20 +158,44 @@ public class ImportLogicServiceImpl implements ImportLogicService {
             StringJoiner stringJoiner = new StringJoiner(";");
             // 校验excel内容
             basicExamStudentImport.getRequiredFieldList().forEach(m -> {
-                // 通用规则中基础字段默认不可取消的,必填
-                if (m.getDisabled() && StringUtils.isBlank(m.getValue())) {
-                    stringJoiner.add(m.getName() + "必填");
-                }
-                if (m.getCode().equals(RequiredFieldsEnum.PAPER_NUMBER.getCode()) && needPaperNumber) {
-                    if (StringUtils.isBlank(m.getValue())) {
+                // 模式4必填字段校验
+                if(ExamModelEnum.MODEL4.equals(basicExam.getExamModel())){
+                    if(StringUtils.isBlank(basicExamStudentImport.getPaperNumber())){
+                        stringJoiner.add(RequiredFieldsEnum.PAPER_NUMBER.getName() + "必填");
+                    }
+                    if(StringUtils.isBlank(basicExamStudentImport.getStudentCode())){
+                        stringJoiner.add(RequiredFieldsEnum.STUDENT_CODE.getName() + "必填");
+                    }
+                    if(StringUtils.isBlank(basicExamStudentImport.getStudentName())){
+                        stringJoiner.add(RequiredFieldsEnum.STUDENT_NAME.getName() + "必填");
+                    }
+                    if(StringUtils.isBlank(basicExamStudentImport.getCourseCode())){
+                        stringJoiner.add(RequiredFieldsEnum.COURSE_CODE.getName() + "必填");
+                    }
+                    if(StringUtils.isBlank(basicExamStudentImport.getCourseName())){
+                        stringJoiner.add(RequiredFieldsEnum.COURSE_NAME.getName() + "必填");
+                    }
+                    if(StringUtils.isBlank(basicExamStudentImport.getTeachingRoomName())){
+                        stringJoiner.add(RequiredFieldsEnum.TEACHING_ROOM_NAME.getName() + "必填");
+                    }
+                    if(StringUtils.isBlank(basicExamStudent.getTeachClassName())){
+                        stringJoiner.add(RequiredFieldsEnum.TEACH_CLASS_NAME.getName() + "必填");
+                    }
+                } else {
+                    // 通用规则中基础字段默认不可取消的,必填
+                    if (m.getDisabled() && StringUtils.isBlank(m.getValue())) {
                         stringJoiner.add(m.getName() + "必填");
                     }
+                    if (m.getCode().equals(RequiredFieldsEnum.PAPER_NUMBER.getCode()) && needPaperNumber) {
+                        if (StringUtils.isBlank(m.getValue())) {
+                            stringJoiner.add(m.getName() + "必填");
+                        }
+                    }
                 }
-
-                // 试卷编号不为空时,校区(考点)必填
-                if (StringUtils.isNotBlank(basicExamStudent.getPaperNumber()) && m.getCode().equals(RequiredFieldsEnum.EXAM_PLACE.getCode()) && m.getEnable() && StringUtils.isBlank(basicExamStudent.getExamPlace())) {
-                    stringJoiner.add(RequiredFieldsEnum.EXAM_PLACE.getName() + "必填");
-                }
+//                // 试卷编号不为空时,校区(考点)必填
+//                if (StringUtils.isNotBlank(basicExamStudent.getPaperNumber()) && m.getCode().equals(RequiredFieldsEnum.EXAM_PLACE.getCode()) && m.getEnable() && StringUtils.isBlank(basicExamStudent.getExamPlace())) {
+//                    stringJoiner.add(RequiredFieldsEnum.EXAM_PLACE.getName() + "必填");
+//                }
             });
             // 任课老师和任课老师工号都有值或都没值
             if (StringUtils.isNotBlank(basicExamStudentImport.getTeacherCode()) && StringUtils.isBlank(basicExamStudentImport.getTeacherName())) {

+ 2 - 2
distributed-print/install/config.ini

@@ -1,6 +1,6 @@
 [app]
-version=3.4.1
-name=֪ѧ֪��
+version=3.4.2
+name=֪ѧ֪¿¼
 portal=http://localhost:7400/
 module=print
 depend=mysql,nginx,redis

+ 0 - 5
distributed-print/install/nginx/teachcloud.conf

@@ -14,11 +14,6 @@ server {
                 add_header Access-Control-Allow-Origin *;
         }
 
-        location /fss/ {
-                alias ../../teachcloud/static/;
-                add_header Access-Control-Allow-Origin *;
-        }
-
         location /mark/ {
                 alias  ../../teachcloud/web/mark/;
                 index  index.html index.htm;

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

@@ -1149,9 +1149,11 @@ public class MarkStudentServiceImpl extends ServiceImpl<MarkStudentMapper, MarkS
         for (MarkQuestion question : oQuestionList) {
             columnNameList.add(question.getMainTitle() + " " + question.getMainNumber() + "-" + question.getSubNumber() + "选项");
             columnNameList.add(question.getMainTitle() + " " + question.getMainNumber() + "-" + question.getSubNumber() + "得分");
+            columnNameList.add(question.getMainTitle() + " " + question.getMainNumber() + "-" + question.getSubNumber() + "满分");
         }
         for (MarkQuestion question : sQuestionList) {
             columnNameList.add(question.getMainTitle() + " " + question.getMainNumber() + "-" + question.getSubNumber());
+            columnNameList.add(question.getMainTitle() + " " + question.getMainNumber() + "-" + question.getSubNumber() + "满分");
         }
         String[] columnNames = columnNameList.toArray(new String[0]);
         //生成动态内容
@@ -1159,6 +1161,7 @@ public class MarkStudentServiceImpl extends ServiceImpl<MarkStudentMapper, MarkS
         // 使用成绩管理列表请求的数据权限
         DataPermissionRule dpr = basicRoleDataPermissionService.findDataPermission(sysUser.getSchoolId(), sysUser.getId(), "/api/admin/mark/archive/score/list");
         List<ArchiveStudentVo> ret = baseMapper.studentList(sysUser.getSchoolId(), query, dpr);
+
         for (ArchiveStudentVo s : ret) {
             List<String> valueList = new ArrayList<>();
             valueList.add(s.getStudentName());
@@ -1175,9 +1178,11 @@ public class MarkStudentServiceImpl extends ServiceImpl<MarkStudentMapper, MarkS
             for (ScoreItem item : s.getScoreList(true, oQuestionList)) {
                 valueList.add(item.getAnswer());
                 valueList.add(item.getScore() == null ? "" : item.getScore().toString());
+                valueList.add(item.getTotalScore() == null ? "" : item.getTotalScore().toString());
             }
             for (ScoreItem item : s.getScoreList(false, sQuestionList)) {
                 valueList.add(item.getScore().toString());
+                valueList.add(item.getTotalScore() == null ? "" : item.getTotalScore().toString());
             }
             String[] columnValue = valueList.toArray(new String[0]);
             columnValues.add(columnValue);
@@ -1185,6 +1190,17 @@ public class MarkStudentServiceImpl extends ServiceImpl<MarkStudentMapper, MarkS
         try {
             log.debug("导出Excel开始...");
             ExcelWriter writer = ExcelWriter.create(ExcelType.XLSX);
+
+//            CellStyle cellStyle = writer.createCellStyle();
+//            cellStyle.setDataFormat((short) 1);
+//            org.apache.poi.ss.usermodel.Font font1 = writer.createFont();
+//            font1.setBold(true);
+//            font1.setFontHeightInPoints((short) 20);
+//            cellStyle.setFont(font1);
+//            cellStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());
+//            cellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
+//            writer.setCellStyle("成绩导出", cellStyle, 1, new int[]{8, 9, 10, 12, 14});
+
             writer.writeDataArrays("成绩导出", null, columnNames, columnValues.listIterator());
             writer.output(outputStream);
             outputStream.flush();

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

@@ -445,7 +445,7 @@
             </choose>
         </if>
         <if test="req.orderType == null or req.orderType == '' or req.orderField == null or req.orderField == ''">
-            order by bes.student_code
+            order by bes.status desc, bes.student_code
         </if>
     </select>
     <sql id="archiveQuery">