浏览代码

Merge branch 'dev_v2.2.0' of http://git.qmth.com.cn/wangliang/distributed-print-service into dev_v2.2.0

xiaof 3 年之前
父节点
当前提交
2a3827568c

+ 17 - 9
distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/execute/AsyncCreatePdfTempleteService.java

@@ -45,16 +45,24 @@ public class AsyncCreatePdfTempleteService extends AsyncCreateTaskTemplete {
      */
      */
     @Override
     @Override
     public Result createPdf(Map<String, Object> map, CallbackCreatePdf callbackCreatePdf) throws IOException {
     public Result createPdf(Map<String, Object> map, CallbackCreatePdf callbackCreatePdf) throws IOException {
-        TBTask tbTask = (TBTask) map.get(SystemConstant.TASK);
-        Boolean manual = (Boolean) map.get(SystemConstant.MANUAL);
-        StringJoiner stringJoinerSummary = new StringJoiner("\n").add(MessageFormat.format("{0}{1}{2}", DateUtil.format(new Date(), SystemConstant.DEFAULT_DATE_PATTERN), BEGIN_TITLE, OBJ_TITLE));
-        TBTaskService tbTaskService = SpringContextHolder.getBean(TBTaskService.class);
-        TBTask dbTask = tbTaskService.getById(tbTask.getId());
-        if (Objects.isNull(manual) && (Objects.nonNull(dbTask) && dbTask.getStatus() == TaskStatusEnum.FINISH && Objects.nonNull(dbTask.getResult()))) {//无需重新生成pdf
-            return ResultUtil.ok();
+        TBTask tbTask = null;
+        StringJoiner stringJoinerSummary = null;
+        try {
+            tbTask = (TBTask) map.get(SystemConstant.TASK);
+            Boolean manual = (Boolean) map.get(SystemConstant.MANUAL);
+            stringJoinerSummary = new StringJoiner("\n").add(MessageFormat.format("{0}{1}{2}", DateUtil.format(new Date(), SystemConstant.DEFAULT_DATE_PATTERN), BEGIN_TITLE, OBJ_TITLE));
+            TBTaskService tbTaskService = SpringContextHolder.getBean(TBTaskService.class);
+            TBTask dbTask = tbTaskService.getById(tbTask.getId());
+            if (Objects.isNull(manual) && (Objects.nonNull(dbTask) && dbTask.getStatus() == TaskStatusEnum.FINISH && Objects.nonNull(dbTask.getResult()))) {//无需重新生成pdf
+                SystemConstant.REDIS_MQ_LOCK = false;
+                return ResultUtil.ok();
+            }
+            tbTask.setStatus(TaskStatusEnum.RUNNING);
+            tbTaskService.updateById(tbTask);
+        } catch (Exception e) {
+            log.error("请求出错", e);
+            SystemConstant.REDIS_MQ_LOCK = false;
         }
         }
-        tbTask.setStatus(TaskStatusEnum.RUNNING);
-        tbTaskService.updateById(tbTask);
         try {
         try {
             TaskLogicService taskLogicService = SpringContextHolder.getBean(TaskLogicService.class);
             TaskLogicService taskLogicService = SpringContextHolder.getBean(TaskLogicService.class);
             taskLogicService.createPdfPrepose(map);
             taskLogicService.createPdfPrepose(map);

+ 3 - 3
distributed-print/src/main/resources/processes/GdykdxPaperApprove.bpmn

@@ -2,9 +2,9 @@
 <definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test">
 <definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test">
   <process id="GdykdxPaperApprove" name="GdykdxPaperApprove" isExecutable="true">
   <process id="GdykdxPaperApprove" name="GdykdxPaperApprove" isExecutable="true">
     <startEvent id="startevent1" name="Start"></startEvent>
     <startEvent id="startevent1" name="Start"></startEvent>
-    <userTask id="usertask1" name="提交试卷(命题老师)" activiti:assignee="${approveId}"></userTask>
+    <userTask id="usertask1" name="提交试卷" activiti:assignee="${approveId}"></userTask>
     <sequenceFlow id="flow1" sourceRef="startevent1" targetRef="usertask1"></sequenceFlow>
     <sequenceFlow id="flow1" sourceRef="startevent1" targetRef="usertask1"></sequenceFlow>
-    <userTask id="usertask2" name="审核试卷(教研室主任)">
+    <userTask id="usertask2" name="审核试卷">
       <extensionElements>
       <extensionElements>
         <activiti:taskListener event="create" class="com.qmth.distributed.print.business.activiti.DirectorApproveListener"></activiti:taskListener>
         <activiti:taskListener event="create" class="com.qmth.distributed.print.business.activiti.DirectorApproveListener"></activiti:taskListener>
       </extensionElements>
       </extensionElements>
@@ -13,7 +13,7 @@
     <endEvent id="endevent1" name="End"></endEvent>
     <endEvent id="endevent1" name="End"></endEvent>
     <exclusiveGateway id="exclusivegateway1" name="审批"></exclusiveGateway>
     <exclusiveGateway id="exclusivegateway1" name="审批"></exclusiveGateway>
     <sequenceFlow id="flow3" sourceRef="usertask2" targetRef="exclusivegateway1"></sequenceFlow>
     <sequenceFlow id="flow3" sourceRef="usertask2" targetRef="exclusivegateway1"></sequenceFlow>
-    <userTask id="usertask3" name="审核试卷(教学院长)">
+    <userTask id="usertask3" name="审核试卷">
       <extensionElements>
       <extensionElements>
         <activiti:taskListener event="create" class="com.qmth.distributed.print.business.activiti.PresidentApproveListener"></activiti:taskListener>
         <activiti:taskListener event="create" class="com.qmth.distributed.print.business.activiti.PresidentApproveListener"></activiti:taskListener>
       </extensionElements>
       </extensionElements>

+ 1 - 0
teachcloud-task/src/main/java/com/qmth/teachcloud/task/config/RedisMessageListener.java

@@ -12,6 +12,7 @@ import com.qmth.teachcloud.common.entity.TMMqMessage;
 import com.qmth.teachcloud.common.service.TMMqMessageService;
 import com.qmth.teachcloud.common.service.TMMqMessageService;
 import com.qmth.teachcloud.common.util.JacksonUtil;
 import com.qmth.teachcloud.common.util.JacksonUtil;
 import com.qmth.teachcloud.common.util.RedisUtil;
 import com.qmth.teachcloud.common.util.RedisUtil;
+import com.qmth.teachcloud.common.util.ResultUtil;
 import org.apache.commons.text.StringEscapeUtils;
 import org.apache.commons.text.StringEscapeUtils;
 import org.slf4j.Logger;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.LoggerFactory;