|
@@ -6,6 +6,7 @@ import cn.com.qmth.stmms.ms.core.domain.enums.TrialEnum;
|
|
|
import cn.com.qmth.stmms.ms.core.vo.Subject;
|
|
|
import org.springframework.data.jpa.domain.Specification;
|
|
|
import org.springframework.util.CollectionUtils;
|
|
|
+import org.springframework.util.StringUtils;
|
|
|
|
|
|
import javax.persistence.criteria.Predicate;
|
|
|
import java.util.ArrayList;
|
|
@@ -20,8 +21,8 @@ public class StudentSpecification extends PagingAndSortingSpecification {
|
|
|
private String studentName;
|
|
|
private String uploadStatus;
|
|
|
private Boolean isAbsent;
|
|
|
- private Long startNumber;//起始考号
|
|
|
- private Long endNumber;//终止考号
|
|
|
+ private String startNumber;//起始考号
|
|
|
+ private String endNumber;//终止考号
|
|
|
private Boolean upload;//上传状态
|
|
|
private String subject;//科目
|
|
|
|
|
@@ -44,19 +45,19 @@ public class StudentSpecification extends PagingAndSortingSpecification {
|
|
|
this.subject = subject;
|
|
|
}
|
|
|
|
|
|
- public Long getStartNumber() {
|
|
|
+ public String getStartNumber() {
|
|
|
return startNumber;
|
|
|
}
|
|
|
|
|
|
- public void setStartNumber(Long startNumber) {
|
|
|
+ public void setStartNumber(String startNumber) {
|
|
|
this.startNumber = startNumber;
|
|
|
}
|
|
|
|
|
|
- public Long getEndNumber() {
|
|
|
+ public String getEndNumber() {
|
|
|
return endNumber;
|
|
|
}
|
|
|
|
|
|
- public void setEndNumber(Long endNumber) {
|
|
|
+ public void setEndNumber(String endNumber) {
|
|
|
this.endNumber = endNumber;
|
|
|
}
|
|
|
|
|
@@ -138,7 +139,7 @@ public class StudentSpecification extends PagingAndSortingSpecification {
|
|
|
List<Predicate> predicates = new ArrayList<Predicate>();
|
|
|
List<Predicate> listPermission1 = new ArrayList<>();
|
|
|
predicates.add(cb.equal(root.get("test"), String.valueOf(TrialEnum.DEFAULT.getId())));
|
|
|
- if (getStudentName() != null) {
|
|
|
+ if (!StringUtils.isEmpty(getStudentName())) {
|
|
|
predicates.add(cb.like(root.get("name"), "%" + getStudentName() + "%"));
|
|
|
}
|
|
|
if (getWorkId() != null) {
|
|
@@ -162,18 +163,6 @@ public class StudentSpecification extends PagingAndSortingSpecification {
|
|
|
} else {
|
|
|
predicates.add(cb.equal(root.get("uploadStatus"), "SX:0,SC:0,SM:0"));
|
|
|
}
|
|
|
- // 未上传考生不包含标记缺考
|
|
|
- if (Subject.SC.name().equals(getSubject())) {
|
|
|
- predicates.add(cb.equal(root.get("scMissing"), false));
|
|
|
- } else if (Subject.SX.name().equals(getSubject())) {
|
|
|
- predicates.add(cb.equal(root.get("sxMissing"), false));
|
|
|
- } else if (Subject.SM.name().equals(getSubject())) {
|
|
|
- predicates.add(cb.equal(root.get("smMissing"), false));
|
|
|
- } else {
|
|
|
- predicates.add(cb.equal(root.get("scMissing"), false));
|
|
|
- predicates.add(cb.equal(root.get("sxMissing"), false));
|
|
|
- predicates.add(cb.equal(root.get("smMissing"), false));
|
|
|
- }
|
|
|
} else if (getUpload() != null && getUpload()) {
|
|
|
if (Objects.nonNull(getSubject()) && !getSubject().isEmpty()) {
|
|
|
predicates.add(cb.like(root.get("uploadStatus"), "%" + getSubject() + ":1" + "%"));
|
|
@@ -183,11 +172,11 @@ public class StudentSpecification extends PagingAndSortingSpecification {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if (startNumber != null && endNumber != null) {
|
|
|
+ if (!StringUtils.isEmpty(startNumber) && !StringUtils.isEmpty(endNumber)) {
|
|
|
predicates.add(cb.between(root.get("examNumber"), startNumber, endNumber));
|
|
|
- } else if (startNumber != null) {
|
|
|
+ } else if (!StringUtils.isEmpty(startNumber)) {
|
|
|
predicates.add(cb.equal(root.get("examNumber"), startNumber));
|
|
|
- } else if (endNumber != null) {
|
|
|
+ } else if (!StringUtils.isEmpty(endNumber)) {
|
|
|
predicates.add(cb.equal(root.get("examNumber"), endNumber));
|
|
|
}
|
|
|
|