|
@@ -76,7 +76,7 @@ public class InspectedServiceImpl extends BaseQueryService<ExamStudent> implemen
|
|
|
sql.append(" s.card_number cardNumber,s.inspect_count inspectCount,s.score_verify_user scoreVerifyUser,");
|
|
|
sql.append(" s.score_verify_time scoreVerifyTime,s.score_verify_flagged scoreVerifyFlagged,s.inspect_time inspectTime,");
|
|
|
sql.append(" s.inspector_id inspectorId,s.inspected ");
|
|
|
- sql.append(" from eb_exam_student s ");
|
|
|
+ sql.append(" from eb_exam_student s left join eb_exam_subject es on s.exam_id=es.exam_id and s.subject_code=es.code ");
|
|
|
String whereSql = getWhereSql(query, status, mainNumber, mainStartScore, mainEndScore,selectiveStatus);
|
|
|
sql.append(whereSql).append(" order by s.inspect_time desc ");
|
|
|
if(!query.isExport()) {
|
|
@@ -98,6 +98,9 @@ public class InspectedServiceImpl extends BaseQueryService<ExamStudent> implemen
|
|
|
if (StringUtils.isNotBlank(query.getSubjectCode())) {
|
|
|
whereSql.append(" and s.subject_code ='"+query.getSubjectCode()+"'");
|
|
|
}
|
|
|
+ if (query.getSelective() != null) {
|
|
|
+ whereSql.append(" and es.selective ="+(query.getSelective()?1:0));
|
|
|
+ }
|
|
|
if (StringUtils.isNotBlank(query.getInspectorName())) {
|
|
|
whereSql.append(" and exists (select 1 from eb_inspect_history ei left join b_user bu on ei.inspector_id=bu.id "
|
|
|
+" where ei.student_id = s.id and bu.login_name like '"+query.getInspectorName()+"%')");
|
|
@@ -190,7 +193,8 @@ public class InspectedServiceImpl extends BaseQueryService<ExamStudent> implemen
|
|
|
@Override
|
|
|
public Integer countByQuery(InspectQuery query, SubjectiveStatus status, Integer mainNumber,
|
|
|
Double mainStartScore, Double mainEndScore,SelectiveStatus selectiveStatus) {
|
|
|
- StringBuilder countSql = new StringBuilder("select count(s.id) from eb_exam_student s ");
|
|
|
+ StringBuilder countSql = new StringBuilder("select count(s.id) from eb_exam_student s "
|
|
|
+ +" left join eb_exam_subject es on s.exam_id=es.exam_id and s.subject_code=es.code ");
|
|
|
String whereSql = getWhereSql(query, status, mainNumber, mainStartScore, mainEndScore, selectiveStatus);
|
|
|
countSql.append(whereSql);
|
|
|
Query countQuery = entityManager.createNativeQuery(countSql.toString());
|
|
@@ -202,7 +206,8 @@ public class InspectedServiceImpl extends BaseQueryService<ExamStudent> implemen
|
|
|
@Override
|
|
|
public Integer needInspectCount(InspectQuery query, Integer mainNumber,
|
|
|
Double mainStartScore, Double mainEndScore,SelectiveStatus selectiveStatus) {
|
|
|
- StringBuilder countSql = new StringBuilder("select count(s.id) from eb_exam_student s ");
|
|
|
+ StringBuilder countSql = new StringBuilder("select count(s.id) from eb_exam_student s "
|
|
|
+ +" left join eb_exam_subject es on s.exam_id=es.exam_id and s.subject_code=es.code ");
|
|
|
String whereSql = getWhereSql(query, SubjectiveStatus.MARKED, mainNumber, mainStartScore, mainEndScore,selectiveStatus);
|
|
|
countSql.append(whereSql);
|
|
|
Query countQuery = entityManager.createNativeQuery(countSql.toString());
|