소스 검색

导出dbf图片信息加排序

xiatian 7 달 전
부모
커밋
29b15b1d5e

+ 23 - 4
src/main/java/cn/com/qmth/scancentral/service/impl/StudentServiceImpl.java

@@ -10,7 +10,6 @@ import java.util.Arrays;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.HashSet;
-import java.util.LinkedHashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
@@ -22,7 +21,6 @@ import java.util.stream.Collectors;
 
 import javax.validation.constraints.NotNull;
 
-import cn.com.qmth.scancentral.service.*;
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.IOUtils;
@@ -97,6 +95,25 @@ import cn.com.qmth.scancentral.enums.UploadStatus;
 import cn.com.qmth.scancentral.exception.NotFoundExceptions;
 import cn.com.qmth.scancentral.exception.ParameterExceptions;
 import cn.com.qmth.scancentral.model.ManualAbsentImportDTO;
+import cn.com.qmth.scancentral.service.AnswerCardService;
+import cn.com.qmth.scancentral.service.AnswerCardSubjectService;
+import cn.com.qmth.scancentral.service.AssignedCheckHistoryService;
+import cn.com.qmth.scancentral.service.AsyncTaskService;
+import cn.com.qmth.scancentral.service.BatchService;
+import cn.com.qmth.scancentral.service.ExamRoomService;
+import cn.com.qmth.scancentral.service.ExamService;
+import cn.com.qmth.scancentral.service.FileService;
+import cn.com.qmth.scancentral.service.MarkSiteService;
+import cn.com.qmth.scancentral.service.OmrGroupService;
+import cn.com.qmth.scancentral.service.OmrTaskService;
+import cn.com.qmth.scancentral.service.PaperPageService;
+import cn.com.qmth.scancentral.service.PaperService;
+import cn.com.qmth.scancentral.service.QuestionService;
+import cn.com.qmth.scancentral.service.StudentPaperService;
+import cn.com.qmth.scancentral.service.StudentService;
+import cn.com.qmth.scancentral.service.SubjectService;
+import cn.com.qmth.scancentral.service.ToolExportService;
+import cn.com.qmth.scancentral.service.UserService;
 import cn.com.qmth.scancentral.support.SpringContextHolder;
 import cn.com.qmth.scancentral.support.TaskLock;
 import cn.com.qmth.scancentral.support.TaskLockUtil;
@@ -1339,7 +1356,7 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, StudentEntity> i
         }
         student.setAnswer(getCetAnswer(structs, pages, student.getSubjectCode()));
         AnswerCardEntity card = getCard(cardMap, student.getExamId(), student.getCardNumber());
-        Set<String> sliceSet = new LinkedHashSet<>();
+        Set<String> sliceSet = new HashSet<>();
         setCardStatus(paperTypeBarcodeContents, student, card, pages, pmap);
         int index = 0;
         for (PaperPageCetVo p : pages) {
@@ -1351,10 +1368,12 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, StudentEntity> i
                 }
             }
         }
+        List<String> sliceNameList = new ArrayList<>(sliceSet);
+        sliceNameList.sort((v1, v2) -> Integer.parseInt(v1) > Integer.parseInt(v2) ? 1 : -1);
         // 获取图片大小
         List<String> sliceImageInfo = new ArrayList<String>();
         student.setSliceImageInfo(sliceImageInfo);
-        for (String sliceName : sliceSet) {
+        for (String sliceName : sliceNameList) {
             String mirrorSlicePath = toolExportService.getCetSliceUri(student.getExamId(), student.getExamNumber(),
                     sliceName);
             File targetSliceFile = new File(imageTransferDir + "/" + mirrorSlicePath);

+ 6 - 0
src/main/java/cn/com/qmth/scancentral/service/impl/SubjectServiceImpl.java

@@ -396,6 +396,9 @@ public class SubjectServiceImpl extends MppServiceImpl<SubjectDao, SubjectEntity
         } catch (StatusException e) {
             vo.setErrMsg(e.getMessage());
             vo.setStatus(AsyncTaskStatus.FAILED);
+        } catch (ParameterException e) {
+            vo.setErrMsg(e.getMessage());
+            vo.setStatus(AsyncTaskStatus.FAILED);
         } catch (Exception e) {
             vo.setErrMsg("系统异常");
             vo.setStatus(AsyncTaskStatus.FAILED);
@@ -620,6 +623,9 @@ public class SubjectServiceImpl extends MppServiceImpl<SubjectDao, SubjectEntity
         } catch (StatusException e) {
             vo.setErrMsg(e.getMessage());
             vo.setStatus(AsyncTaskStatus.FAILED);
+        } catch (ParameterException e) {
+            vo.setErrMsg(e.getMessage());
+            vo.setStatus(AsyncTaskStatus.FAILED);
         } catch (Exception e) {
             vo.setErrMsg("系统异常");
             vo.setStatus(AsyncTaskStatus.FAILED);

+ 1 - 1
src/main/resources/templates/absent-import.txt

@@ -1 +1 @@
-准考证号,缺考标识(标题行,数据从第二行读取)
+准考证号,缺考标识(标题行,数据从第二行读取,缺考标识:0、1