|
@@ -72,6 +72,8 @@ import cn.com.qmth.stmms.biz.utils.OriginTag;
|
|
|
import cn.com.qmth.stmms.biz.utils.PictureConfigTransform;
|
|
|
import cn.com.qmth.stmms.biz.utils.PictureTag;
|
|
|
import cn.com.qmth.stmms.biz.utils.ScoreItem;
|
|
|
+import cn.com.qmth.stmms.common.enums.CompareType;
|
|
|
+import cn.com.qmth.stmms.common.enums.RangeType;
|
|
|
import cn.com.qmth.stmms.common.enums.Role;
|
|
|
import cn.com.qmth.stmms.common.enums.SubjectiveStatus;
|
|
|
import net.sf.json.JSONObject;
|
|
@@ -654,6 +656,17 @@ public class ExamStudentServiceImpl extends BaseQueryService<ExamStudent> implem
|
|
|
if (StringUtils.isNotBlank(query.getSubjectCategory())) {
|
|
|
predicates.add(cb.equal(root.get("subjectCategory"), query.getSubjectCategory()));
|
|
|
}
|
|
|
+ if (query.getObjectiveScore() != null) {
|
|
|
+ if (CompareType.EQ.equals(query.getObjectiveScoreCompareType())) {
|
|
|
+ predicates.add(cb.equal(root.get("objectiveScore"), query.getObjectiveScore()));
|
|
|
+ } else if (CompareType.GT.equals(query.getObjectiveScoreCompareType())) {
|
|
|
+ predicates.add(cb.greaterThan(root.get("objectiveScore").as(Double.class),
|
|
|
+ query.getObjectiveScoreGt()));
|
|
|
+ } else if (CompareType.LT.equals(query.getObjectiveScoreCompareType())) {
|
|
|
+ predicates.add(
|
|
|
+ cb.lessThan(root.get("objectiveScore").as(Double.class), query.getObjectiveScoreLt()));
|
|
|
+ }
|
|
|
+ }
|
|
|
if (query.getObjectiveScore() != null) {
|
|
|
predicates.add(cb.equal(root.get("objectiveScore"), query.getObjectiveScore()));
|
|
|
} else if (query.getObjectiveScoreGt() != null) {
|
|
@@ -670,6 +683,19 @@ public class ExamStudentServiceImpl extends BaseQueryService<ExamStudent> implem
|
|
|
}
|
|
|
predicates.add(cb.or(sub.toArray(new Predicate[sub.size()])));
|
|
|
}
|
|
|
+
|
|
|
+ if (query.getSubjectiveScore() != null) {
|
|
|
+ if (CompareType.EQ.equals(query.getSubjectiveScoreCompareType())) {
|
|
|
+ predicates.add(cb.equal(root.get("subjectiveScore"), query.getSubjectiveScore()));
|
|
|
+ } else if (CompareType.GT.equals(query.getSubjectiveScoreCompareType())) {
|
|
|
+ predicates.add(cb.greaterThan(root.get("subjectiveScore").as(Double.class),
|
|
|
+ query.getSubjectiveScoreGt()));
|
|
|
+ } else if (CompareType.LT.equals(query.getSubjectiveScoreCompareType())) {
|
|
|
+ predicates.add(cb.lessThan(root.get("subjectiveScore").as(Double.class),
|
|
|
+ query.getSubjectiveScoreLt()));
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
if (query.getSubjectiveScore() != null) {
|
|
|
predicates.add(cb.equal(root.get("subjectiveScore"), query.getSubjectiveScore()));
|
|
|
} else if (query.getSubjectiveScoreGt() != null) {
|
|
@@ -716,11 +742,19 @@ public class ExamStudentServiceImpl extends BaseQueryService<ExamStudent> implem
|
|
|
}
|
|
|
|
|
|
if (query.getSubjectCodes() != null && query.getSubjectCodes().size() > 0) {
|
|
|
- predicates.add(root.get("subjectCode").in(query.getSubjectCodes()));
|
|
|
+ if (RangeType.IN.equals(query.getSubjectRange())) {
|
|
|
+ predicates.add(root.get("subjectCode").in(query.getSubjectCodes()));
|
|
|
+ } else {
|
|
|
+ predicates.add(root.get("subjectCode").in(query.getSubjectCodes()).not());
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
if (query.getExamSites() != null && query.getExamSites().size() > 0) {
|
|
|
- predicates.add(root.get("examSite").in(query.getExamSites()));
|
|
|
+ if (RangeType.IN.equals(query.getExamSitesRange())) {
|
|
|
+ predicates.add(root.get("examSite").in(query.getExamSites()));
|
|
|
+ } else {
|
|
|
+ predicates.add(root.get("examSite").in(query.getExamSites()).not());
|
|
|
+ }
|
|
|
}
|
|
|
if (StringUtils.isNotBlank(query.getCampusNameIn())) {
|
|
|
String[] list = query.getCampusNameIn().split(",");
|
|
@@ -1852,6 +1886,6 @@ public class ExamStudentServiceImpl extends BaseQueryService<ExamStudent> implem
|
|
|
|
|
|
@Override
|
|
|
public Integer findMaxSliceCountByExamIdAndSubjectCode(Integer examId, String subejctCode) {
|
|
|
- return studentDao.findMaxSliceCountByExamIdAndSubjectCode(examId,subejctCode);
|
|
|
+ return studentDao.findMaxSliceCountByExamIdAndSubjectCode(examId, subejctCode);
|
|
|
}
|
|
|
}
|