|
@@ -2,8 +2,13 @@ package cn.com.qmth.stmms.ms.admin.exporter;
|
|
|
|
|
|
import cn.com.qmth.stmms.ms.admin.dto.ScoreDTO;
|
|
import cn.com.qmth.stmms.ms.admin.dto.ScoreDTO;
|
|
import cn.com.qmth.stmms.ms.commons.utils.excel.ExportUtils;
|
|
import cn.com.qmth.stmms.ms.commons.utils.excel.ExportUtils;
|
|
|
|
+import cn.com.qmth.stmms.ms.core.domain.Paper;
|
|
|
|
+import cn.com.qmth.stmms.ms.core.domain.Student;
|
|
import cn.com.qmth.stmms.ms.core.repository.ExamQuestionRepo;
|
|
import cn.com.qmth.stmms.ms.core.repository.ExamQuestionRepo;
|
|
import cn.com.qmth.stmms.ms.core.repository.PaperRepo;
|
|
import cn.com.qmth.stmms.ms.core.repository.PaperRepo;
|
|
|
|
+import cn.com.qmth.stmms.ms.core.repository.StudentRepo;
|
|
|
|
+import cn.com.qmth.stmms.ms.core.vo.Subject;
|
|
|
|
+import org.apache.commons.lang.math.NumberUtils;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
import org.springframework.web.bind.annotation.RequestMethod;
|
|
import org.springframework.web.bind.annotation.RequestMethod;
|
|
@@ -27,7 +32,10 @@ public class ScoreExporter {
|
|
@Autowired
|
|
@Autowired
|
|
private ExamQuestionRepo examQuestionRepo;
|
|
private ExamQuestionRepo examQuestionRepo;
|
|
|
|
|
|
- @RequestMapping(method = RequestMethod.GET)
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private StudentRepo studentRepo;
|
|
|
|
+
|
|
|
|
+ //@RequestMapping(method = RequestMethod.GET)
|
|
public void export(@RequestParam Long workId, HttpServletResponse response) {
|
|
public void export(@RequestParam Long workId, HttpServletResponse response) {
|
|
List<ScoreDTO> scoreDTOs = new ArrayList<>();
|
|
List<ScoreDTO> scoreDTOs = new ArrayList<>();
|
|
List<Object[]> objects = paperRepo.findScores(workId);
|
|
List<Object[]> objects = paperRepo.findScores(workId);
|
|
@@ -39,11 +47,14 @@ public class ScoreExporter {
|
|
scoreDTO.setExamNumber(o[0].toString());
|
|
scoreDTO.setExamNumber(o[0].toString());
|
|
scoreDTO.setStudentName(o[1].toString());
|
|
scoreDTO.setStudentName(o[1].toString());
|
|
String scoreList = String.valueOf(o[4]);
|
|
String scoreList = String.valueOf(o[4]);
|
|
|
|
+
|
|
if (scoreList != null && scoreList.split(",").length == 3) {
|
|
if (scoreList != null && scoreList.split(",").length == 3) {
|
|
scoreDTO.setSc(scoreList.split(",")[0]);
|
|
scoreDTO.setSc(scoreList.split(",")[0]);
|
|
scoreDTO.setSm(scoreList.split(",")[1]);
|
|
scoreDTO.setSm(scoreList.split(",")[1]);
|
|
scoreDTO.setSx(scoreList.split(",")[2]);
|
|
scoreDTO.setSx(scoreList.split(",")[2]);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+
|
|
scoreDTO.setAreaName(areaName);
|
|
scoreDTO.setAreaName(areaName);
|
|
scoreDTO.setSourceName(sourceName);
|
|
scoreDTO.setSourceName(sourceName);
|
|
scoreDTOs.add(scoreDTO);
|
|
scoreDTOs.add(scoreDTO);
|
|
@@ -51,4 +62,36 @@ public class ScoreExporter {
|
|
String fileName = "成绩总表";
|
|
String fileName = "成绩总表";
|
|
ExportUtils.exportEXCEL(fileName, ScoreDTO.class, scoreDTOs, response);
|
|
ExportUtils.exportEXCEL(fileName, ScoreDTO.class, scoreDTOs, response);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ @RequestMapping(method = RequestMethod.GET)
|
|
|
|
+ public void export2(@RequestParam Long workId, HttpServletResponse response) {
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ List<ScoreDTO> scoreDTOs = new ArrayList<>();
|
|
|
|
+ List<Student> students = studentRepo.findByWorkId(workId);
|
|
|
|
+
|
|
|
|
+ for (Student student : students) {
|
|
|
|
+ ScoreDTO scoreDTO = new ScoreDTO();
|
|
|
|
+
|
|
|
|
+ scoreDTO.setSourceName(student.getSourceName());
|
|
|
|
+ scoreDTO.setAreaName(student.getAreaName());
|
|
|
|
+ scoreDTO.setExamNumber(student.getExamNumber());
|
|
|
|
+ scoreDTO.setStudentName(student.getName());
|
|
|
|
+
|
|
|
|
+ Paper sc = paperRepo.findByWorkIdAndSubjectAndExamNumber(workId, Subject.SC, student.getExamNumber());
|
|
|
|
+ Paper sm = paperRepo.findByWorkIdAndSubjectAndExamNumber(workId, Subject.SM, student.getExamNumber());
|
|
|
|
+ Paper sx = paperRepo.findByWorkIdAndSubjectAndExamNumber(workId, Subject.SX, student.getExamNumber());
|
|
|
|
+
|
|
|
|
+ int scScore = (sc == null || !NumberUtils.isNumber(String.valueOf(sc.getScore()))) ? 0 : sc.getScore().intValue();
|
|
|
|
+ int smScore = (sm == null || !NumberUtils.isNumber(String.valueOf(sm.getScore()))) ? 0 : sm.getScore().intValue();
|
|
|
|
+ int sxScore = (sx == null || !NumberUtils.isNumber(String.valueOf(sx.getScore()))) ? 0 : sx.getScore().intValue();
|
|
|
|
+ scoreDTO.setSc(String.valueOf(scScore));
|
|
|
|
+ scoreDTO.setSm(String.valueOf(smScore));
|
|
|
|
+ scoreDTO.setSx(String.valueOf(sxScore));
|
|
|
|
+
|
|
|
|
+ scoreDTOs.add(scoreDTO);
|
|
|
|
+ }
|
|
|
|
+ String fileName = "成绩总表";
|
|
|
|
+ ExportUtils.exportEXCEL(fileName, ScoreDTO.class, scoreDTOs, response);
|
|
|
|
+ }
|
|
}
|
|
}
|