ting.yin 3 éve
szülő
commit
d9dbf730bd

+ 1 - 0
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/exam/service/impl/ExamSubjectServiceImpl.java

@@ -200,6 +200,7 @@ public class ExamSubjectServiceImpl extends BaseQueryService<ExamSubject> implem
                 configList != null ? StringUtils.join(configList, PictureConfigItem.DB_ITEM_JOINER) : "");
     }
 
+    @Transactional
     @Override
     public void updateTrialCount(int examId, String subjectCode, int trialCount) {
         subjectDao.updateTrialCount(examId, subjectCode, trialCount);

+ 27 - 1
stmms-web/src/main/java/cn/com/qmth/stmms/admin/exam/ImportQueryController.java

@@ -26,6 +26,7 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes;
 
 import cn.com.qmth.stmms.admin.utils.PageUtil;
 import cn.com.qmth.stmms.admin.vo.InspectedStudentVO;
+import cn.com.qmth.stmms.admin.vo.TagStudentVO;
 import cn.com.qmth.stmms.biz.exam.model.ExamStudent;
 import cn.com.qmth.stmms.biz.exam.model.ImportQuery;
 import cn.com.qmth.stmms.biz.exam.query.ExamStudentSearchQuery;
@@ -90,7 +91,11 @@ public class ImportQueryController extends BaseExamController {
             List<ExamStudent> list = new ArrayList<ExamStudent>();
             if (ids != null) {
                 for (Object id : ids) {
-                    list.add(studentService.findById((int) id));
+                    ExamStudent student = studentService.findById((int) id);
+                    if (importQuery.getTagIdList().contains(id)) {
+                        student.setTagValue("1");
+                    }
+                    list.add(student);
                 }
             }
             query.setTotalPage(PageUtil.pageCount(importQuery.getStudentIdList(), query.getPageNumber(),
@@ -254,4 +259,25 @@ public class ImportQueryController extends BaseExamController {
         }
         return obj;
     }
+
+    @RequestMapping(value = "/exportTag")
+    public String exportTag(HttpServletRequest request, HttpServletResponse response,
+            RedirectAttributes redirectAttributes) {
+        int examId = getSessionExamId(request);
+        WebUser wu = RequestUtils.getWebUser(request);
+        try {
+            String fileName = "标记卷.xlsx";
+            List<TagStudentVO> list = Lists.newArrayList();
+            ImportQuery importQuery = queryService.findByExamIdAndUserIdAndType(examId, wu.getId(),
+                    ImportType.INSPECTED);
+            for (Integer studentId : importQuery.getTagIdList()) {
+                list.add(new TagStudentVO(studentService.findById(studentId)));
+            }
+            new ExportExcel("标记卷信息", InspectedStudentVO.class, 2).setDataList(list).write(response, fileName).dispose();
+            return null;
+        } catch (Exception e) {
+            addMessage(redirectAttributes, "标记卷下载失败!失败信息:" + e.getMessage());
+        }
+        return "redirect:/admin/exam/inspected/import/list";
+    }
 }

+ 51 - 0
stmms-web/src/main/java/cn/com/qmth/stmms/admin/vo/TagStudentVO.java

@@ -0,0 +1,51 @@
+package cn.com.qmth.stmms.admin.vo;
+
+import cn.com.qmth.stmms.biz.exam.model.ExamStudent;
+import cn.com.qmth.stmms.common.annotation.ExcelField;
+
+public class TagStudentVO {
+
+    @ExcelField(title = "科目代码", align = 2, sort = 10)
+    private String subjectCode;
+
+    @ExcelField(title = "学号", align = 2, sort = 20)
+    private String studentCode;
+
+    @ExcelField(title = "总分", align = 2, sort = 30)
+    private Double totalScore;
+
+    public TagStudentVO() {
+
+    }
+
+    public TagStudentVO(ExamStudent student) {
+        this.subjectCode = student.getSubjectCode();
+        this.studentCode = student.getStudentCode();
+        this.totalScore = student.getTotalScore();
+    }
+
+    public String getSubjectCode() {
+        return subjectCode;
+    }
+
+    public void setSubjectCode(String subjectCode) {
+        this.subjectCode = subjectCode;
+    }
+
+    public String getStudentCode() {
+        return studentCode;
+    }
+
+    public void setStudentCode(String studentCode) {
+        this.studentCode = studentCode;
+    }
+
+    public Double getTotalScore() {
+        return totalScore;
+    }
+
+    public void setTotalScore(Double totalScore) {
+        this.totalScore = totalScore;
+    }
+
+}