|
@@ -5,14 +5,17 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.qmth.themis.business.annotation.ApiJsonObject;
|
|
|
import com.qmth.themis.business.annotation.ApiJsonProperty;
|
|
|
import com.qmth.themis.business.constant.SystemConstant;
|
|
|
+import com.qmth.themis.business.dto.InvigilateUserExportDto;
|
|
|
import com.qmth.themis.business.dto.MqDto;
|
|
|
import com.qmth.themis.business.dto.response.TBExamInvigilateUserDto;
|
|
|
import com.qmth.themis.business.entity.*;
|
|
|
import com.qmth.themis.business.enums.*;
|
|
|
+import com.qmth.themis.business.excel.ExportUtils;
|
|
|
import com.qmth.themis.business.service.MqDtoService;
|
|
|
import com.qmth.themis.business.service.TBAttachmentService;
|
|
|
import com.qmth.themis.business.service.TBExamInvigilateUserService;
|
|
|
import com.qmth.themis.business.service.TBTaskHistoryService;
|
|
|
+import com.qmth.themis.business.util.JacksonUtil;
|
|
|
import com.qmth.themis.business.util.MqUtil;
|
|
|
import com.qmth.themis.business.util.OssUtil;
|
|
|
import com.qmth.themis.business.util.ServletUtil;
|
|
@@ -25,6 +28,7 @@ import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.dao.DuplicateKeyException;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
+import org.springframework.util.CollectionUtils;
|
|
|
import org.springframework.validation.annotation.Validated;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
@@ -71,7 +75,7 @@ public class TBExamInvigilateUserController {
|
|
|
@ApiOperation(value = "监考员查询接口")
|
|
|
@RequestMapping(value = "/query", method = RequestMethod.POST)
|
|
|
@ApiResponses({@ApiResponse(code = 200, message = "监考员信息", response = TBExamInvigilateUserDto.class)})
|
|
|
- public Result query(@ApiParam(value = "考试批次id", required = true) @RequestParam(required = false) Long examId,
|
|
|
+ public Result query(@ApiParam(value = "考试批次id", required = true) @RequestParam Long examId,
|
|
|
@ApiParam(value = "考场代码", required = false) @RequestParam(required = false) String roomCode,
|
|
|
@ApiParam(value = "用户id", required = false) @RequestParam(required = false) Long userId,
|
|
|
@ApiParam(value = "分页页码", required = true) @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) int pageNumber,
|
|
@@ -248,4 +252,28 @@ public class TBExamInvigilateUserController {
|
|
|
}
|
|
|
return ResultUtil.ok(Collections.singletonMap(SystemConstant.TASK_ID, tbTaskHistory.getId()));
|
|
|
}
|
|
|
+
|
|
|
+ @ApiOperation(value = "监考员登录登出时间查询接口")
|
|
|
+ @RequestMapping(value = "/login/query", method = RequestMethod.POST)
|
|
|
+ @ApiResponses({@ApiResponse(code = 200, message = "监考员信息", response = TBExamInvigilateUserDto.class)})
|
|
|
+ public void loginQuery(@ApiParam(value = "考试批次id", required = true) @RequestParam Long examId) throws Exception {
|
|
|
+ List<InvigilateUserExportDto> invigilateUserExportDtoList = tbExamInvigilateUserService.examInvigilateUserLoginTimeExport(examId);
|
|
|
+ if (!CollectionUtils.isEmpty(invigilateUserExportDtoList)) {
|
|
|
+ List<InvigilateUserExportDto> invigilateUserExportDtoListTemp = new ArrayList<>(invigilateUserExportDtoList.size());
|
|
|
+ for (InvigilateUserExportDto i : invigilateUserExportDtoList) {
|
|
|
+ if (Objects.nonNull(i.getType()) && Objects.equals(i.getType(), "LOGIN")) {
|
|
|
+ i.setLoginTime(i.getCreateTime());
|
|
|
+ invigilateUserExportDtoListTemp.add(i);
|
|
|
+ } else if (Objects.nonNull(i.getType()) && Objects.equals(i.getType(), "LOGOUT")) {
|
|
|
+ if (!CollectionUtils.isEmpty(invigilateUserExportDtoListTemp)) {
|
|
|
+ InvigilateUserExportDto invigilateUserExportDto = invigilateUserExportDtoListTemp.get(invigilateUserExportDtoListTemp.size() - 1);
|
|
|
+ invigilateUserExportDto.setLogoutTime(i.getCreateTime());
|
|
|
+ } else {
|
|
|
+ log.error("数据有误,没有登录时间:{}", JacksonUtil.parseJson(i));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ExportUtils.exportEXCEL("监考员登录时间", InvigilateUserExportDto.class, invigilateUserExportDtoListTemp, ServletUtil.getResponse());
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|