Bladeren bron

新增双方签章

wzy 1 maand geleden
bovenliggende
commit
6c207dba1e
1 gewijzigde bestanden met toevoegingen van 70 en 0 verwijderingen
  1. 70 0
      mjava-huagao/src/main/java/com/malk/huagao/service/impl/EqbServiceImpl.java

+ 70 - 0
mjava-huagao/src/main/java/com/malk/huagao/service/impl/EqbServiceImpl.java

@@ -144,6 +144,8 @@ public class EqbServiceImpl implements EqbService {
 
         String fileName = UtilMap.getString(formData, "textField_meqr38kq");//用印文件名称
 
+        String signType = UtilMap.getString(formData, "radioField_mk0s5sf9");//签章类型
+
         JSONObject reqBodyObj = new JSONObject();
 
         List<Map> components = new ArrayList<>();
@@ -189,6 +191,7 @@ public class EqbServiceImpl implements EqbService {
         reqBodyObj2.put("signFlowConfig",signFlowConfig);
 
         //签署方信息
+        //我方
         Map signer = new HashMap();
         signer.put("signerType",1);//签署方类型,0 - 个人,1 - 企业/机构,2 - 法定代表人,3 - 经办人
 
@@ -219,6 +222,56 @@ public class EqbServiceImpl implements EqbService {
 
         reqBodyObj2.put("signers",Arrays.asList(signer));
 
+        //他方
+        String jbr = "";
+        String jbrdh = "";
+        String orgName = "";
+        if ("双方签章".equals(signType)){
+            switch (type){
+                case "销售合同-经销商":
+                    jbr = UtilMap.getString(formData, "textField_mk0s5sfa");//需方经办人
+                    jbrdh = UtilMap.getString(formData, "textField_mf50cbqw");//需方经办人电话
+                    orgName = UtilMap.getString(formData, "textField_mjaukh2p");//需方名称
+                    break;
+                case "销售合同-其他客户":
+                    jbr = UtilMap.getString(formData, "textField_mk0s5sfh");//需方经办人
+                    jbrdh = UtilMap.getString(formData, "textField_mk0s5sfg");//需方经办人电话
+                    orgName = UtilMap.getString(formData, "textField_mjaukh2p");//需方名称
+                    break;
+                case "采购订单":
+                    jbr = UtilMap.getString(formData, "textField_mj8dt3g8");//供方经办人
+                    jbrdh = UtilMap.getString(formData, "textField_mj8dt3g9");//供方经办人电话
+                    orgName = UtilMap.getString(formData, "textField_mj8dt3g7");//供方名称
+                    break;
+                default:break;
+            }
+
+            Map signer2 = new HashMap();
+            signer2.put("signerType",1);//签署方类型,0 - 个人,1 - 企业/机构,2 - 法定代表人,3 - 经办人
+
+            Map orgSignerInfo2 = new HashMap();
+            orgSignerInfo2.put("orgName",orgName);//对方机构名称
+            //企业/机构经办人信息
+            Map transactorInfo2 = new HashMap();
+            transactorInfo2.put("psnAccount",jbrdh);//经办人账号标识,手机号或邮箱,必须配合psnName(经办人姓名)传入
+            Map psnInfo = new HashMap();
+            psnInfo.put("psnName",jbr);//经办人姓名
+            transactorInfo2.put("psnInfo",psnInfo);
+            orgSignerInfo2.put("transactorInfo",transactorInfo2);
+            signer2.put("orgSignerInfo",orgSignerInfo2);
+
+            Map signField2 = new HashMap();
+            signField2.put("fileId",fileId);
+            signField2.put("customBizNum",formInstId);
+            Map normalSignFieldConfig2 = new HashMap();
+            normalSignFieldConfig2.put("freeMode",true);
+
+            signField2.put("normalSignFieldConfig",normalSignFieldConfig2);
+            signer2.put("signFields",Arrays.asList(signField2));
+
+            reqBodyObj2.put("signers",Arrays.asList(signer,signer2));
+        }
+
         Map result2 = eqbPost("/v3/sign-flow/create-by-file", reqBodyObj2);
 
         String signFlowId = UtilMap.getString(result2, "signFlowId");
@@ -240,6 +293,23 @@ public class EqbServiceImpl implements EqbService {
                 .atUserId(atUserId)//陈伟东
                 .build(), YDConf.FORM_OPERATION.remarks);
 
+        if ("双方签章".equals(signType)){
+            JSONObject reqBodyObj4 = new JSONObject();
+            Map operator2 = new HashMap();
+            operator2.put("psnAccount", jbrdh);
+            reqBodyObj4.put("operator", operator2);
+            reqBodyObj4.put("needLogin", true);
+            Map result4 = eqbPost("/v3/sign-flow/" + signFlowId + "/sign-url", reqBodyObj4);
+
+            String shortUrl2 = UtilMap.getString(result4, "shortUrl");
+
+            ydClient.operateData(YDParam.builder()
+                    .formInstanceId(formInstId)
+                    .content("对方签署地址:"+shortUrl2)
+                    .userId("yida_pub_account")
+                    .build(), YDConf.FORM_OPERATION.remarks);
+        }
+
 
         return McR.success();
     }