xiatian 1 年之前
父節點
當前提交
368a3380d3
共有 1 個文件被更改,包括 24 次插入3 次删除
  1. 24 3
      stmms-web/src/main/java/cn/com/qmth/stmms/admin/exam/InspectedController.java

+ 24 - 3
stmms-web/src/main/java/cn/com/qmth/stmms/admin/exam/InspectedController.java

@@ -2,6 +2,7 @@ package cn.com.qmth.stmms.admin.exam;
 
 import java.text.DecimalFormat;
 import java.util.ArrayList;
+import java.util.HashSet;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Set;
@@ -512,6 +513,19 @@ public class InspectedController extends BaseExamController {
         }
         return "redirect:/admin/exam/inspected/list";
     }
+    
+    private void subjectCodeQuery(ExamSubjectSearchQuery query,List<String> subjectCodeIn) {
+    	if(StringUtils.isEmpty(query.getCodeIn())) {
+    		query.setCodeIn(StringUtils.join(subjectCodeIn, ","));
+    	}else {
+    		Set<String> set=new HashSet<>();
+    		for(String c:query.getCodeIn().split(",")) {
+    			set.add(c);
+    		}
+    		set.addAll(subjectCodeIn);
+    		query.setCodeIn(StringUtils.join(set, ","));
+    	}
+    }
 
     @Logging(menu = "成绩复核进度查询", type = LogType.QUERY)
     @RequestMapping(value = "/info")
@@ -529,14 +543,21 @@ public class InspectedController extends BaseExamController {
                 query.setCodeIn(subjectCodeIn);
             }
         }
-        if (wu.isSubjectHeader()) {
-            String subjectCodeIn = StringUtils.join(wu.getSubjectCodeSet(), ",");
-            query.setCodeIn(subjectCodeIn);
+//        if (wu.isSubjectHeader()) {
+//            String subjectCodeIn = StringUtils.join(wu.getSubjectCodeSet(), ",");
+//            query.setCodeIn(subjectCodeIn);
+//        }
+        List<ExamSubject> subjectList = getExamSubject(examId, wu);
+        if (StringUtils.isBlank(query.getCode()) && wu.getRole() != Role.SCHOOL_ADMIN) {
+            List<String> subjectCodeIn = new ArrayList<String>();
+            subjectList.forEach(e -> subjectCodeIn.add(e.getCode()));
+            subjectCodeQuery(query, subjectCodeIn);
         }
         query = subjectService.findByQuery(query);
         if (unFinishSet.isEmpty() && query.getFinished() != null && !query.getFinished()) {
             query.setResult(new ArrayList<ExamSubject>());
         }
+        
         List<InspectedSubjectVO> list = new LinkedList<InspectedSubjectVO>();
         for (ExamSubject subject : query.getResult()) {
             InspectedSubjectVO vo = new InspectedSubjectVO();