浏览代码

3.3.1 联调bug

xiaofei 1 年之前
父节点
当前提交
dfbc69d801

+ 0 - 18
distributed-print-business/src/main/resources/db/log/脚本-caozx.sql

@@ -1,18 +0,0 @@
-ALTER TABLE `teach_clazz` 
-DROP INDEX `teach_clazz_unique` ;
-;
-ALTER TABLE `teach_clazz` 
-DROP COLUMN `basic_course_id`,
-DROP COLUMN `teach_clazz_name`,
-DROP COLUMN `teach_clazz_code`,
-ADD COLUMN `teach_course_id` BIGINT NOT NULL AFTER `school_id`,
-ADD COLUMN `basic_teach_clazz_id` BIGINT NOT NULL AFTER `teach_course_id`,
-ADD COLUMN `clazz_name` VARCHAR(50) NOT NULL COMMENT '教学课程名称' AFTER `user_id`;
-ALTER TABLE `teach_clazz` 
-ADD UNIQUE INDEX `teach_clazz_unique` (`teach_course_id` ASC, `basic_teach_clazz_id` ASC) VISIBLE;
-;
-
-
-INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('1127', '共用接口-查询教学班字典', '/api/admin/basic/condition/list_basic_teach_clazz', 'URL', '149', '16', 'SYS', '1', '1', '1');
-ALTER TABLE `teach_student` 
-CHANGE COLUMN `basic_course_id` `teach_course_id` BIGINT NOT NULL COMMENT '教学课程id(冗余)' ;

+ 18 - 0
distributed-print/install/mysql/upgrade/3.3.1.sql

@@ -563,3 +563,21 @@ INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence
 INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('786', '课程目标达成度模板配置查询', '/api/admin/set/course/degree/select', 'URL', '508', '15', 'AUTH', '1', '0', '1');
 INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('787', '课程目标达成度模板配置保存', '/api/admin/set/course/degree/save', 'URL', '508', '16', 'AUTH', '1', '0', '1');
 UPDATE `sys_privilege` SET `related` = '466,467,494,544,585,586,587,588' WHERE (`id` = '582');
+
+-- 2024/03/08
+ALTER TABLE `teach_clazz`
+DROP INDEX `teach_clazz_unique` ;
+ALTER TABLE `teach_clazz`
+DROP COLUMN `basic_course_id`,
+DROP COLUMN `teach_clazz_name`,
+DROP COLUMN `teach_clazz_code`,
+ADD COLUMN `teach_course_id` BIGINT NOT NULL AFTER `school_id`,
+ADD COLUMN `basic_teach_clazz_id` BIGINT NOT NULL AFTER `teach_course_id`,
+ADD COLUMN `clazz_name` VARCHAR(50) NOT NULL COMMENT '教学课程名称' AFTER `user_id`;
+ALTER TABLE `teach_clazz`
+    ADD UNIQUE INDEX `teach_clazz_unique` (`teach_course_id` ASC, `basic_teach_clazz_id` ASC);
+
+
+INSERT INTO `sys_privilege` (`id`, `name`, `url`, `type`, `parent_id`, `sequence`, `property`, `enable`, `default_auth`, `front_display`) VALUES ('1127', '共用接口-查询教学班字典', '/api/admin/basic/condition/list_basic_teach_clazz', 'URL', '149', '16', 'SYS', '1', '1', '1');
+ALTER TABLE `teach_student`
+    CHANGE COLUMN `basic_course_id` `teach_course_id` BIGINT NOT NULL COMMENT '教学课程id(冗余)' ;

+ 1 - 1
distributed-print/src/main/java/com/qmth/distributed/print/api/SysAdminSetController.java

@@ -424,7 +424,7 @@ public class SysAdminSetController {
         SysConfigResult sysConfigResult = new SysConfigResult();
         if (sysConfig != null) {
             sysConfigResult = new SysConfigResult(sysConfig);
-            sysConfigResult.setValue(fileUploadService.filePreview((Long) sysConfigResult.getValue()));
+            sysConfigResult.setValue(fileUploadService.filePreview(Long.valueOf(sysConfigResult.getValue().toString())));
         }
         return ResultUtil.ok(sysConfigResult);
     }

+ 2 - 1
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/entity/MarkDocument.java

@@ -52,7 +52,7 @@ public class MarkDocument implements Serializable {
     public MarkDocument() {
     }
 
-    public MarkDocument(Long examId, String courseCode, String courseName, String paperNumber, DocumentType type, String name) {
+    public MarkDocument(Long examId, String courseCode, String courseName, String paperNumber, DocumentType type, String name, Integer fileCount) {
         this.id = SystemConstant.getDbUuid();
         this.examId = examId;
         this.courseCode = courseCode;
@@ -60,6 +60,7 @@ public class MarkDocument implements Serializable {
         this.paperNumber = paperNumber;
         this.type = type;
         this.name = name;
+        this.fileCount = fileCount;
     }
 
     public Long getId() {

+ 48 - 14
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/MarkDocumentServiceImpl.java

@@ -1,14 +1,18 @@
 package com.qmth.teachcloud.mark.service.impl;
 
 import java.io.IOException;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Objects;
 
 import javax.annotation.Resource;
 
+import com.qmth.teachcloud.mark.entity.ScanPackage;
+import com.qmth.teachcloud.mark.service.ScanPackageService;
 import org.apache.commons.codec.digest.DigestUtils;
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.io.FilenameUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.web.multipart.MultipartFile;
 
@@ -42,9 +46,10 @@ public class MarkDocumentServiceImpl extends ServiceImpl<MarkDocumentMapper, Mar
     private MarkFileService markFileService;
     @Resource
     private TeachcloudCommonService teachcloudCommonService;
-
     @Resource
     private MarkPaperService markPaperService;
+    @Resource
+    private ScanPackageService scanPackageService;
 
     @Override
     public List<MarkDocument> listByExamIdAndPaperNumber(Long examId, String paperNumber) {
@@ -61,26 +66,26 @@ public class MarkDocumentServiceImpl extends ServiceImpl<MarkDocumentMapper, Mar
     @Override
     public String importById(Long id, MultipartFile file, String md5) {
         MarkDocument document = this.getById(id);
-        if(document==null){
+        if (document == null) {
             throw ExceptionResultEnum.ERROR.exception("文档不存在");
         }
-        if(document.getType().equals(DocumentType.CUSTOM)
-                ||document.getType().equals(DocumentType.SYLLABUS)
-                ||document.getType().equals(DocumentType.PROCESS_SCORE)
-                ||document.getType().equals(DocumentType.PAPER_REPORT)
-                ||document.getType().equals(DocumentType.CHECK_IN)){
+        if (document.getType().equals(DocumentType.CUSTOM)
+                || document.getType().equals(DocumentType.SYLLABUS)
+                || document.getType().equals(DocumentType.PROCESS_SCORE)
+                || document.getType().equals(DocumentType.PAPER_REPORT)
+                || document.getType().equals(DocumentType.CHECK_IN)) {
             try {
-                String fileMd5  = DigestUtils.md5Hex(file.getBytes());
+                String fileMd5 = DigestUtils.md5Hex(file.getBytes());
                 if (!Objects.equals(fileMd5, md5)) {
                     throw ExceptionResultEnum.MD5_EQUALS_FALSE.exception();
                 }
                 String format = FilenameUtils.getExtension(file.getOriginalFilename());
                 String name = document.getType().getName();
-                if(document.getType().equals(DocumentType.CUSTOM)){
+                if (document.getType().equals(DocumentType.CUSTOM)) {
                     name = document.getName();
                 }
                 String path = markFileService.uploadDocument(file.getInputStream(),
-                        md5,document.getExamId(),document.getPaperNumber(),String.valueOf(document.getType().getValue()),document.getName(),format);
+                        md5, document.getExamId(), document.getPaperNumber(), String.valueOf(document.getType().getValue()), document.getName(), format);
                 UpdateWrapper<MarkDocument> updateWrapper = new UpdateWrapper<>();
                 updateWrapper.lambda().set(MarkDocument::getFilePath, path)
                         .set(MarkDocument::getFileCount, 1)
@@ -91,7 +96,7 @@ public class MarkDocumentServiceImpl extends ServiceImpl<MarkDocumentMapper, Mar
                 log.error(SystemConstant.LOG_ERROR, e);
                 throw new ParameterException("上传失败", e);
             }
-        }else{
+        } else {
             throw ExceptionResultEnum.ERROR.exception("文档类型不正确");
         }
     }
@@ -155,11 +160,40 @@ public class MarkDocumentServiceImpl extends ServiceImpl<MarkDocumentMapper, Mar
     public void initMarkDocument(MarkPaper markPaper) {
         List<MarkDocument> markDocumentList = this.listByExamIdAndPaperNumber(markPaper.getExamId(), markPaper.getPaperNumber());
         if (CollectionUtils.isEmpty(markDocumentList)) {
+            List<MarkDocument> markDocuments = new ArrayList<>();
             for (DocumentType documentType : DocumentType.getOptionList(false)) {
-                MarkDocument markDocument = new MarkDocument(markPaper.getExamId(), markPaper.getCourseCode(), markPaper.getCourseName(), markPaper.getPaperNumber(), documentType, documentType.getName());
-            }
-        } else {
+                MarkDocument markDocument = new MarkDocument(markPaper.getExamId(), markPaper.getCourseCode(), markPaper.getCourseName(), markPaper.getPaperNumber(), documentType, documentType.getName(), 0);
+                if (documentType.equals(DocumentType.PAPER)) {
+                    if (StringUtils.isNotBlank(markPaper.getPaperFilePath())) {
+                        markDocument.setFileCount(1);
+                        markDocument.setFilePath(markPaper.getPaperFilePath());
+                    }
+                } else if (documentType.equals(DocumentType.ANSWER)) {
+                    if (StringUtils.isNotBlank(markPaper.getAnswerFilePath())) {
+                        markDocument.setFileCount(1);
+                        markDocument.setFilePath(markPaper.getAnswerFilePath());
+                    }
+                } else if (documentType.equals(DocumentType.PAPER_REPORT)) {
+                    markDocument.setFileCount(1);
+                } else if (documentType.equals(DocumentType.APPROVE_RECORD)) {
+                    markDocument.setFileCount(1);
+                } else if (documentType.equals(DocumentType.SCORE)) {
+                    markDocument.setFileCount(1);
+                } else if (documentType.equals(DocumentType.SCORE_REPORT)) {
+                    markDocument.setFileCount(1);
+                } else if (documentType.equals(DocumentType.SHEET)) {
+                    markDocument.setFileCount(markPaper.getUploadCount());
+                } else if (documentType.equals(DocumentType.TRACK)) {
+                    markDocument.setFileCount(markPaper.getUploadCount());
+                } else if (documentType.equals(DocumentType.SIGN)) {
+                    List<ScanPackage> scanPackageList = scanPackageService.listByExamIdAndCoursePaperIdAndPackageCode(markPaper.getExamId(), markPaper.getCoursePaperId(), null);
+                    markDocument.setFileCount(scanPackageList.size());
+                } else if (documentType.equals(DocumentType.CHECK_IN)) {
 
+                }
+                markDocuments.add(markDocument);
+            }
+            this.saveBatch(markDocuments);
         }
     }
 }