Browse Source

BUG修改

King 8 months ago
parent
commit
b98fd929a3

+ 1 - 1
tip-front/src/main/java/com/minto/app/collaboration/controller/ColDoController.java

@@ -1020,7 +1020,7 @@ public class ColDoController {
             }else{
                 // 开州二开:领导批示添加加签秘书节点
                 if(TaskKaizhouUtil.isShujiQuZhangQuLingDao()) {
-                    TaskKaizhouUtil.addClerkNodeOfPishi(affairBO);
+                    TaskKaizhouUtil.addClerkNodeOfPishi(affairBO, creator);
                 }
                 colManager.doColSubmit(cid, affairBO,pid,doType);
             }

+ 18 - 9
tip-front/src/main/java/com/minto/app/task/util/TaskKaizhouUtil.java

@@ -7,7 +7,9 @@ import com.google.common.collect.Lists;
 import com.minto.app.behavior.beans.BehSummaryBean;
 import com.minto.app.behavior.enums.BehaviorEnum;
 import com.minto.app.behavior.manager.IBehManager;
+import com.minto.app.collaboration.beans.ColNodeBean;
 import com.minto.app.collaboration.bo.ColAffairBO;
+import com.minto.app.collaboration.manager.IColManager;
 import com.minto.app.message.beans.MessageBean;
 import com.minto.app.message.enums.MessageEnum;
 import com.minto.app.message.enums.MessageResourceTypeEnum;
@@ -190,10 +192,11 @@ public final class TaskKaizhouUtil{
             }
         }catch (Exception e){
             LoggerFactory.getLogger(TaskKaizhouUtil.class).error("领导秘书消息发送失败",e);
+            throw new RuntimeException(e);
         }
     }
 
-    public static void addClerkNodeOfPishi(ColAffairBO affairBO) {
+    public static void addClerkNodeOfPishi(ColAffairBO affairBO, Long creator) {
         try{
             IWorkflowManager workflowManager = AppContext.getBean(IWorkflowManager.class);
             Long clerkId = getClerkOfLindao();
@@ -201,15 +204,16 @@ public final class TaskKaizhouUtil{
             if(clerkId != null) {
                 WorkflowEnum.WorkflowTypeEnum tcType = WorkflowEnum.WorkflowTypeEnum.task;
                 // TODO tcId是什么怎么获取
-                NodeBO nodeBO = convertReqNodes(affairBO, clerkId);
+                NodeBO nodeBO = convertReqNodes(affairBO, clerkId, creator);
                 workflowManager.addNode(AppContext.currentLoginCorporation(), null, tcType, Lists.newArrayList(nodeBO), lingdaoId);
             }
         }catch (Exception e){
             LoggerFactory.getLogger(TaskKaizhouUtil.class).error("添加领导秘书节点失败",e);
+            throw new RuntimeException(e);
         }
     }
 
-    private static NodeBO convertReqNodes(ColAffairBO affairBO, Long clerkId) {
+    private static NodeBO convertReqNodes(ColAffairBO affairBO, Long clerkId, Long creator) {
         /**
          * 加签时的JSON数据,用作参考
          * [{"nodeTitle":"书记工作人员","nodeType":"task-node","description":"node4",
@@ -219,17 +223,20 @@ public final class TaskKaizhouUtil{
          */
         IOrgManager orgManager = AppContext.getBean(IOrgManager.class);
         IWorkflowManager workflowManager = AppContext.getBean(IWorkflowManager.class);
+        IColManager colManager = AppContext.getBean(IColManager.class);
         OrgPersonBean clerk = orgManager.findPersonById(clerkId);
         NodeBO nodeBO = new NodeBO();
-        nodeBO.setNodeId(String.valueOf(UUIDUtil.UUIDAbsLong()));
-        String actorId = ResourceEnum.ResourceTypeEnum.OrgPerson+"_"+clerkId;
-        String nodeTitle = "领导批示交办秘书";
-        String next = "end-state";
         Long tcId = affairBO.getAffairBean().getNodeId();
+        ColNodeBean colNodeBean = colManager.findColNodeById(tcId);
+        String nodeId = "node"+(int)(100+Math.random()*100);// 随机一个比100大的数
+        String actorId = ResourceEnum.ResourceTypeEnum.OrgPerson.getKey()+"_"+clerkId;
+        String nodeTitle = "领导批示交办秘书:"+colNodeBean.getColTitle();
+        String next = "end-state";
         if(true) {
             List<NodeBO> nodeBOS = workflowManager.getNodesByTC(tcId, WorkflowEnum.WorkflowTypeEnum.col);
             for(NodeBO n:nodeBOS) {
-                if(n.getNodeId().equals(String.valueOf(tcId))) {
+                String ntcId = n.getBaseInfo()[0];
+                if(String.valueOf(tcId).equals(ntcId)) {
                     next = n.getNext();
                     break;
                 }
@@ -245,7 +252,9 @@ public final class TaskKaizhouUtil{
         nodeBO.setNodeActionName("协同");
         nodeBO.setDescription("");
         nodeBO.setAttrMap(null);
-        nodeBO.setBaseInfo(new String[]{"","",actorId,"10001","","", nodeTitle , String.valueOf(tcId),"","", "0","-1",""});
+        nodeBO.setNodeId(nodeId);
+//        nodeBO.setBaseInfo(new String[]{nodeId, String.valueOf(creator),actorId,"10001","0","0", nodeTitle , String.valueOf(tcId),"无","无", "0","-1"});
+        nodeBO.setBaseInfo(new String[]{"", "",actorId,"10001","","", nodeTitle , colNodeBean.getColId().toString(),"","", "0","-1"});
         nodeBO.setNext(next);
 
         return nodeBO;