Explorar el Código

线下版本-20201112-导出日志为空

xiaof hace 4 años
padre
commit
da8c2efa69

+ 15 - 4
stmms-ms-admin/src/main/java/cn/com/qmth/stmms/ms/admin/exporter/MarkLogExporter.java

@@ -13,11 +13,13 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
+import javax.persistence.criteria.CriteriaBuilder;
 import javax.persistence.criteria.Predicate;
 import javax.servlet.http.HttpServletResponse;
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 import java.util.Objects;
 
 @RestController
@@ -50,10 +52,10 @@ public class MarkLogExporter {
             if (Objects.nonNull(subject)) {
                 predicates.add(cb.equal(root.get("subject").as(String.class), subject));
             }
-            if (Objects.nonNull(examNumber)) {
+            if (Objects.nonNull(examNumber) && examNumber != "") {
                 predicates.add(cb.equal(root.get("examNumber").as(String.class), examNumber));
             }
-            if (Objects.nonNull(studentName)) {
+            if (Objects.nonNull(studentName) && studentName != "") {
                 predicates.add(cb.like(root.get("studentName").as(String.class), "%" + studentName + "%"));
             }
             if (Objects.nonNull(operType)) {
@@ -70,6 +72,15 @@ public class MarkLogExporter {
             if (Objects.nonNull(workId)) {
                 predicates.add(cb.equal(root.get("workId").as(Long.class), workId));
             }
+
+            List<Map> mapList = MarkLogOperType.listTypes();
+            if (mapList != null && mapList.size() > 0) {
+                CriteriaBuilder.In<Object> in = cb.in(root.get("operType"));
+                for (Map map : mapList) {
+                    in.value(map.get("id"));
+                }
+                predicates.add(cb.and(cb.and(in)));
+            }
             return cb.and(predicates.toArray(new Predicate[predicates.size()]));
         };
         List<MarkLog> result = markLogRepo.findAll(specification);
@@ -114,10 +125,10 @@ public class MarkLogExporter {
             if (Objects.nonNull(subject)) {
                 predicates.add(cb.equal(root.get("subject").as(String.class), subject));
             }
-            if (Objects.nonNull(examNumber)) {
+            if (Objects.nonNull(examNumber) && examNumber != "") {
                 predicates.add(cb.equal(root.get("examNumber").as(String.class), examNumber));
             }
-            if (Objects.nonNull(studentName)) {
+            if (Objects.nonNull(studentName) && studentName != "") {
                 predicates.add(cb.like(root.get("studentName").as(String.class), "%" + studentName + "%"));
             }
             if (Objects.nonNull(createUserId)) {

+ 2 - 2
stmms-ms-log/src/main/java/cn/com/qmth/stmms/ms/log/controller/MarkLogController.java

@@ -83,7 +83,7 @@ public class MarkLogController {
             if (Objects.nonNull(examNumber)) {
                 predicates.add(cb.equal(root.get("examNumber").as(String.class), examNumber));
             }
-            if (Objects.nonNull(studentName)) {
+            if (Objects.nonNull(studentName) && studentName != "" ) {
                 predicates.add(cb.like(root.get("studentName").as(String.class), "%" + studentName + "%"));
             }
             if (Objects.nonNull(operType)) {
@@ -148,7 +148,7 @@ public class MarkLogController {
             if (Objects.nonNull(examNumber)) {
                 predicates.add(cb.equal(root.get("examNumber").as(String.class), examNumber));
             }
-            if (Objects.nonNull(studentName)) {
+            if (Objects.nonNull(studentName) && studentName != "") {
                 predicates.add(cb.like(root.get("studentName").as(String.class), "%" + studentName + "%"));
             }
             if (Objects.nonNull(createUserId)) {