From fb18d6c961b8ea8bccaa4ceb463efc5f356281f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=9D=96?= Date: Thu, 13 Jun 2024 16:45:45 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=81=E7=A8=8B=E5=BE=85=E5=8A=9E=E9=9B=86?= =?UTF-8?q?=E6=88=900.8=20=E6=B3=9B=E5=BE=AEsyscode=E6=A0=B9=E6=8D=AE?= =?UTF-8?q?=E5=8D=95=E6=8D=AE=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cxkg/integration/MessageListen.java | 160 +++++++++++------- 1 file changed, 99 insertions(+), 61 deletions(-) diff --git a/shkd-cosmic-debug/src/main/java/shkd/cosmic/cxkg/integration/MessageListen.java b/shkd-cosmic-debug/src/main/java/shkd/cosmic/cxkg/integration/MessageListen.java index e84e640..5251878 100644 --- a/shkd-cosmic-debug/src/main/java/shkd/cosmic/cxkg/integration/MessageListen.java +++ b/shkd-cosmic-debug/src/main/java/shkd/cosmic/cxkg/integration/MessageListen.java @@ -323,7 +323,7 @@ public class MessageListen extends AbstractMessageServiceHandler { if(entityName.startsWith("差旅报销单")){ entityName = "差旅报销单"; } - userNames.add(startUserName); + // userNames.add(startUserName); List> requestBodyList = new ArrayList(); Iterator var47 = userNames.iterator(); String syscodestr = System.getProperty("cxkg.integration.MessageListen.oakey"); @@ -337,28 +337,28 @@ public class MessageListen extends AbstractMessageServiceHandler { while (var47.hasNext()) { String userName = (String) var47.next(); - if (userName.equals(startUserName)) { - Map requestBody = new HashMap(); - requestBody.put("syscode", syscode); - requestBody.put("flowid", String.valueOf(processInstanceId)); - requestBody.put("requestname", title); - requestBody.put("workflowname", entityName); // + "审批流程" - requestBody.put("nodename", taskName); - requestBody.put("pcurl", url + "&closeType=closeWin"); - requestBody.put("appurl", url != null ? getAppurl(url) : null); - requestBody.put("isremark", String.valueOf(tasktype)); - requestBody.put("viewtype", "1"); - requestBody.put("creator", startUserName); - requestBody.put("createdatetime", createDateString); - requestBody.put("receiver", userName); - requestBody.put("receivedatetime", taskCreateDateString); - requestBody.put("receivets", String.valueOf((new Date()).getTime())); - requestBody.put("userid", userName); - requestBody.put("bizState", String.valueOf(tasktype)); - requestBody.put("lastNameList", userName); -// requestBody.put("targetId", "588|"+String.valueOf(processInstanceId)); - requestBodyList.add(requestBody); - } else { +// if (userName.equals(startUserName)) { +// Map requestBody = new HashMap(); +// requestBody.put("syscode", syscode); +// requestBody.put("flowid", String.valueOf(processInstanceId)); +// requestBody.put("requestname", title); +// requestBody.put("workflowname", entityName); // + "审批流程" +// requestBody.put("nodename", taskName); +// requestBody.put("pcurl", url + "&closeType=closeWin"); +// requestBody.put("appurl", url != null ? getAppurl(url) : null); +// requestBody.put("isremark", String.valueOf(tasktype)); +// requestBody.put("viewtype", "1"); +// requestBody.put("creator", startUserName); +// requestBody.put("createdatetime", createDateString); +// requestBody.put("receiver", userName); +// requestBody.put("receivedatetime", taskCreateDateString); +// requestBody.put("receivets", String.valueOf((new Date()).getTime())); +// requestBody.put("userid", userName); +// requestBody.put("bizState", String.valueOf(tasktype)); +// requestBody.put("lastNameList", userName); +//// requestBody.put("targetId", "588|"+String.valueOf(processInstanceId)); +// requestBodyList.add(requestBody); +// } else { Map requestBody = new HashMap(); requestBody.put("syscode", syscode); requestBody.put("flowid", String.valueOf(processInstanceId)); @@ -384,7 +384,7 @@ public class MessageListen extends AbstractMessageServiceHandler { requestBody.put("lastNameList", userName); // requestBody.put("targetId", "588|"+String.valueOf(processInstanceId)); requestBodyList.add(requestBody); - } +// } } return requestBodyList; @@ -414,23 +414,23 @@ public class MessageListen extends AbstractMessageServiceHandler { String title = message.getTitle(); String content = message.getContent(); String url = message.getContentUrl(); - String taskId = messageContext.get("taskId").toString(); + // tring taskId = messageContext.get("taskId").toString(); List userIds = message.getUserIds(); List userMobiles = new ArrayList(); List userNames = new ArrayList(); Long senderId = message.getSenderId(); String senderMobile = ""; - Long startUserId = (Long) messageContext.get("startUserId"); + Long startUserId = null; String startUserMobile = null; Date sendTime = message.getSendTime(); String entityName = null; Long processDefinitionId = Long.parseLong(messageContext.get("processDefinitionId").toString()); - String processDefinitionName = ""; - String noticeId = message.getId().toString(); - DynamicObject processDefinition = BusinessDataServiceHelper.loadSingle(processDefinitionId, "wf_processdefinition"); - if (processDefinition != null) { - processDefinitionName = processDefinition.getString("name"); - } +// String processDefinitionName = ""; +// String noticeId = message.getId().toString(); +// DynamicObject processDefinition = BusinessDataServiceHelper.loadSingle(processDefinitionId, "wf_processdefinition"); +// if (processDefinition != null) { +// processDefinitionName = processDefinition.getString("name"); +// } QFilter startUserFilter; if (CollectionUtils.isNotEmpty(userIds)) { startUserFilter = new QFilter("id", "in", userIds); @@ -453,22 +453,6 @@ public class MessageListen extends AbstractMessageServiceHandler { senderMobile = startUser.getString("phone"); } } - if (startUserId != null) { - startUserFilter = new QFilter("id", "=", startUserId); - startUser = BusinessDataServiceHelper.loadSingleFromCache("bos_user", startUserFilter.toArray()); - if (startUser != null) { - startUserMobile = startUser.getString("phone"); - } - DynamicObject startUser1 = BusinessDataServiceHelper.loadSingle(startUserId, "bos_user"); - if (startUser1 != null) { - startUserName = startUser1.getString("username"); - } - } - - - if (messageContext.get("entityName") != null) { - entityName = messageContext.get("entityName").toString(); - } DynamicObject processInstance = BusinessDataServiceHelper.loadSingle(processInstanceId, "wf_execution"); if (processInstance != null) { @@ -485,15 +469,64 @@ public class MessageListen extends AbstractMessageServiceHandler { String suspensionstate = processInstance.getString("suspensionstate"); processInstanceState = (String) processInstanceStateMap.get(suspensionstate); + + entityName = messageContext.get("entityName") != null ? messageContext.get("entityName").toString() : + processInstance.getString("entrabillname"); + + startUserId = messageContext.get("startUserId") != null ? (Long) messageContext.get("startUserId") : + processInstance.getLong("startuserid"); + } + + if (startUserId != null) { + startUserFilter = new QFilter("id", "=", startUserId); + startUser = BusinessDataServiceHelper.loadSingleFromCache("bos_user", startUserFilter.toArray()); + if (startUser != null) { + startUserMobile = startUser.getString("phone"); + } + DynamicObject startUser1 = BusinessDataServiceHelper.loadSingle(startUserId, "bos_user"); + if (startUser1 != null) { + startUserName = startUser1.getString("username"); + } } List> requestBodyList = new ArrayList(); Iterator var21 = userNames.iterator(); + String syscodestr = System.getProperty("cxkg.integration.MessageListen.oakey"); + JSONObject jsonCode = JSON.parseObject(syscodestr); + String syscode = jsonCode.getString(entityName); + if(syscode == null || "".equals(syscode)){ + log.info("cxkg.integration.MessageListen.syscode is null: " + + entityName + "/" + messageContext.get("entityNumber")); + } + if(title == null || "".equals(title)){ + title = entityName + ":" + messageContext.get("billNo") + "审批完成"; + } + if(entityName != null && entityName.startsWith("差旅报销单")){ + entityName = "差旅报销单"; + } int i = 1; while (var21.hasNext()) { String username = (String) var21.next(); Map requestBody = new HashMap(); + requestBody.put("syscode", syscode); + requestBody.put("flowid", String.valueOf(processInstanceId)); + requestBody.put("requestname", title); + requestBody.put("workflowname", entityName); // + "审批流程" + requestBody.put("nodename", taskName); + requestBody.put("pcurl", url + "&closeType=closeWin"); + requestBody.put("appurl", url != null ? getAppurl(url) : null); + requestBody.put("isremark", "8"); + requestBody.put("viewtype", "1"); + requestBody.put("creator", startUserName); + requestBody.put("createdatetime", createDateString); + requestBody.put("receiver", username); + requestBody.put("receivedatetime", taskCreateDateString); + requestBody.put("receivets", String.valueOf((new Date()).getTime())); + requestBody.put("userid", username); + requestBody.put("bizState", "0"); + requestBody.put("lastNameList", username); + // requestBody.put("code", 588); // requestBody.put("title", title); // requestBody.put("requestname", title); @@ -527,19 +560,19 @@ public class MessageListen extends AbstractMessageServiceHandler { //// requestBody.put("linkMobileUrl", "http://oatest.zhonghuangroup.com:8999"); // String appurl = getAppurl(url); - String encode = Base64.getEncoder().encodeToString(url.getBytes()); - QFilter filter = new QFilter("number", "=", "003"); - DynamicObject kd21_oa_matters = BusinessDataServiceHelper.loadSingle("kd21_oa_matters", "id,name,kd21_largetextfield", new QFilter[]{filter}); - String kd21_largetextfield = kd21_oa_matters.getString("kd21_largetextfield"); - requestBody.put("code", "588"); - requestBody.put("loginIdList", username); - requestBody.put("creater", startUserName); - requestBody.put("title", title); - requestBody.put("context", content); - requestBody.put("linkUrl", url); - requestBody.put("linkMobileUrl", kd21_largetextfield + encode); - requestBody.put("targetId", "588|" + String.valueOf(processInstanceId)); - requestBody.put("bizState", "0"); +// String encode = Base64.getEncoder().encodeToString(url.getBytes()); +// QFilter filter = new QFilter("number", "=", "003"); +// DynamicObject kd21_oa_matters = BusinessDataServiceHelper.loadSingle("kd21_oa_matters", "id,name,kd21_largetextfield", new QFilter[]{filter}); +// String kd21_largetextfield = kd21_oa_matters.getString("kd21_largetextfield"); +// requestBody.put("code", "588"); +// requestBody.put("loginIdList", username); +// requestBody.put("creater", startUserName); +// requestBody.put("title", title); +// requestBody.put("context", content); +// requestBody.put("linkUrl", url); +// requestBody.put("linkMobileUrl", kd21_largetextfield + encode); +// requestBody.put("targetId", "588|" + String.valueOf(processInstanceId)); +// requestBody.put("bizState", "0"); requestBodyList.add(requestBody); i++; } @@ -791,4 +824,9 @@ public class MessageListen extends AbstractMessageServiceHandler { log.info("{已办完成}", jsonStr); return jsonStr; } + + @Override + public void completeProcessInstance(MessageContext ctx, Long proceInstanceId) { + log.info("completeProcessInstance....."); + } }