|
@@ -5,6 +5,7 @@ import cn.com.qmth.examcloud.tool.entity.TaskEntity;
|
|
|
import cn.com.qmth.examcloud.tool.service.CommonService;
|
|
|
import cn.com.qmth.examcloud.tool.service.TaskService;
|
|
|
import cn.com.qmth.examcloud.tool.service.batch_delete_exam_student.vo.ExamStudentExcelVO;
|
|
|
+import cn.com.qmth.examcloud.tool.utils.HttpHelper;
|
|
|
import cn.com.qmth.examcloud.tool.vo.examstudent.EwExamStudentVO;
|
|
|
import cn.com.qmth.examcloud.tool.vo.user.User;
|
|
|
import com.alibaba.excel.EasyExcel;
|
|
@@ -16,7 +17,9 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
+import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
|
|
|
@Component
|
|
|
public class BatchDeleteExamStudentTask implements TaskService {
|
|
@@ -60,16 +63,32 @@ public class BatchDeleteExamStudentTask implements TaskService {
|
|
|
throw new RuntimeException("Excel内容解析错误,请使用标准模板!");
|
|
|
}
|
|
|
|
|
|
- log.info("待删除条数:{}", list.size());
|
|
|
+ log.info("待删除考生数:{}", list.size());
|
|
|
|
|
|
for (ExamStudentExcelVO vo : list) {
|
|
|
List<EwExamStudentVO> examStudents = commonService.getExamStudentListFromEW(loginUser, vo.getExamId(), null, vo.getIdentityNumber());
|
|
|
+ if (examStudents.isEmpty()) {
|
|
|
+ log.warn("【未找到考生】examId:{} identityNumber:{}", vo.getExamId(), vo.getIdentityNumber());
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+
|
|
|
for (EwExamStudentVO examStudent : examStudents) {
|
|
|
- log.info("examId:{} identityNumber:{} examStudentId:{}", examStudent.getExamId(), examStudent.getIdentityNumber(), examStudent.getId());
|
|
|
+ log.info("【待删除】examId:{} identityNumber:{} examStudentId:{}", examStudent.getExamId(), examStudent.getIdentityNumber(), examStudent.getId());
|
|
|
+ this.deleteExamStudent(loginUser, examStudent.getId());
|
|
|
}
|
|
|
}
|
|
|
|
|
|
log.info("删除完成,耗时:{}ms", System.currentTimeMillis() - startTime);
|
|
|
}
|
|
|
|
|
|
+ private void deleteExamStudent(User loginUser, Long examStudentId) {
|
|
|
+ Map<String, String> headers = new HashMap<>();
|
|
|
+ headers.put("key", loginUser.getKey());
|
|
|
+ headers.put("token", loginUser.getToken());
|
|
|
+
|
|
|
+ String url = loginUser.getServerUrl() + "/api/ecs_exam_work/exam_student/" + examStudentId;
|
|
|
+ String result = HttpHelper.delete(url, headers, null);
|
|
|
+ log.info("【删除已执行】{}", result);
|
|
|
+ }
|
|
|
+
|
|
|
}
|