xiaof 4 yıl önce
ebeveyn
işleme
5b9330eba8

+ 109 - 0
stmms-ms-admin/src/main/java/cn/com/qmth/stmms/ms/admin/dto/StudentExpDTO.java

@@ -0,0 +1,109 @@
+package cn.com.qmth.stmms.ms.admin.dto;
+
+import cn.com.qmth.stmms.ms.commons.utils.excel.ExcelProperty;
+
+import java.io.Serializable;
+
+public class StudentExpDTO implements Serializable {
+
+    private static final long serialVersionUID = -4556126416794102992L;
+
+    @ExcelProperty(index = 0, name = "序号", type = 1)
+    private Integer seq;
+
+    @ExcelProperty(index = 1, name = "姓名", type = 1)
+    private String name;
+
+    @ExcelProperty(index = 2, name = "考号", type = 1)
+    private String examNumber;
+
+    @ExcelProperty(index = 3, name = "考区", type = 1)
+    private String areaName;
+
+    @ExcelProperty(index = 4, name = "学校", type = 1)
+    private String school;
+
+    @ExcelProperty(index = 5, name = "考场", type = 1)
+    private String examRoom;
+
+    @ExcelProperty(index = 6, name = "色彩", type = 1)
+    private String sc;
+
+    @ExcelProperty(index = 7, name = "素描", type = 1)
+    private String sm;
+
+    @ExcelProperty(index = 8, name = "速写", type = 1)
+    private String sx;
+
+    public Integer getSeq() {
+        return seq;
+    }
+
+    public void setSeq(Integer seq) {
+        this.seq = seq;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getExamNumber() {
+        return examNumber;
+    }
+
+    public void setExamNumber(String examNumber) {
+        this.examNumber = examNumber;
+    }
+
+    public String getAreaName() {
+        return areaName;
+    }
+
+    public void setAreaName(String areaName) {
+        this.areaName = areaName;
+    }
+
+    public String getSchool() {
+        return school;
+    }
+
+    public void setSchool(String school) {
+        this.school = school;
+    }
+
+    public String getExamRoom() {
+        return examRoom;
+    }
+
+    public void setExamRoom(String examRoom) {
+        this.examRoom = examRoom;
+    }
+
+    public String getSc() {
+        return sc;
+    }
+
+    public void setSc(String sc) {
+        this.sc = sc;
+    }
+
+    public String getSm() {
+        return sm;
+    }
+
+    public void setSm(String sm) {
+        this.sm = sm;
+    }
+
+    public String getSx() {
+        return sx;
+    }
+
+    public void setSx(String sx) {
+        this.sx = sx;
+    }
+}

+ 67 - 0
stmms-ms-admin/src/main/java/cn/com/qmth/stmms/ms/admin/exporter/StudentExporter.java

@@ -0,0 +1,67 @@
+package cn.com.qmth.stmms.ms.admin.exporter;
+
+import cn.com.qmth.stmms.ms.admin.dto.StudentExpDTO;
+import cn.com.qmth.stmms.ms.commons.utils.excel.ExportUtils;
+import cn.com.qmth.stmms.ms.core.domain.Student;
+import cn.com.qmth.stmms.ms.core.repository.StudentRepo;
+import cn.com.qmth.stmms.ms.core.specification.StudentSpecification;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.concurrent.atomic.AtomicInteger;
+
+/**
+ * 考生导出
+ */
+@RestController
+@RequestMapping("api/export/student")
+public class StudentExporter {
+
+    @Autowired
+    private StudentRepo studentRepo;
+
+    @GetMapping
+    public void export(@RequestParam StudentSpecification params, HttpServletResponse response) {
+
+        List<Student> students = studentRepo.findAll(params.getSpecification());
+        List<StudentExpDTO> list = new ArrayList<>();
+        if (students != null && students.size() > 0) {
+            AtomicInteger atomicInteger = new AtomicInteger(0);
+            students.forEach(s -> {
+                StudentExpDTO studentExpDTO = new StudentExpDTO();
+                studentExpDTO.setSeq(atomicInteger.incrementAndGet());
+                studentExpDTO.setName(s.getName());
+                studentExpDTO.setExamNumber(s.getExamNumber());
+                studentExpDTO.setAreaName(s.getAreaName());
+                studentExpDTO.setSchool(s.getSchool());
+                studentExpDTO.setExamRoom(s.getExamRoom());
+                String uploadStatus = s.getUploadStatus();
+                for (String str : uploadStatus.split(",")) {
+                    //色彩
+                    if (str.contains("SC")) {
+                        String[] strings = str.split(":");
+                        studentExpDTO.setSc(strings[1]);
+                    }
+                    //素描
+                    if (str.contains("SM")) {
+                        String[] strings = str.split(":");
+                        studentExpDTO.setSm(strings[1]);
+                    }
+                    //速写
+                    if (str.contains("SX")) {
+                        String[] strings = str.split(":");
+                        studentExpDTO.setSx(strings[1]);
+                    }
+                }
+                list.add(studentExpDTO);
+            });
+        }
+        ExportUtils.exportEXCEL("考生管理", StudentExpDTO.class, list, response);
+    }
+}

+ 1 - 0
stmms-ms-marking/src/main/java/cn/com/qmth/stmms/ms/marking/assembler/PaperAssembler.java

@@ -190,6 +190,7 @@ public class PaperAssembler {
             paperDTO.setPaperTest(paper.getTest());
             paperDTO.setShift(paper.isShift());
             paperDTO.setShiftScore(paper.isShiftScore());
+            paperDTO.setStudentName(student.getName());
         }
         return paperDTO;
     }

+ 10 - 0
stmms-ms-marking/src/main/java/cn/com/qmth/stmms/ms/marking/dto/PaperDTO.java

@@ -50,6 +50,8 @@ public class PaperDTO implements Serializable{
     private Integer rejectedCount;
    //排序用
     private int sortSum;
+    //考生姓名
+    private String studentName;
     private List<MarkTaskDTO> markResults = new ArrayList<>();
 
     public int getPaperTest() {
@@ -311,4 +313,12 @@ public class PaperDTO implements Serializable{
     public void setRejectedCount(Integer rejectedCount) {
         this.rejectedCount = rejectedCount;
     }
+
+    public String getStudentName() {
+        return studentName;
+    }
+
+    public void setStudentName(String studentName) {
+        this.studentName = studentName;
+    }
 }