wangliang 4 سال پیش
والد
کامیت
240c4a3042

+ 7 - 4
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/TBTaskServiceImpl.java

@@ -1,5 +1,6 @@
 package com.qmth.distributed.print.business.service.impl;
 package com.qmth.distributed.print.business.service.impl;
 
 
+import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -31,10 +32,7 @@ import org.springframework.web.multipart.MultipartFile;
 
 
 import javax.annotation.Resource;
 import javax.annotation.Resource;
 import java.io.IOException;
 import java.io.IOException;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
+import java.util.*;
 import java.util.concurrent.atomic.AtomicInteger;
 import java.util.concurrent.atomic.AtomicInteger;
 
 
 /**
 /**
@@ -341,6 +339,11 @@ public class TBTaskServiceImpl extends ServiceImpl<TBTaskMapper, TBTask> impleme
                 if (tbTask.getResetCount() < dictionaryConfig.sysDomain().getAutoCreatePdfResetMaxCount()) {
                 if (tbTask.getResetCount() < dictionaryConfig.sysDomain().getAutoCreatePdfResetMaxCount()) {
                     Map<String, Object> map = new HashMap<>();
                     Map<String, Object> map = new HashMap<>();
                     tbTask.setVersion(new AtomicInteger(tbTask.getVersion()).incrementAndGet());
                     tbTask.setVersion(new AtomicInteger(tbTask.getVersion()).incrementAndGet());
+                    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.TASK, v -> tbTask);
                     map.computeIfAbsent(SystemConstant.USER, v -> sysUserService.getById(tbTask.getCreateId()));
                     map.computeIfAbsent(SystemConstant.USER, v -> sysUserService.getById(tbTask.getCreateId()));
                     asyncCreatePdfTempleteService.createPdf(map, null);
                     asyncCreatePdfTempleteService.createPdf(map, null);

+ 12 - 4
distributed-print/src/main/java/com/qmth/distributed/print/api/TBTaskController.java

@@ -1,8 +1,11 @@
 package com.qmth.distributed.print.api;
 package com.qmth.distributed.print.api;
 
 
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.qmth.boot.api.constant.ApiConstant;
 import com.qmth.boot.api.constant.ApiConstant;
+import com.qmth.distributed.print.business.bean.params.ArraysParams;
 import com.qmth.distributed.print.business.bean.result.EditResult;
 import com.qmth.distributed.print.business.bean.result.EditResult;
 import com.qmth.distributed.print.business.bean.result.TaskListResult;
 import com.qmth.distributed.print.business.bean.result.TaskListResult;
 import com.qmth.distributed.print.business.config.DictionaryConfig;
 import com.qmth.distributed.print.business.config.DictionaryConfig;
@@ -15,6 +18,7 @@ import com.qmth.distributed.print.business.service.TBTaskService;
 import com.qmth.distributed.print.business.templete.execute.AsyncCreatePdfTempleteService;
 import com.qmth.distributed.print.business.templete.execute.AsyncCreatePdfTempleteService;
 import com.qmth.distributed.print.business.util.ServletUtil;
 import com.qmth.distributed.print.business.util.ServletUtil;
 import com.qmth.distributed.print.common.contant.SystemConstant;
 import com.qmth.distributed.print.common.contant.SystemConstant;
+import com.qmth.distributed.print.common.enums.ExceptionResultEnum;
 import com.qmth.distributed.print.common.util.Result;
 import com.qmth.distributed.print.common.util.Result;
 import com.qmth.distributed.print.common.util.ResultUtil;
 import com.qmth.distributed.print.common.util.ResultUtil;
 import io.swagger.annotations.*;
 import io.swagger.annotations.*;
@@ -25,10 +29,8 @@ import org.springframework.web.bind.annotation.RestController;
 
 
 import javax.annotation.Resource;
 import javax.annotation.Resource;
 import java.io.IOException;
 import java.io.IOException;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
+import java.util.*;
+import java.util.concurrent.atomic.AtomicInteger;
 
 
 /**
 /**
  * <p>
  * <p>
@@ -79,8 +81,14 @@ public class TBTaskController {
     public Result resetCreatePdf(@ApiParam(value = "任务id", required = true) @RequestParam String id) throws IOException {
     public Result resetCreatePdf(@ApiParam(value = "任务id", required = true) @RequestParam String id) throws IOException {
         Long taskId = Long.parseLong(id);
         Long taskId = Long.parseLong(id);
         TBTask tbTask = tbTaskService.getById(taskId);
         TBTask tbTask = tbTaskService.getById(taskId);
+        tbTask.setVersion(new AtomicInteger(tbTask.getVersion()).incrementAndGet());
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         Map<String, Object> map = new HashMap<>();
         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.TASK, v -> tbTask);
         map.computeIfAbsent(SystemConstant.USER, v -> sysUser);
         map.computeIfAbsent(SystemConstant.USER, v -> sysUser);
         asyncCreatePdfTempleteService.createPdf(map, null);
         asyncCreatePdfTempleteService.createPdf(map, null);