|
@@ -35,7 +35,6 @@ import org.springframework.web.multipart.MultipartFile;
|
|
|
import javax.annotation.Resource;
|
|
|
import java.io.IOException;
|
|
|
import java.util.*;
|
|
|
-import java.util.concurrent.atomic.AtomicInteger;
|
|
|
|
|
|
/**
|
|
|
* <p>
|
|
@@ -315,13 +314,35 @@ public class TBTaskServiceImpl extends ServiceImpl<TBTaskMapper, TBTask> impleme
|
|
|
*/
|
|
|
@Override
|
|
|
@Transactional
|
|
|
- public void updateStatus() {
|
|
|
- UpdateWrapper<TBTask> tbTaskQueryWrapper = new UpdateWrapper<>();
|
|
|
- tbTaskQueryWrapper.lambda().set(TBTask::getStatus, TaskStatusEnum.FINISH)
|
|
|
+ public void updateStatus() throws IOException {
|
|
|
+ //不是自动生成pdf的全部改为失败
|
|
|
+ UpdateWrapper<TBTask> tbTaskUpdateWrapper = new UpdateWrapper<>();
|
|
|
+ tbTaskUpdateWrapper.lambda().set(TBTask::getStatus, TaskStatusEnum.FINISH)
|
|
|
.set(TBTask::getSummary, "系统提交:网络异常或程序异常中断!")
|
|
|
.set(TBTask::getResult, TaskResultEnum.ERROR)
|
|
|
- .isNotNull(TBTask::getStatus).ne(TBTask::getStatus, TaskStatusEnum.FINISH);
|
|
|
- this.update(tbTaskQueryWrapper);
|
|
|
+ .isNotNull(TBTask::getStatus).ne(TBTask::getStatus, TaskStatusEnum.FINISH)
|
|
|
+ .ne(TBTask::getType, TaskTypeEnum.CREATE_PDF);
|
|
|
+ this.update(tbTaskUpdateWrapper);
|
|
|
+
|
|
|
+ QueryWrapper<TBTask> tbTaskQueryWrapper = new QueryWrapper<>();
|
|
|
+ tbTaskQueryWrapper.lambda().eq(TBTask::getType, TaskTypeEnum.CREATE_PDF)
|
|
|
+ .ne(TBTask::getStatus, TaskStatusEnum.FINISH)
|
|
|
+ .ne(TBTask::getResult, TaskResultEnum.SUCCESS).or().isNull(TBTask::getResult)
|
|
|
+ .orderByDesc(TBTask::getStatus);
|
|
|
+ List<TBTask> tbTasks = this.list(tbTaskQueryWrapper);
|
|
|
+ if (Objects.nonNull(tbTasks) && tbTasks.size() > 0) {
|
|
|
+ for (TBTask tbTask : tbTasks) {
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
+ if (Objects.nonNull(tbTask.getRemark())) {
|
|
|
+ JSONArray jsonArray = JSONArray.parseArray(tbTask.getRemark());
|
|
|
+ ArraysParams arraysParams = new ArraysParams(jsonArray.toArray(new Long[jsonArray.size()]));
|
|
|
+ map.computeIfAbsent("examDetailCourseIds", v -> Arrays.asList(arraysParams.getIds()));
|
|
|
+ }
|
|
|
+ map.computeIfAbsent(SystemConstant.TASK, v -> tbTask);
|
|
|
+ map.computeIfAbsent(SystemConstant.USER, v -> sysUserService.getById(tbTask.getCreateId()));
|
|
|
+ asyncCreatePdfTempleteService.createPdf(map, null);
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/**
|