|
@@ -7,6 +7,7 @@ import com.keao.edu.common.dal.BaseDAO;
|
|
|
import com.keao.edu.common.service.impl.BaseServiceImpl;
|
|
|
import com.keao.edu.user.api.entity.ExamRoomStudentRelation;
|
|
|
import com.keao.edu.user.api.entity.Student;
|
|
|
+import com.keao.edu.user.api.entity.StudentAttendance;
|
|
|
import com.keao.edu.user.dao.*;
|
|
|
import com.keao.edu.user.dto.BasicNeedCheckingDetailDto;
|
|
|
import com.keao.edu.user.dto.ExamCertificationDto;
|
|
@@ -38,6 +39,8 @@ public class ExamCertificationServiceImpl extends BaseServiceImpl<Long, ExamCert
|
|
|
@Autowired
|
|
|
private ExamRoomStudentRelationDao examRoomStudentRelationDao;
|
|
|
@Autowired
|
|
|
+ private StudentAttendanceDao studentAttendanceDao;
|
|
|
+ @Autowired
|
|
|
private SubjectDao subjectDao;
|
|
|
@Autowired
|
|
|
private SysUserFeignService sysUserFeignService;
|
|
@@ -62,7 +65,7 @@ public class ExamCertificationServiceImpl extends BaseServiceImpl<Long, ExamCert
|
|
|
public List<ExamCertificationDto> queryCertificationPage(Long examRegistrationId) {
|
|
|
SysUser sysUser = sysUserFeignService.queryUserInfo();
|
|
|
List<ExamCertificationDto> dataList = examCertificationDao.queryExamCertificationDtoPage(sysUser.getId(),examRegistrationId);
|
|
|
- if(dataList == null || dataList.size() < 0){
|
|
|
+ if(dataList == null || dataList.size() == 0){
|
|
|
return dataList;
|
|
|
}
|
|
|
List<Integer> subjectIds = dataList.stream().map(e -> e.getSubjectId()).collect(Collectors.toList());
|
|
@@ -129,7 +132,12 @@ public class ExamCertificationServiceImpl extends BaseServiceImpl<Long, ExamCert
|
|
|
ExamRoomStudentRelation studentExamRoom = examRoomStudentRelationDao.getStudentExamRoom(examRegistrationId);
|
|
|
if(studentExamRoom.getCallTime() != null){
|
|
|
examCertificationDto.setCallTime(DateUtil.secondsBetween(studentExamRoom.getCallTime(),new Date()));
|
|
|
- DateUtil.secondsBetween(studentExamRoom.getCallTime(),new Date());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(studentExamResult.getIsFinishedExam() == 0){
|
|
|
+ StudentAttendance studentAttendance = studentAttendanceDao.findByRegistrationId(examRegistrationId);
|
|
|
+ if(studentAttendance != null && studentAttendance.getSignInTime() != null){
|
|
|
+ examCertificationDto.setExamDuration(DateUtil.secondsBetween(studentAttendance.getSignInTime(),new Date()));
|
|
|
}
|
|
|
}
|
|
|
return examCertificationDto;
|