Bläddra i källkod

Merge remote-tracking branch 'origin/master'

“lqy 3 veckor sedan
förälder
incheckning
f7e9162c9b

+ 61 - 25
mjava-boyang/src/main/java/com/malk/boyang/service/impl/BoyangServiceImpl.java

@@ -63,8 +63,22 @@ public class BoyangServiceImpl implements BoyangService {
     final static String host = "http://122.227.225.202:9011/";// 接口调用域名
     final static String intranet_host = "http://11.0.11.62/";// 接口调用域名(内网)
     final static String signerUser = "wangze";// 签署人
+    final static String cw_signerUser = "";// 财务签署人
     final static String uploadFileUrlHost = "http://11.0.11.62:8199/";// 返回的上传文件url host*/
 
+    //==================================================== (本地)e签宝对接测试-用印申请 ====================================================
+//    final static String signActivityId = "802c_7eaf";//签署区设置节点
+//    final static String[] activityIds = new String[]{"f0e3_8ef9","2af6_ccd3","68d8_0e65"};//签署节点:e签宝签署节点id、e签宝财务签署节点id、e签宝会签签署节点id
+
+
+    //==================================================== e签宝对接测试-用印申请 ====================================================
+//    final static String signActivityId = "802c_7eaf";//签署区设置节点
+//    final static String[] activityIds = new String[]{"f0e3_8ef9","2af6_ccd3","b8e5_160a"};//签署节点:e签宝签署节点id、e签宝财务签署节点id、e签宝会签签署节点id
+
+    //==================================================== 用印申请 ====================================================
+    final static String signActivityId = "c331_1d4f";//签署区设置节点
+    final static String[] activityIds = new String[]{"19b2_ec4a","bfeb_c637","433b_839a"};//签署节点:e签宝签署节点id、e签宝财务签署节点id、e签宝会签签署节点id
+
     //正式环境
     final static String projectId = "1000003";// 应用ID
     final static String secret = "5V6xsY3q8JWZ9Qik";// 应用密钥
@@ -73,6 +87,7 @@ public class BoyangServiceImpl implements BoyangService {
     final static String host = "https://dzqz.beyond-it-service.com/";// 接口调用域名
     final static String intranet_host = "http://11.0.11.82/";// 接口调用域名(内网)
     final static String signerUser = "22060093";// 签署人
+    final static String cw_signerUser = "13586834789";// 财务签署人
     final static String uploadFileUrlHost = "http://11.0.11.82:8199/";// 返回的上传文件url host
 
 
@@ -93,7 +108,7 @@ public class BoyangServiceImpl implements BoyangService {
         String url = "https://aflow.dingtalk.com/dingtalk/web/query/pchomepage.htm?from=oflow&op=true&corpid=ding76a1e955807327f7f5bf40eda33b7ba0#/plainapproval?procInstId="+processInstanceId;
         List<String> sealTypeCodeList = new ArrayList<>();
         List<Map> companyList = new ArrayList<>();
-
+        boolean hasFiance = false;
 
         for (Map formComponentValue : formComponentValues) {
             String id = UtilMap.getString(formComponentValue, "id");
@@ -129,7 +144,7 @@ public class BoyangServiceImpl implements BoyangService {
                            switch (yzlx){
                                case "公章":sealTypeCodeList.add("PUBLIC");break;
                                case "合同章":sealTypeCodeList.add("CONTRACT");break;
-                               case "财务章":sealTypeCodeList.add("FINANCE");break;
+                               case "财务章":sealTypeCodeList.add("FINANCE");hasFiance = true;break;
                                case "其他":sealTypeCodeList.add("COMMON");break;
                                case "人事专用章":sealTypeCodeList.add("PERSONNEL");break;
                                case "法人章":sealTypeCodeList.add("LEGAL-PERSON-SEAL");break;
@@ -273,16 +288,32 @@ public class BoyangServiceImpl implements BoyangService {
         for (int i = 0; i < companyList.size(); i++) {
             Map<String, Object> signer = new HashMap<>();
             signer.put("userType", "1");
+//            signer.put("userCode", "FINANCE".equals(sealType) ? cw_signerUser : signerUser);
             signer.put("userCode", signerUser);
             signer.put("organizationCode", UtilMap.getString(companyList.get(i),"key"));
             signer.put("signNode", 1);
-            signer.put("signMode", "0");
-            signer.put("signOrder", i + 1);
+            if (hasFiance){
+                signer.put("signMode", "1");//0:顺序签  1:无序签
+                signer.put("signOrder", 1);
+            }else {
+                signer.put("signMode", "0");//0:顺序签  1:无序签
+                signer.put("signOrder", i + 1);
+            }
+
 //            signer.put("sealTypeCode", String.join(",",sealTypeCodeList));
 
             signerInfos.add(signer);
+
+            if (hasFiance){
+                Map signer2 = new HashMap<>(signer);
+                signer2.put("userCode", cw_signerUser);
+                signer2.put("signOrder", 1);
+
+                signerInfos.add(signer2);
+            }
         }
 
+
         requestMap.put("signerInfos", signerInfos);
 
         // 打印结果(可选)
@@ -343,22 +374,22 @@ public class BoyangServiceImpl implements BoyangService {
             List<Map> tasks = UtilMap.getList(result, "tasks");
             for (Map task : tasks) {
                 String activityId = UtilMap.getString(task, "activityId");
-                //e签宝签署节点id:f0e3_8ef9
-                if ("f0e3_8ef9".equals(activityId)){
-                    long taskId = UtilMap.getLong(task, "taskId");
-                    String userId = UtilMap.getString(task, "userId");
-
-                    Map body = new HashMap();
-                    body.put("processInstanceId",processInstanceId);
-                    body.put("remark","签署完成自动通过");
-                    body.put("result","agree");
-                    body.put("actionerUserId",userId);
-                    body.put("taskId",taskId);
-
-                    UtilHttp.doPost("https://api.dingtalk.com/v1.0/workflow/processInstances/execute", ddClient.initTokenHeader(), null, body);
-
-                    return;
+                for (String id : activityIds) {
+                    if (id.equals(activityId)){
+                        long taskId = UtilMap.getLong(task, "taskId");
+                        String userId = UtilMap.getString(task, "userId");
+
+                        Map body = new HashMap();
+                        body.put("processInstanceId",processInstanceId);
+                        body.put("remark","签署完成自动通过");
+                        body.put("result","agree");
+                        body.put("actionerUserId",userId);
+                        body.put("taskId",taskId);
+
+                        UtilHttp.doPost("https://api.dingtalk.com/v1.0/workflow/processInstances/execute", ddClient.initTokenHeader(), null, body);
+                    }
                 }
+
             }
 
         } catch (Exception e) {
@@ -407,19 +438,24 @@ public class BoyangServiceImpl implements BoyangService {
 
             //获取签署地址列表
             Map eqbData = (Map) eqbGet(host + "/esign-signs/v1/signFlow/signUrls?signFlowId=" + signFlowId);
-            Map signUrlInfo = ((List<Map>) UtilMap.getList(eqbData, "signUrlInfos")).get(0);
 
-            String signUrlShort = UtilMap.getString(signUrlInfo, "signUrlShort");
+            List<Map> signUrlInfos = UtilMap.getList(eqbData, "signUrlInfos");
 
-            //审批单添加评论
-            comment(processInstanceId,originatorUserId,"签署地址:" + signUrlShort,null);
+            for (Map signUrlInfo : signUrlInfos) {
+                String userName = UtilMap.getString(signUrlInfo, "userName");
+                String organizationName = UtilMap.getString(signUrlInfo, "organizationName");
+                String signUrlShort = UtilMap.getString(signUrlInfo, "signUrlShort");
+
+                //审批单添加评论
+                comment(processInstanceId,originatorUserId,"签署人:" + userName + ",签署组织:" + organizationName + ",签署地址:" + signUrlShort,null);
+            }
 
             //自动通过节点
             List<Map> tasks = UtilMap.getList(result, "tasks");
             for (Map task : tasks) {
                 String activityId = UtilMap.getString(task, "activityId");
-                //e签宝设置签署区节点id:802c_7eaf
-                if ("802c_7eaf".equals(activityId)){
+                //e签宝设置签署区节点id
+                if (signActivityId.equals(activityId)){
                     long taskId = UtilMap.getLong(task, "taskId");
                     String userId = UtilMap.getString(task, "userId");
 

+ 4 - 4
mjava-boyang/src/main/resources/application-prod.yml

@@ -1,5 +1,5 @@
 server:
-  port: 9033
+  port: 30001
   servlet:
     context-path: /boyang
 
@@ -7,9 +7,9 @@ enable:
   scheduling: false
 logging:
   config: classpath:logback-spring.xml
-  path: /home/server/boyang/log/
+  path: d:\\boyang_eqb\\log\\
   level:
-    com.malk.*: debug
+    com.malk.*: info
 
 # dingtalk
 dingtalk:
@@ -21,7 +21,7 @@ dingtalk:
   token:
   operator: "065965353428672133" #潘麒卿
   operatorUnionId: AfZv5MOJ80W2STOhUbbOcAiEiE #潘麒卿
-  downloadPath: /home/server/boyang/file/
+  downloadPath: d:\\boyang_eqb\\files\\
   spaceId: 27829762189 #钉盘-e签宝
   parentDentryUuid: y20BglGWO23pGpLOsaALnnz98A7depqY #钉盘-e签宝-签署后文件
 

+ 1 - 1
mjava-huagao/src/main/java/com/malk/huagao/service/impl/KdHuaGaoServiceImpl.java

@@ -686,7 +686,7 @@ public class KdHuaGaoServiceImpl implements KdHuaGaoService {
         int weekOfMonth = today.get(weekFields.weekOfMonth());//当前日期是当月的第几周
 
         /*int year = 2025;//获取当前年份
-        int month = 9;//当前月份
+        int month = 12;//当前月份
         int weekOfMonth = 4;//当前日期是当月的第几周*/
 
         DDR_New ddrNew = new DDR_New();

+ 6 - 4
mjava-huagao/src/test/java/com/malk/huagao/EqbTest.java

@@ -44,11 +44,13 @@ public class EqbTest {
 //        getDocCreateUrl(appId,appKey,host,"418d535ab69f4c1fbe01931b8b74f82f");
 
         //测试环境模板id ef7d3bcee4254e67944d53db6a1f76eb
-        //正式环境模板id 经销商模板: 6a23f76742d74b858cdc2259a5d5c32f
-        //正式环境模板id 采购订单模板: a0827f8946994ebfbed7f44e6b8a6ed8
+
+        //正式环境模板id 经销商模板:6a23f76742d74b858cdc2259a5d5c32f
+        //正式环境模板id 其他客户模板:8b7fef2257bc4093ada330dbf7c874c5
+        //正式环境模板id 采购订单模板:a0827f8946994ebfbed7f44e6b8a6ed8
 
         //步骤4:制作含动态表格控件的HTML模板 访问【获取制作合同模板页面】接口返回的创建文件模板页面链接(docTemplateCreateUrl参数值),并在页面中拖动【动态表格】控件来制作模板,若链接失效,调用【获取编辑合同模板页面】接口
-//        getDocTemplateEditUrl(appId,appKey,host,"a0827f8946994ebfbed7f44e6b8a6ed8");
+        getDocTemplateEditUrl(appId,appKey,host,"8b7fef2257bc4093ada330dbf7c874c5");
 
 
         //步骤5:获取 HTML 模板中控件ID和控件Key
@@ -62,7 +64,7 @@ public class EqbTest {
 
 
         //基于文件发起签署
-        createByFile(appId,appKey,host,"1c2ede25c6454ad4af8bcba3dd9beb35");
+//        createByFile(appId,appKey,host,"1c2ede25c6454ad4af8bcba3dd9beb35");
 
         //查询签署流程详情
 //        getSignFlowDetail(appId,appKey,host,"62dc01292d684653bae341adb014b4d0");