Explorar el Código

实现定时查询流程详情

qitz hace 2 años
padre
commit
bcc07b181d

+ 34
- 8
ruoyi-common/src/main/java/com/ruoyi/common/utils/SignAward.java Ver fichero

@@ -8,6 +8,7 @@ import com.ruoyi.common.enums.EsignRequestType;
8 8
 import com.ruoyi.common.exception.EsignDemoException;
9 9
 import com.ruoyi.common.utils.bean.SealSignRecord;
10 10
 
11
+import java.util.HashMap;
11 12
 import java.util.Map;
12 13
 
13 14
 public class SignAward {
@@ -56,11 +57,11 @@ public class SignAward {
56 57
 //        System.err.println("流程id:"+signFlowId);
57 58
 
58 59
         /* 获取文件签名印章位置*/
59
-        EsignHttpResponse positions = getPositions(sealSignRecord);
60
-        JsonObject positionsJsonObject = gson.fromJson(positions.getBody(), JsonObject.class);
61
-        JsonObject positionsData = positionsJsonObject.getAsJsonObject("data");
62
-        JsonArray keywordPositions = positionsData.get("keywordPositions").getAsJsonArray();
63
-        System.out.println("获取文件签名印章位置:" +keywordPositions.toString());
60
+//        EsignHttpResponse positions = getPositions(sealSignRecord);
61
+//        JsonObject positionsJsonObject = gson.fromJson(positions.getBody(), JsonObject.class);
62
+//        JsonObject positionsData = positionsJsonObject.getAsJsonObject("data");
63
+//        JsonArray keywordPositions = positionsData.get("keywordPositions").getAsJsonArray();
64
+//        System.out.println("获取文件签名印章位置:" +keywordPositions.toString());
64 65
 
65 66
 //        String signFlowId = "c9955453716344f9971d308abdc13464";
66 67
         //获取合同文件签名链接
@@ -82,13 +83,38 @@ public class SignAward {
82 83
 //        System.out.println("签署短链接:"+sealUrl);
83 84
 
84 85
         //查询签署流程详情
85
-//        EsignHttpResponse signFlowDetail = signFlowDetail(sealSignRecord);
86
-//        JsonObject signFlowDetailJsonObject = gson.fromJson(signFlowDetail.getBody(),JsonObject.class);
87
-//        System.out.println(signFlowDetailJsonObject);
86
+        EsignHttpResponse signFlowDetail = signFlowDetail(sealSignRecord);
87
+        JsonObject signFlowDetailJsonObject = gson.fromJson(signFlowDetail.getBody(),JsonObject.class);
88
+        JsonObject flowDetailData = signFlowDetailJsonObject.getAsJsonObject("data");
89
+        JsonArray signersArray = flowDetailData.get("signers").getAsJsonArray();
90
+        for (int i = 0; i < signersArray.size(); i++) {
91
+            JsonObject signerObject = (JsonObject)signersArray.get(i);
92
+            Integer psnsignStatus ;
93
+            Integer orgsignStatus ;
94
+            if(!(signerObject.get("psnSigner").toString()).equals("null")){
95
+                JsonObject psnSignerData = signerObject.getAsJsonObject("psnSigner");
96
+                if(psnSignerData!=null){
97
+                    psnsignStatus = signerObject.get("signStatus").getAsInt();
98
+                    sealSignRecord.setPsnsignStatus(psnsignStatus);
99
+                }
100
+            }
101
+            if(!(signerObject.get("orgSigner").toString()).equals("null")){
102
+                JsonObject orgSignerData = signerObject.getAsJsonObject("orgSigner");
103
+                if(orgSignerData!=null){
104
+                    orgsignStatus = signerObject.get("signStatus").getAsInt();
105
+                    sealSignRecord.setOrgsignStatus(orgsignStatus);
106
+                }
107
+
108
+            }
109
+
110
+        }
111
+        System.out.println(signFlowDetailJsonObject);
88 112
 
89 113
 
90 114
     }
91 115
 
116
+
117
+
92 118
     /**
93 119
      * 查询签署流程详情
94 120
      * @return

+ 20
- 0
ruoyi-common/src/main/java/com/ruoyi/common/utils/bean/SealSignRecord.java Ver fichero

@@ -25,6 +25,26 @@ public class SealSignRecord extends BaseEntity {
25 25
     private String orgnizeNamepsnName;
26 26
     /** 流程状态 */
27 27
     private Integer signFlowStatus;
28
+    /** 签名状态 */
29
+    private Integer psnsignStatus;
30
+    /** 用印状态 */
31
+    private Integer orgsignStatus;
32
+
33
+    public Integer getPsnsignStatus() {
34
+        return psnsignStatus;
35
+    }
36
+
37
+    public void setPsnsignStatus(Integer psnsignStatus) {
38
+        this.psnsignStatus = psnsignStatus;
39
+    }
40
+
41
+    public Integer getOrgsignStatus() {
42
+        return orgsignStatus;
43
+    }
44
+
45
+    public void setOrgsignStatus(Integer orgsignStatus) {
46
+        this.orgsignStatus = orgsignStatus;
47
+    }
28 48
 
29 49
     public Integer getSignFlowStatus() {
30 50
         return signFlowStatus;

+ 6
- 0
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/SealSignRecordMapper.java Ver fichero

@@ -0,0 +1,6 @@
1
+package com.ruoyi.wisdomarbitrate.mapper;
2
+
3
+public interface SealSignRecordMapper {
4
+
5
+
6
+}

+ 69
- 0
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseApplicationServiceImpl.java Ver fichero

@@ -4,10 +4,17 @@ package com.ruoyi.wisdomarbitrate.service.impl;
4 4
 import cn.hutool.core.collection.CollectionUtil;
5 5
 import cn.hutool.core.util.StrUtil;
6 6
 
7
+import com.google.gson.Gson;
8
+import com.google.gson.JsonArray;
9
+import com.google.gson.JsonObject;
7 10
 import com.ruoyi.common.annotation.DataScope;
8 11
 import com.ruoyi.common.constant.CaseApplicationConstants;
12
+import com.ruoyi.common.core.domain.entity.EsignHttpResponse;
9 13
 import com.ruoyi.common.core.domain.entity.SysDept;
14
+import com.ruoyi.common.exception.EsignDemoException;
10 15
 import com.ruoyi.common.exception.ServiceException;
16
+import com.ruoyi.common.utils.SignAward;
17
+import com.ruoyi.common.utils.bean.SealSignRecord;
11 18
 import com.ruoyi.wisdomarbitrate.utils.CaseLogUtils;
12 19
 import com.ruoyi.common.utils.DateUtils;
13 20
 import com.ruoyi.common.utils.SmsUtils;
@@ -984,4 +991,66 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
984 991
         caseApplicationNew.setFeePayable(caseApplicationinsertDiffer.getFeePayable());
985 992
     }
986 993
 
994
+    @Transactional
995
+    public void fixExecuteSelectFlowDetailUtils() throws EsignDemoException {
996
+
997
+        Gson gson = new Gson();
998
+
999
+
1000
+
1001
+        SealSignRecord sealSignRecord = new SealSignRecord();
1002
+        sealSignRecord.setSignFlowid("41e6732b48c54c63a91b2379c352212d");
1003
+        EsignHttpResponse signFlowDetail = SignAward.signFlowDetail(sealSignRecord);
1004
+        JsonObject signFlowDetailJsonObject = gson.fromJson(signFlowDetail.getBody(),JsonObject.class);
1005
+        JsonObject flowDetailData = signFlowDetailJsonObject.getAsJsonObject("data");
1006
+        JsonArray signersArray = flowDetailData.get("signers").getAsJsonArray();
1007
+        for (int i = 0; i < signersArray.size(); i++) {
1008
+            JsonObject signerObject = (JsonObject)signersArray.get(i);
1009
+            Integer psnsignStatus ;
1010
+            Integer orgsignStatus ;
1011
+            if(!(signerObject.get("psnSigner").toString()).equals("null")){
1012
+                JsonObject psnSignerData = signerObject.getAsJsonObject("psnSigner");
1013
+                if(psnSignerData!=null){
1014
+                    psnsignStatus = signerObject.get("signStatus").getAsInt();
1015
+                    sealSignRecord.setPsnsignStatus(psnsignStatus);
1016
+
1017
+                    if(psnsignStatus.intValue()==2){
1018
+                        //更新立案申请状态为待用印
1019
+                        CaseApplication caseApplication = new CaseApplication();
1020
+                        caseApplication.setCaseStatus(CaseApplicationConstants.ARBITRATED_SEAL);
1021
+                        caseApplicationMapper.submitCaseApplication(caseApplication);
1022
+
1023
+                        //修改"签署用印记录表"的状态为待用印
1024
+
1025
+                    }
1026
+                }
1027
+            }
1028
+            if(!(signerObject.get("orgSigner").toString()).equals("null")){
1029
+                JsonObject orgSignerData = signerObject.getAsJsonObject("orgSigner");
1030
+                if(orgSignerData!=null){
1031
+                    orgsignStatus = signerObject.get("signStatus").getAsInt();
1032
+                    sealSignRecord.setOrgsignStatus(orgsignStatus);
1033
+                    //更新立案申请状态为待送达
1034
+                    CaseApplication caseApplication = new CaseApplication();
1035
+                    caseApplication.setCaseStatus(CaseApplicationConstants.ARBITRATION_DELIVERY);
1036
+                    caseApplicationMapper.submitCaseApplication(caseApplication);
1037
+
1038
+                    //修改"签署用印记录表"的状态为签署完成
1039
+
1040
+                    //下载审核完成的裁决书,
1041
+//                    SaaSAPIFileUtils.fileDownloadUrl();
1042
+
1043
+                }
1044
+
1045
+            }
1046
+
1047
+        }
1048
+
1049
+    }
1050
+
1051
+
1052
+
1053
+
1054
+
1055
+
987 1056
 }

+ 75
- 0
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/utils/FixSelectFlowDetailUtils.java Ver fichero

@@ -0,0 +1,75 @@
1
+package com.ruoyi.wisdomarbitrate.utils;
2
+
3
+import com.google.gson.Gson;
4
+import com.google.gson.JsonArray;
5
+import com.google.gson.JsonObject;
6
+import com.ruoyi.common.constant.CaseApplicationConstants;
7
+import com.ruoyi.common.core.domain.entity.EsignHttpResponse;
8
+import com.ruoyi.common.exception.EsignDemoException;
9
+import com.ruoyi.common.utils.SignAward;
10
+import com.ruoyi.common.utils.bean.SealSignRecord;
11
+import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
12
+import com.ruoyi.wisdomarbitrate.mapper.CaseApplicationMapper;
13
+import org.springframework.beans.factory.annotation.Autowired;
14
+
15
+public class FixSelectFlowDetailUtils {
16
+
17
+    @Autowired
18
+    private CaseApplicationMapper caseApplicationMapper;
19
+
20
+
21
+    public void fixExecuteSelectFlowDetailUtils() throws EsignDemoException {
22
+
23
+        Gson gson = new Gson();
24
+
25
+
26
+
27
+        SealSignRecord sealSignRecord = new SealSignRecord();
28
+        sealSignRecord.setSignFlowid("41e6732b48c54c63a91b2379c352212d");
29
+        EsignHttpResponse signFlowDetail = SignAward.signFlowDetail(sealSignRecord);
30
+        JsonObject signFlowDetailJsonObject = gson.fromJson(signFlowDetail.getBody(),JsonObject.class);
31
+        JsonObject flowDetailData = signFlowDetailJsonObject.getAsJsonObject("data");
32
+        JsonArray signersArray = flowDetailData.get("signers").getAsJsonArray();
33
+        for (int i = 0; i < signersArray.size(); i++) {
34
+            JsonObject signerObject = (JsonObject)signersArray.get(i);
35
+            Integer psnsignStatus ;
36
+            Integer orgsignStatus ;
37
+            if(!(signerObject.get("psnSigner").toString()).equals("null")){
38
+                JsonObject psnSignerData = signerObject.getAsJsonObject("psnSigner");
39
+                if(psnSignerData!=null){
40
+                    psnsignStatus = signerObject.get("signStatus").getAsInt();
41
+                    sealSignRecord.setPsnsignStatus(psnsignStatus);
42
+
43
+                    if(psnsignStatus.intValue()==2){
44
+                        //更新立案申请状态为待用印
45
+                        CaseApplication caseApplication = new CaseApplication();
46
+                        caseApplication.setCaseStatus(CaseApplicationConstants.ARBITRATED_SEAL);
47
+                        caseApplicationMapper.submitCaseApplication(caseApplication);
48
+
49
+
50
+
51
+                    }
52
+
53
+
54
+
55
+                }
56
+            }
57
+            if(!(signerObject.get("orgSigner").toString()).equals("null")){
58
+                JsonObject orgSignerData = signerObject.getAsJsonObject("orgSigner");
59
+                if(orgSignerData!=null){
60
+                    orgsignStatus = signerObject.get("signStatus").getAsInt();
61
+                    sealSignRecord.setOrgsignStatus(orgsignStatus);
62
+                }
63
+
64
+            }
65
+
66
+        }
67
+
68
+    }
69
+
70
+
71
+
72
+
73
+
74
+
75
+}

+ 17
- 0
ruoyi-system/src/main/resources/mapper/wisdomarbitrate/SealSignRecordMapper.xml Ver fichero

@@ -0,0 +1,17 @@
1
+<?xml version="1.0" encoding="UTF-8" ?>
2
+<!DOCTYPE mapper
3
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
4
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
5
+<mapper namespace="com.ruoyi.wisdomarbitrate.mapper.SealSignRecordMapper">
6
+
7
+
8
+
9
+
10
+
11
+
12
+
13
+
14
+
15
+
16
+
17
+</mapper>