|
@@ -37,18 +37,18 @@ public class InspectedServiceImpl extends BaseQueryService<ExamStudent> implemen
|
|
@Override
|
|
@Override
|
|
public List<ExamStudent> findByQuery(ExamStudentSearchQuery query, SubjectiveStatus status, Integer mainNumber,
|
|
public List<ExamStudent> findByQuery(ExamStudentSearchQuery query, SubjectiveStatus status, Integer mainNumber,
|
|
Double mainStartScore, Double mainEndScore, Double questionScore) {
|
|
Double mainStartScore, Double mainEndScore, Double questionScore) {
|
|
- StringBuilder dataSql = new StringBuilder("select distinct s.id "
|
|
|
|
|
|
+ StringBuilder dataSql = new StringBuilder("select distinct s.id , s.inspect_time "
|
|
+ " from eb_exam_student s left join eb_subjective_score e on e.student_id = s.id ");
|
|
+ " from eb_exam_student s left join eb_subjective_score e on e.student_id = s.id ");
|
|
StringBuilder limitSql = new StringBuilder(" limit :offset,:pageSize");
|
|
StringBuilder limitSql = new StringBuilder(" limit :offset,:pageSize");
|
|
Query dataQuery = getQuery(query, status, mainNumber, mainStartScore, mainEndScore, questionScore, dataSql,
|
|
Query dataQuery = getQuery(query, status, mainNumber, mainStartScore, mainEndScore, questionScore, dataSql,
|
|
limitSql);
|
|
limitSql);
|
|
dataQuery.setParameter("offset", (query.getPageNumber() - 1) * query.getPageSize());
|
|
dataQuery.setParameter("offset", (query.getPageNumber() - 1) * query.getPageSize());
|
|
dataQuery.setParameter("pageSize", query.getPageSize());
|
|
dataQuery.setParameter("pageSize", query.getPageSize());
|
|
- List<Integer> list = dataQuery.getResultList();
|
|
|
|
|
|
+ List<Object[]> list = dataQuery.getResultList();
|
|
List<ExamStudent> resultList = new ArrayList<ExamStudent>();
|
|
List<ExamStudent> resultList = new ArrayList<ExamStudent>();
|
|
if (list != null && !list.isEmpty()) {
|
|
if (list != null && !list.isEmpty()) {
|
|
- for (Integer id : list) {
|
|
|
|
- ExamStudent e = studentService.findById(id);
|
|
|
|
|
|
+ for (Object[] array : list) {
|
|
|
|
+ ExamStudent e = studentService.findById((Integer) array[0]);
|
|
if (e.getInspectorId() != null) {
|
|
if (e.getInspectorId() != null) {
|
|
e.setInspector(userService.findById(e.getInspectorId()));
|
|
e.setInspector(userService.findById(e.getInspectorId()));
|
|
}
|
|
}
|