From 8b375fe00a241b3a769b82fe3dac8d1c9dce8a02 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Thu, 16 Jun 2022 14:36:07 +0800
Subject: [PATCH] 模拟考试修改
---
src/main/java/org/springblade/modules/training/controller/TrainingRegistrationController.java | 164 ++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 114 insertions(+), 50 deletions(-)
diff --git a/src/main/java/org/springblade/modules/training/controller/TrainingRegistrationController.java b/src/main/java/org/springblade/modules/training/controller/TrainingRegistrationController.java
index 310b423..fc14c26 100644
--- a/src/main/java/org/springblade/modules/training/controller/TrainingRegistrationController.java
+++ b/src/main/java/org/springblade/modules/training/controller/TrainingRegistrationController.java
@@ -319,66 +319,130 @@
//将集合推送内网,判断年龄是否符合要求,得到返回的结果,结果需包含userId,及年龄是否符合的状态
//生成随机数
String uuid = UUID.randomUUID().toString();
+ //将 学校id 存入 redis
+ redisTemplate.opsForValue().set(uuid, trainingRegistration.getTrainingUnitId());
//数据推送
Map<String, Object> map = new HashMap<>(1);
map.put(uuid, list);
myAsyncService.FTPObjectListUserId(map);
- Result result = new Result();
- int count = 0;
- //调用ftp获取返回数据
- while (true){
- try {
- Thread.sleep(1000);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- //调用ftp获取返回数据
- result = Monitor.getFtpDataByUuidListTrain(uuid);
- //如果返回true,就退处
- if (result.getCode() == 200) {
- break;
- }
+
+// Result result = new Result();
+// int count = 0;
+// //调用ftp获取返回数据
+// while (true){
+// try {
+// Thread.sleep(3000);
+// } catch (InterruptedException e) {
+// e.printStackTrace();
+// }
+// //调用ftp获取返回数据
+// result = Monitor.getFtpDataByUuidListTrain(uuid);
+// //如果返回true,就退处
+// if (result.getCode() == 200) {
+// break;
+// }
// else {
// count++;
// if (count == 30) {
// break;
// }
// }
- }
+// }
+//
+// //创建集合,存年龄符合要求
+// List<String> ageList = new ArrayList<>();
+// //创建年龄不符合集合
+// List<String> errorList = new ArrayList<>();
+// AtomicInteger number = new AtomicInteger();
+// if (null!=result){
+// //获取 result
+// List<Result> data1 = result.getData();
+// if (data1.size()>0){
+// for (Result result1 : data1) {
+// // 取出 Msg ,此 msg 存的对应的 uuid
+// Long userId = result1.getUserId();
+// if (result1.getCode()==200){
+// //加入新增集合
+// ageList.add(userId.toString());
+// }
+// //年龄不符合要求
+// if (result1.getCode()==201){
+// //number ++
+// number.getAndIncrement();
+// //查询用户信息
+// User user = userService.getById(userId);
+// //加入更新集合
+// errorList.add(user.getRealName());
+// }
+// }
+// }
+// }
+//
+// if (ageList.size()>0) {
+// //遍历
+// ageList.forEach(userId -> {
+// User user = userService.getUserById(userId);
+// //未报名的新增,已报名的不做处理
+// if (null == user.getIsTrain()) {
+// TrainingRegistration trainingRegistration1 = new TrainingRegistration();
+// trainingRegistration1.setCancel(1);
+// //默认为未考试状态
+// trainingRegistration1.setIsExam(1);
+// //未提交考试审核
+// trainingRegistration1.setAuditStatus(4);
+// trainingRegistration1.setTrainingTime(new Date());
+// trainingRegistration1.setUserId(userId);
+// trainingRegistration1.setTrainingUnitId(trainingRegistration.getTrainingUnitId());
+// trainingRegistrationService.save(trainingRegistration1);
+// //修改保安报名状态
+// user.setIsTrain(1);
+// userService.updateById(user);
+//
+// //数据同步
+// saveTrainingRegistration(trainingRegistration1, user);
+// } else {
+// if (user.getIsTrain() != 1) {
+// TrainingRegistration trainingRegistration1 = new TrainingRegistration();
+// trainingRegistration1.setCancel(1);
+// //默认为未考试状态
+// trainingRegistration1.setIsExam(1);
+// //未提交考试审核
+// trainingRegistration1.setAuditStatus(4);
+// trainingRegistration1.setTrainingTime(new Date());
+// trainingRegistration1.setUserId(userId);
+// trainingRegistration1.setTrainingUnitId(trainingRegistration.getTrainingUnitId());
+// trainingRegistrationService.save(trainingRegistration1);
+// //修改保安报名状态
+// user.setIsTrain(1);
+// userService.updateById(user);
+//
+// //数据同步
+// saveTrainingRegistration(trainingRegistration1, user);
+// }
+// }
+// });
+// }
+//
+// //如果存在年龄不符的,则抛出异常
+// if (number.get()>0){
+// String errorAccount = StringUtils.join(errorList, "\\\n");
+// throw new ServiceException("保安员:[" + errorAccount + "]报名失败!年龄不符,报名年龄为[18-60]周岁!");
+// }
+ return R.data(200,"报名成功");
+ }
- //创建集合,存年龄符合要求
- List<String> ageList = new ArrayList<>();
- //创建年龄不符合集合
- List<String> errorList = new ArrayList<>();
- AtomicInteger number = new AtomicInteger();
- if (null!=result){
- //获取 result
- List<Result> data1 = result.getData();
- if (data1.size()>0){
- for (Result result1 : data1) {
- // 取出 Msg ,此 msg 存的对应的 uuid
- Long userId = result1.getUserId();
- if (result1.getCode()==200){
- //加入新增集合
- ageList.add(userId.toString());
- }
- //年龄不符合要求
- if (result1.getCode()==201){
- //number ++
- number.getAndIncrement();
- //查询用户信息
- User user = userService.getById(userId);
- //加入更新集合
- errorList.add(user.getRealName());
- }
- }
- }
- }
+ /**
+ * 批量报名
+ * @param trainingRegistration 考试报名信息对象
+ */
+ @PostMapping("/batchTrains")
+ public R batchApplys(@RequestBody TrainingRegistrationVo trainingRegistration){
+ List<String> list = Arrays.asList(trainingRegistration.getUserIds().split(","));
- if (ageList.size()>0) {
+ if (list.size()>0) {
//遍历
- ageList.forEach(userId -> {
+ list.forEach(userId -> {
User user = userService.getUserById(userId);
//未报名的新增,已报名的不做处理
if (null == user.getIsTrain()) {
@@ -422,10 +486,10 @@
}
//如果存在年龄不符的,则抛出异常
- if (number.get()>0){
- String errorAccount = StringUtils.join(errorList, "\\\n");
- throw new ServiceException("保安员:[" + errorAccount + "]报名失败!年龄不符,报名年龄为[18-60]周岁!");
- }
+// if (number.get()>0){
+// String errorAccount = StringUtils.join(errorList, "\\\n");
+// throw new ServiceException("保安员:[" + errorAccount + "]报名失败!年龄不符,报名年龄为[18-60]周岁!");
+// }
return R.data(200,"报名成功");
}
--
Gitblit v1.9.3