Преглед изворни кода

Merge branch 'dev' of http://git.xayunmei.com/SH-Arbitrate/Arbitrate-Backend into hjb

# Conflicts:
#	ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/SealSignRecordMapper.java
#	ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseApplicationServiceImpl.java
#	ruoyi-system/src/main/resources/mapper/wisdomarbitrate/SealSignRecordMapper.xml
hejinbo пре 2 година
родитељ
комит
0a16acb362

+ 2
- 0
ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java Прегледај датотеку

@@ -3,6 +3,7 @@ package com.ruoyi;
3 3
 import org.springframework.boot.SpringApplication;
4 4
 import org.springframework.boot.autoconfigure.SpringBootApplication;
5 5
 import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
6
+import org.springframework.scheduling.annotation.EnableScheduling;
6 7
 
7 8
 /**
8 9
  * 启动程序
@@ -10,6 +11,7 @@ import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
10 11
  * @author ruoyi
11 12
  */
12 13
 @SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })
14
+@EnableScheduling
13 15
 public class RuoYiApplication
14 16
 {
15 17
     public static void main(String[] args)

+ 22
- 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/wisdomarbitrate/CaseApplicationController.java Прегледај датотеку

@@ -6,7 +6,9 @@ import com.ruoyi.common.core.controller.BaseController;
6 6
 import com.ruoyi.common.core.domain.AjaxResult;
7 7
 import com.ruoyi.common.core.page.TableDataInfo;
8 8
 import com.ruoyi.common.enums.BusinessType;
9
+import com.ruoyi.common.exception.EsignDemoException;
9 10
 import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
11
+import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
10 12
 import com.ruoyi.wisdomarbitrate.domain.vo.SendRoomNoMessageVO;
11 13
 import com.ruoyi.wisdomarbitrate.service.ICaseApplicationService;
12 14
 import org.springframework.beans.factory.annotation.Autowired;
@@ -95,6 +97,26 @@ public class CaseApplicationController extends BaseController {
95 97
         return success(caseApplicationselect);
96 98
     }
97 99
 
100
+    /**
101
+     * 查询签名链接
102
+     */
103
+    @PreAuthorize("@ss.hasPermi('caseManagement:list:selectSignUrl')")
104
+    @PostMapping("/selectSignUrl")
105
+    public AjaxResult selectSignUrl(@Validated @RequestBody CaseApplication caseApplication) throws EsignDemoException {
106
+        SealSignRecord sealSignRecordselect = caseApplicationService.selectSignUrl(caseApplication);
107
+        return success(sealSignRecordselect);
108
+    }
109
+
110
+    /**
111
+     * 查询用印链接
112
+     */
113
+    @PreAuthorize("@ss.hasPermi('caseManagement:list:selectSealUrl')")
114
+    @PostMapping("/selectSealUrl")
115
+    public AjaxResult selectSealUrl(@Validated @RequestBody CaseApplication caseApplication) throws EsignDemoException {
116
+        SealSignRecord sealUrlRecordselect = caseApplicationService.selectSealUrl(caseApplication);
117
+        return success(sealUrlRecordselect);
118
+    }
119
+
98 120
     /**
99 121
      * 立案申请导入模板下载
100 122
      */

ruoyi-common/src/main/java/com/ruoyi/common/utils/bean/SealSignRecord.java → ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/SealSignRecord.java Прегледај датотеку

@@ -1,4 +1,4 @@
1
-package com.ruoyi.common.utils.bean;
1
+package com.ruoyi.wisdomarbitrate.domain;
2 2
 
3 3
 import com.ruoyi.common.core.domain.BaseEntity;
4 4
 
@@ -30,6 +30,38 @@ public class SealSignRecord extends BaseEntity {
30 30
     /** 用印状态 */
31 31
     private Integer orgsignStatus;
32 32
 
33
+    /** 签名链接 */
34
+    private String signUrl;
35
+
36
+    public String getSignUrl() {
37
+        return signUrl;
38
+    }
39
+
40
+    public void setSignUrl(String signUrl) {
41
+        this.signUrl = signUrl;
42
+    }
43
+
44
+    public String getSealUrl() {
45
+        return sealUrl;
46
+    }
47
+
48
+    public void setSealUrl(String sealUrl) {
49
+        this.sealUrl = sealUrl;
50
+    }
51
+
52
+    /** 用印链接 */
53
+    private String sealUrl;
54
+
55
+    private Long caseAppliId;
56
+
57
+    public Long getCaseAppliId() {
58
+        return caseAppliId;
59
+    }
60
+
61
+    public void setCaseAppliId(Long caseAppliId) {
62
+        this.caseAppliId = caseAppliId;
63
+    }
64
+
33 65
     public Integer getPsnsignStatus() {
34 66
         return psnsignStatus;
35 67
     }
@@ -178,16 +210,7 @@ public class SealSignRecord extends BaseEntity {
178 210
     private double positionXorg;
179 211
     /** 印章位置y坐标 */
180 212
     private double positionYorg;
181
-    /** 案件申请id */
182
-    private Long caseAppliId;
183 213
 
184
-    public Long getCaseAppliId() {
185
-        return caseAppliId;
186
-    }
187
-
188
-    public void setCaseAppliId(Long caseAppliId) {
189
-        this.caseAppliId = caseAppliId;
190
-    }
191 214
 
192 215
     public Long getId() {
193 216
         return id;

+ 13
- 4
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/SealSignRecordMapper.java Прегледај датотеку

@@ -1,9 +1,18 @@
1 1
 package com.ruoyi.wisdomarbitrate.mapper;
2 2
 
3
-import com.ruoyi.common.utils.bean.SealSignRecord;
4
-import org.apache.ibatis.annotations.Mapper;
5 3
 
6
-@Mapper
4
+
5
+import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
6
+
7
+import java.util.List;
8
+
7 9
 public interface SealSignRecordMapper {
8
-    int insertSealSignRecord(SealSignRecord SealSignRecord);
10
+    List<SealSignRecord> selectSealSignRecord(SealSignRecord sealSignRecord);
11
+
12
+    List<SealSignRecord> selectSealSignRecordbyStat(SealSignRecord sealSignRecord);
13
+
14
+    int updataSealSignRecord(SealSignRecord sealSignRecord);
15
+
16
+
17
+    void insertSealSignRecord(SealSignRecord sealSignRecord);
9 18
 }

+ 6
- 0
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/ICaseApplicationService.java Прегледај датотеку

@@ -1,6 +1,8 @@
1 1
 package com.ruoyi.wisdomarbitrate.service;
2 2
 
3
+import com.ruoyi.common.exception.EsignDemoException;
3 4
 import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
5
+import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
4 6
 import com.ruoyi.wisdomarbitrate.domain.vo.SendRoomNoMessageVO;
5 7
 
6 8
 import java.util.List;
@@ -40,4 +42,8 @@ public interface ICaseApplicationService {
40 42
     CaseApplication selectCaseApplicationConfirm(CaseApplication caseApplication);
41 43
 
42 44
     String sendRoomNoMessage(SendRoomNoMessageVO messageVO);
45
+
46
+    SealSignRecord selectSignUrl(CaseApplication caseApplication) throws EsignDemoException;
47
+
48
+    SealSignRecord selectSealUrl(CaseApplication caseApplication) throws EsignDemoException;
43 49
 }

+ 126
- 90
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseApplicationServiceImpl.java Прегледај датотеку

@@ -4,25 +4,18 @@ 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
-
8 7
 import com.alibaba.fastjson.JSONArray;
9 8
 import com.alibaba.fastjson.JSONObject;
10 9
 import com.google.gson.Gson;
11
-import com.google.gson.JsonArray;
12 10
 import com.google.gson.JsonObject;
13 11
 import com.ruoyi.common.annotation.DataScope;
14 12
 import com.ruoyi.common.constant.CaseApplicationConstants;
15 13
 import com.ruoyi.common.core.domain.AjaxResult;
16 14
 import com.ruoyi.common.core.domain.entity.EsignHttpResponse;
17 15
 import com.ruoyi.common.core.domain.entity.SysDept;
18
-
19 16
 import com.ruoyi.common.core.domain.entity.SysUser;
20
-
21 17
 import com.ruoyi.common.exception.EsignDemoException;
22 18
 import com.ruoyi.common.exception.ServiceException;
23
-import com.ruoyi.common.utils.SignAward;
24
-import com.ruoyi.common.utils.bean.SealSignRecord;
25
-
26 19
 import com.ruoyi.common.utils.file.SaaSAPIFileUtils;
27 20
 import com.ruoyi.system.mapper.SysUserMapper;
28 21
 import com.ruoyi.wisdomarbitrate.utils.CaseLogUtils;
@@ -35,11 +28,10 @@ import com.ruoyi.wisdomarbitrate.domain.*;
35 28
 import com.ruoyi.wisdomarbitrate.domain.vo.SendRoomNoMessageVO;
36 29
 import com.ruoyi.wisdomarbitrate.mapper.*;
37 30
 import com.ruoyi.wisdomarbitrate.service.ICaseApplicationService;
31
+import com.ruoyi.wisdomarbitrate.utils.SignAward;
38 32
 import org.springframework.beans.factory.annotation.Autowired;
39 33
 import org.springframework.stereotype.Service;
40 34
 import org.springframework.transaction.annotation.Transactional;
41
-
42
-import java.io.File;
43 35
 import java.math.BigDecimal;
44 36
 import java.text.SimpleDateFormat;
45 37
 import java.util.*;
@@ -61,18 +53,17 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
61 53
     private ArbitratorMapper arbitratorMapper;
62 54
     @Autowired
63 55
     private ArbitrateRecordMapper arbitrateRecordMapper;
64
-
56
+    @Autowired
57
+    private ICaseApplicationService caseApplicationService;
65 58
     @Autowired
66 59
     private CaseAttachMapper caseAttachMapper;
67 60
     @Autowired
68 61
     private SysDeptMapper sysDeptMapper;
69 62
     @Autowired
70
-    private ICaseApplicationService caseApplicationService;
71
-    @Autowired
72 63
     private SysUserMapper sysUserMapper;
64
+
73 65
     @Autowired
74 66
     private SealSignRecordMapper sealSignRecordMapper;
75
-
76 67
     // 手机号正则
77 68
     private static final Pattern TELEPHONE_REGX =  Pattern.compile("^1(3\\d|4[5-9]|5[0-35-9]|6[2567]|7[0-8]|8\\d|9[0-35-9])\\d{8}$");
78 69
 
@@ -113,7 +104,7 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
113 104
                 caseAffiliate.setCaseAppliId(caseApplication.getId());
114 105
                 if(caseAffiliate.getIdentityType()==1&&StrUtil.isNotEmpty(caseAffiliate.getName())) {
115 106
                     // 将组织机构id设为申请人名称
116
-                    if (deptMap.containsKey(caseAffiliate.getName())) {
107
+                    if (deptMap.containsKey(caseApplication.getName())) {
117 108
                         caseAffiliate.setName(String.valueOf(deptMap.get(caseAffiliate.getName())));
118 109
                     } else {
119 110
                         // 如果不存在则新增
@@ -196,7 +187,7 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
196 187
                 caseAffiliate.setCaseAppliId(caseApplication.getId());
197 188
                 if(caseAffiliate.getIdentityType()==1&&StrUtil.isNotEmpty(caseAffiliate.getName())) {
198 189
                     // 将组织机构id设为申请人名称
199
-                    if (deptMap.containsKey(caseAffiliate.getName())) {
190
+                    if (deptMap.containsKey(caseApplication.getName())) {
200 191
                         caseAffiliate.setName(String.valueOf(deptMap.get(caseAffiliate.getName())));
201 192
                     } else {
202 193
                         // 如果不存在则新增
@@ -680,7 +671,6 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
680 671
             rows = caseApplicationMapper.submitCaseApplication(caseApplication);
681 672
         }else {
682 673
             List<Arbitrator> arbitrators = caseApplication.getArbitrators();
683
-            // 仲裁员信息
684 674
             if(arbitrators!=null&&arbitrators.size()>0){
685 675
                 List<Long> ids = arbitrators.stream().map(Arbitrator::getId).collect(Collectors.toList());
686 676
                 List<String> arbitratorNames = arbitrators.stream().map(Arbitrator::getArbitratorName).collect(Collectors.toList());
@@ -835,6 +825,7 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
835 825
             caseApplication.setCaseStatus(CaseApplicationConstants.SIGN_ARBITRATION);
836 826
             // 新增日志
837 827
             CaseLogUtils.insertCaseLog(caseApplication.getId(),CaseApplicationConstants.SIGN_ARBITRATION,"");
828
+
838 829
             rows = caseApplicationMapper.submitCaseApplication(caseApplication);
839 830
         }else if(agreeOrNotCheck.intValue()==2){//拒绝审核
840 831
             caseApplication.setCaseStatus(CaseApplicationConstants.VERPRIF_ARBITRATION);
@@ -928,6 +919,43 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
928 919
         return "短信发送成功";
929 920
     }
930 921
 
922
+    @Override
923
+    public SealSignRecord selectSignUrl(CaseApplication caseApplication) throws EsignDemoException {
924
+        SealSignRecord sealSignRecord = new SealSignRecord();
925
+        sealSignRecord.setCaseAppliId(caseApplication.getId());
926
+        Gson gson = new Gson();
927
+        List<SealSignRecord> sealSignRecords = sealSignRecordMapper.selectSealSignRecord(sealSignRecord);
928
+        SealSignRecord sealSignRecordReslt = new SealSignRecord();
929
+        if(sealSignRecords!=null&&sealSignRecords.size()>0){
930
+            SealSignRecord sealSignRecordselect = sealSignRecords.get(0);
931
+            EsignHttpResponse signUrl = SignAward.signUrl(sealSignRecordselect);
932
+            JsonObject signUrlJsonObject = gson.fromJson(signUrl.getBody(), JsonObject.class);
933
+            JsonObject signUrlData = signUrlJsonObject.getAsJsonObject("data");
934
+            String url = signUrlData.get("url").getAsString();
935
+            sealSignRecordReslt.setSignUrl(url);
936
+        }
937
+
938
+        return sealSignRecordReslt;
939
+    }
940
+
941
+    @Override
942
+    public SealSignRecord selectSealUrl(CaseApplication caseApplication) throws EsignDemoException {
943
+        SealSignRecord sealSignRecord = new SealSignRecord();
944
+        sealSignRecord.setCaseAppliId(caseApplication.getId());
945
+        Gson gson = new Gson();
946
+        List<SealSignRecord> sealSignRecords = sealSignRecordMapper.selectSealSignRecord(sealSignRecord);
947
+        SealSignRecord sealSignRecordReslt = new SealSignRecord();
948
+        if(sealSignRecords!=null&&sealSignRecords.size()>0){
949
+            SealSignRecord sealSignRecordselect = sealSignRecords.get(0);
950
+            EsignHttpResponse signUrl = SignAward.usesealUrl(sealSignRecordselect);
951
+            JsonObject signUrlJsonObject = gson.fromJson(signUrl.getBody(), JsonObject.class);
952
+            JsonObject signUrlData = signUrlJsonObject.getAsJsonObject("data");
953
+            String url = signUrlData.get("url").getAsString();
954
+            sealSignRecordReslt.setSealUrl(url);
955
+        }
956
+        return sealSignRecordReslt;
957
+    }
958
+
931 959
     @Override
932 960
     @Transactional
933 961
     public int pendTralSure(CaseApplication caseApplication) {
@@ -945,32 +973,27 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
945 973
         String hearDatestr = dateFormat.format(hearDate);
946 974
 
947 975
         String arbitratorId = caseApplicationselect.getArbitratorId();
948
-//        List<Arbitrator> arbitratorList = new ArrayList<>();
976
+        List<Arbitrator> arbitratorList = new ArrayList<>();
949 977
         if(StringUtils.isNotEmpty(arbitratorId)){
950 978
             String[] idStrList  = arbitratorId.split(",");
951 979
             List<Long> idList = new ArrayList<>();
952 980
             for(int i = 0;i < idStrList.length;i ++ ){
953 981
                 idList.add(Long.parseLong(idStrList[i]));
954 982
             }
955
-//
956
-
957
-                    // 查询仲裁员电话号
958
-                 List<SysUser> userList=   sysUserMapper.selectUserListByIds(idList);
959
-                 if(CollectionUtil.isNotEmpty(userList)) {
960
-                     for (SysUser user : userList) {
961
-
962
-
963
-                     //给仲裁员发送短信通知
964
-                     request.setPhone(user.getPhonenumber());
965
-                     // 1947342 普通短信 开庭日期通知 尊敬的{1}用户,您的{2}仲裁案件,开庭日期已确定为{3},请知晓,如非本人操作,请忽略本短信。
966
-                     String name = user.getNickName();
967
-                     request.setTemplateParamSet(new String[]{name, caseNum, hearDatestr});
968
-                     SmsUtils.sendSms(request);
969
-
970
-                     }
971
-                 }
972
-
973
-
983
+            Arbitrator arbitrator = new Arbitrator();
984
+            arbitrator.setIdList(idList);
985
+            arbitratorList = arbitratorMapper.selectArbitratorList(arbitrator);
986
+            if(arbitratorList!=null) {
987
+                for (int i = 0; i < arbitratorList.size(); i++) {
988
+                    Arbitrator arbitratorselect = arbitratorList.get(i);
989
+                    //给仲裁员发送短信通知
990
+                    request.setPhone(arbitratorselect.getTelephone());
991
+                    // 1947342 普通短信 开庭日期通知 尊敬的{1}用户,您的{2}仲裁案件,开庭日期已确定为{3},请知晓,如非本人操作,请忽略本短信。
992
+                    String name = arbitratorselect.getArbitratorName();
993
+                    request.setTemplateParamSet(new String[]{name, caseNum, hearDatestr});
994
+                    SmsUtils.sendSms(request);
995
+                }
996
+            }
974 997
         }
975 998
 
976 999
         CaseAffiliate caseAffiliate = new CaseAffiliate();
@@ -992,7 +1015,7 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
992 1015
                     if(StrUtil.isNotEmpty(caseAffiliateselect.getName())&&deptMap.containsKey(caseAffiliateselect.getName())){
993 1016
                         caseAffiliateselect.setName(deptMap.get(caseAffiliateselect.getName()));
994 1017
                     }
995
-
1018
+                    caseAffiliateselect.setName(caseAffiliateselect.getName());;
996 1019
                 }
997 1020
                 //给申请人、被申请人发送短信通知
998 1021
                 request.setPhone(caseAffiliateselect.getContactTelphone());
@@ -1130,62 +1153,75 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
1130 1153
         caseApplicationNew.setFeePayable(caseApplicationinsertDiffer.getFeePayable());
1131 1154
     }
1132 1155
 
1133
-    @Transactional
1134
-    public void fixExecuteSelectFlowDetailUtils() throws EsignDemoException {
1135
-
1136
-        Gson gson = new Gson();
1137
-
1138
-
1139
-
1140
-        SealSignRecord sealSignRecord = new SealSignRecord();
1141
-        sealSignRecord.setSignFlowid("41e6732b48c54c63a91b2379c352212d");
1142
-        EsignHttpResponse signFlowDetail = SignAward.signFlowDetail(sealSignRecord);
1143
-        JsonObject signFlowDetailJsonObject = gson.fromJson(signFlowDetail.getBody(),JsonObject.class);
1144
-        JsonObject flowDetailData = signFlowDetailJsonObject.getAsJsonObject("data");
1145
-        JsonArray signersArray = flowDetailData.get("signers").getAsJsonArray();
1146
-        for (int i = 0; i < signersArray.size(); i++) {
1147
-            JsonObject signerObject = (JsonObject)signersArray.get(i);
1148
-            Integer psnsignStatus ;
1149
-            Integer orgsignStatus ;
1150
-            if(!(signerObject.get("psnSigner").toString()).equals("null")){
1151
-                JsonObject psnSignerData = signerObject.getAsJsonObject("psnSigner");
1152
-                if(psnSignerData!=null){
1153
-                    psnsignStatus = signerObject.get("signStatus").getAsInt();
1154
-                    sealSignRecord.setPsnsignStatus(psnsignStatus);
1155
-
1156
-                    if(psnsignStatus.intValue()==2){
1157
-                        //更新立案申请状态为待用印
1158
-                        CaseApplication caseApplication = new CaseApplication();
1159
-                        caseApplication.setCaseStatus(CaseApplicationConstants.ARBITRATED_SEAL);
1160
-                        caseApplicationMapper.submitCaseApplication(caseApplication);
1161
-
1162
-                        //修改"签署用印记录表"的状态为待用印
1163
-
1164
-                    }
1165
-                }
1166
-            }
1167
-            if(!(signerObject.get("orgSigner").toString()).equals("null")){
1168
-                JsonObject orgSignerData = signerObject.getAsJsonObject("orgSigner");
1169
-                if(orgSignerData!=null){
1170
-                    orgsignStatus = signerObject.get("signStatus").getAsInt();
1171
-                    sealSignRecord.setOrgsignStatus(orgsignStatus);
1172
-                    //更新立案申请状态为待送达
1173
-                    CaseApplication caseApplication = new CaseApplication();
1174
-                    caseApplication.setCaseStatus(CaseApplicationConstants.ARBITRATION_DELIVERY);
1175
-                    caseApplicationMapper.submitCaseApplication(caseApplication);
1176
-
1177
-                    //修改"签署用印记录表"的状态为签署完成
1178
-
1179
-                    //下载审核完成的裁决书,
1180
-//                    SaaSAPIFileUtils.fileDownloadUrl();
1181
-
1182
-                }
1156
+//    @Transactional
1157
+//    public void fixExecuteSelectFlowDetailUtils() throws EsignDemoException {
1158
+//
1159
+//        Gson gson = new Gson();
1160
+//
1161
+//        SealSignRecord sealSignRecordselect = new SealSignRecord();
1162
+//        sealSignRecordselect.setSignFlowStatus(1);
1163
+//
1164
+//        List<SealSignRecord> sealSignRecords = sealSignRecordMapper.selectSealSignRecord(sealSignRecordselect);
1165
+//        if(sealSignRecords!=null&&sealSignRecords.size()>0){
1166
+//            for (int i = 0; i < sealSignRecords.size(); i++) {
1167
+//                SealSignRecord sealSignRecord = sealSignRecords.get(i);
1168
+//                EsignHttpResponse signFlowDetail = SignAward.signFlowDetail(sealSignRecord);
1169
+//                JsonObject signFlowDetailJsonObject = gson.fromJson(signFlowDetail.getBody(),JsonObject.class);
1170
+//                JsonObject flowDetailData = signFlowDetailJsonObject.getAsJsonObject("data");
1171
+//                JsonArray signersArray = flowDetailData.get("signers").getAsJsonArray();
1172
+//                for (int j = 0; j < signersArray.size(); j++) {
1173
+//                    JsonObject signerObject = (JsonObject)signersArray.get(j);
1174
+//                    Integer psnsignStatus ;
1175
+//                    Integer orgsignStatus ;
1176
+//                    if(!(signerObject.get("psnSigner").toString()).equals("null")){
1177
+//                        JsonObject psnSignerData = signerObject.getAsJsonObject("psnSigner");
1178
+//                        if(psnSignerData!=null){
1179
+//                            psnsignStatus = signerObject.get("signStatus").getAsInt();
1180
+//                            sealSignRecord.setPsnsignStatus(psnsignStatus);
1181
+//
1182
+//                            if(psnsignStatus.intValue()==2){
1183
+//                                //更新立案申请状态为待用印
1184
+//                                CaseApplication caseApplication = new CaseApplication();
1185
+//                                caseApplication.setCaseStatus(CaseApplicationConstants.ARBITRATED_SEAL);
1186
+//                                caseApplicationMapper.submitCaseApplication(caseApplication);
1187
+//
1188
+//                                //修改"签署用印记录表"的状态为待用印
1189
+//                                sealSignRecord.setSignFlowStatus(2);
1190
+//                                sealSignRecordMapper.updataSealSignRecord(sealSignRecord);
1191
+//
1192
+//                            }
1193
+//                        }
1194
+//                    }
1195
+//                    if(!(signerObject.get("orgSigner").toString()).equals("null")){
1196
+//                        JsonObject orgSignerData = signerObject.getAsJsonObject("orgSigner");
1197
+//                        if(orgSignerData!=null){
1198
+//                            orgsignStatus = signerObject.get("signStatus").getAsInt();
1199
+//                            sealSignRecord.setOrgsignStatus(orgsignStatus);
1200
+//                            //更新立案申请状态为待送达
1201
+//                            CaseApplication caseApplication = new CaseApplication();
1202
+//                            caseApplication.setCaseStatus(CaseApplicationConstants.ARBITRATION_DELIVERY);
1203
+//                            caseApplicationMapper.submitCaseApplication(caseApplication);
1204
+//
1205
+//                            //修改"签署用印记录表"的状态为签署完成
1206
+//                            sealSignRecord.setSignFlowStatus(3);
1207
+//                            sealSignRecordMapper.updataSealSignRecord(sealSignRecord);
1208
+//
1209
+//                            //下载审核完成的裁决书,
1210
+////                    SaaSAPIFileUtils.fileDownloadUrl();
1211
+//
1212
+//                        }
1213
+//
1214
+//                    }
1215
+//
1216
+//                }
1217
+//
1218
+//            }
1219
+//
1220
+//        }
1183 1221
 
1184
-            }
1185 1222
 
1186
-        }
1187 1223
 
1188
-    }
1224
+//    }
1189 1225
 
1190 1226
 
1191 1227
 

+ 110
- 34
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/utils/FixSelectFlowDetailUtils.java Прегледај датотеку

@@ -6,65 +6,141 @@ import com.google.gson.JsonObject;
6 6
 import com.ruoyi.common.constant.CaseApplicationConstants;
7 7
 import com.ruoyi.common.core.domain.entity.EsignHttpResponse;
8 8
 import com.ruoyi.common.exception.EsignDemoException;
9
-import com.ruoyi.common.utils.SignAward;
10
-import com.ruoyi.common.utils.bean.SealSignRecord;
11 9
 import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
10
+import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
12 11
 import com.ruoyi.wisdomarbitrate.mapper.CaseApplicationMapper;
12
+import com.ruoyi.wisdomarbitrate.mapper.SealSignRecordMapper;
13 13
 import org.springframework.beans.factory.annotation.Autowired;
14
+import org.springframework.scheduling.annotation.Scheduled;
15
+import org.springframework.stereotype.Component;
14 16
 
17
+import java.util.List;
18
+
19
+@Component
15 20
 public class FixSelectFlowDetailUtils {
16 21
 
17 22
     @Autowired
18 23
     private CaseApplicationMapper caseApplicationMapper;
24
+    @Autowired
25
+    private SealSignRecordMapper sealSignRecordMapper;
19 26
 
20
-
27
+    @Scheduled(cron = "0/3 * * * * ?")
21 28
     public void fixExecuteSelectFlowDetailUtils() throws EsignDemoException {
22
-
23 29
         Gson gson = new Gson();
24 30
 
31
+        SealSignRecord sealSignRecordselect = new SealSignRecord();
32
+        sealSignRecordselect.setSignFlowStatus(1);
33
+
34
+        List<SealSignRecord> sealSignRecords = sealSignRecordMapper.selectSealSignRecordbyStat(sealSignRecordselect);
35
+        if(sealSignRecords!=null&&sealSignRecords.size()>0){
36
+            for (int i = 0; i < sealSignRecords.size(); i++) {
37
+                SealSignRecord sealSignRecord = sealSignRecords.get(i);
38
+                EsignHttpResponse signFlowDetail = SignAward.signFlowDetail(sealSignRecord);
39
+                JsonObject signFlowDetailJsonObject = gson.fromJson(signFlowDetail.getBody(),JsonObject.class);
40
+                JsonObject flowDetailData = signFlowDetailJsonObject.getAsJsonObject("data");
41
+                JsonArray signersArray = flowDetailData.get("signers").getAsJsonArray();
42
+
43
+                System.out.println("signFlowDetailJsonObject-----------"+signFlowDetailJsonObject.toString());
44
+
45
+                Integer psnsignStatus = null;
46
+                Integer orgsignStatus = null;
47
+                for (int j = 0; j < signersArray.size(); j++) {
48
+                    JsonObject signerObject = (JsonObject)signersArray.get(j);
49
+
50
+                    if(!(signerObject.get("psnSigner").toString()).equals("null")){
51
+                        JsonObject psnSignerData = signerObject.getAsJsonObject("psnSigner");
52
+                        if(psnSignerData!=null){
53
+                            psnsignStatus = signerObject.get("signStatus").getAsInt();
54
+                        }
55
+                    }
56
+                    if(!(signerObject.get("orgSigner").toString()).equals("null")){
57
+                        JsonObject orgSignerData = signerObject.getAsJsonObject("orgSigner");
58
+                        if(orgSignerData!=null){
59
+                            orgsignStatus = signerObject.get("signStatus").getAsInt();
60
+                        }
61
+                    }
25 62
 
63
+                }
26 64
 
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);
65
+                System.out.println("psnsignStatus-----------"+psnsignStatus);
66
+                System.out.println("orgsignStatus-----------"+orgsignStatus);
48 67
 
68
+                if((psnsignStatus.intValue()==2)&&(orgsignStatus.intValue()==1)){
69
+                    //更新立案申请状态为待用印
70
+                    CaseApplication caseApplication = new CaseApplication();
71
+                    caseApplication.setId(sealSignRecord.getCaseAppliId());
72
+                    caseApplication.setCaseStatus(CaseApplicationConstants.ARBITRATED_SEAL);
73
+                    caseApplicationMapper.submitCaseApplication(caseApplication);
49 74
 
75
+                    //修改"签署用印记录表"的状态为待用印
76
+                    sealSignRecord.setSignFlowStatus(2);
77
+                    sealSignRecordMapper.updataSealSignRecord(sealSignRecord);
78
+                }
79
+                if((psnsignStatus.intValue()==2)&&(orgsignStatus.intValue()==2)){
80
+                    //更新立案申请状态为待送达
81
+                    CaseApplication caseApplication = new CaseApplication();
82
+                    caseApplication.setId(sealSignRecord.getCaseAppliId());
83
+                    caseApplication.setCaseStatus(CaseApplicationConstants.ARBITRATION_DELIVERY);
84
+                    caseApplicationMapper.submitCaseApplication(caseApplication);
50 85
 
51
-                    }
86
+                    //修改"签署用印记录表"的状态为签署完成
87
+                    sealSignRecord.setSignFlowStatus(3);
88
+                    sealSignRecordMapper.updataSealSignRecord(sealSignRecord);
52 89
 
90
+                    //下载审核完成的裁决书,
91
+//                  SaaSAPIFileUtils.fileDownloadUrl();
53 92
 
54 93
 
94
+                    
55 95
                 }
56 96
             }
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 97
 
66 98
         }
67 99
 
100
+//        Gson gson = new Gson();
101
+//
102
+//        SealSignRecord sealSignRecord = new SealSignRecord();
103
+//        sealSignRecord.setSignFlowid("41e6732b48c54c63a91b2379c352212d");
104
+//        EsignHttpResponse signFlowDetail = SignAward.signFlowDetail(sealSignRecord);
105
+//        JsonObject signFlowDetailJsonObject = gson.fromJson(signFlowDetail.getBody(),JsonObject.class);
106
+//        JsonObject flowDetailData = signFlowDetailJsonObject.getAsJsonObject("data");
107
+//        JsonArray signersArray = flowDetailData.get("signers").getAsJsonArray();
108
+//        for (int i = 0; i < signersArray.size(); i++) {
109
+//            JsonObject signerObject = (JsonObject)signersArray.get(i);
110
+//            Integer psnsignStatus ;
111
+//            Integer orgsignStatus ;
112
+//            if(!(signerObject.get("psnSigner").toString()).equals("null")){
113
+//                JsonObject psnSignerData = signerObject.getAsJsonObject("psnSigner");
114
+//                if(psnSignerData!=null){
115
+//                    psnsignStatus = signerObject.get("signStatus").getAsInt();
116
+//                    sealSignRecord.setPsnsignStatus(psnsignStatus);
117
+//
118
+//                    if(psnsignStatus.intValue()==2){
119
+//                        //更新立案申请状态为待用印
120
+//                        CaseApplication caseApplication = new CaseApplication();
121
+//                        caseApplication.setCaseStatus(CaseApplicationConstants.ARBITRATED_SEAL);
122
+//                        caseApplicationMapper.submitCaseApplication(caseApplication);
123
+//
124
+//
125
+//
126
+//                    }
127
+//
128
+//
129
+//
130
+//                }
131
+//            }
132
+//            if(!(signerObject.get("orgSigner").toString()).equals("null")){
133
+//                JsonObject orgSignerData = signerObject.getAsJsonObject("orgSigner");
134
+//                if(orgSignerData!=null){
135
+//                    orgsignStatus = signerObject.get("signStatus").getAsInt();
136
+//                    sealSignRecord.setOrgsignStatus(orgsignStatus);
137
+//                }
138
+//
139
+//            }
140
+//
141
+//        }
142
+
143
+
68 144
     }
69 145
 
70 146
 

ruoyi-common/src/main/java/com/ruoyi/common/utils/SignAward.java → ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/utils/SignAward.java Прегледај датотеку

@@ -1,4 +1,4 @@
1
-package com.ruoyi.common.utils;
1
+package com.ruoyi.wisdomarbitrate.utils;
2 2
 
3 3
 import com.google.gson.Gson;
4 4
 import com.google.gson.JsonArray;
@@ -6,9 +6,10 @@ import com.google.gson.JsonObject;
6 6
 import com.ruoyi.common.core.domain.entity.EsignHttpResponse;
7 7
 import com.ruoyi.common.enums.EsignRequestType;
8 8
 import com.ruoyi.common.exception.EsignDemoException;
9
-import com.ruoyi.common.utils.bean.SealSignRecord;
9
+import com.ruoyi.common.utils.EsignApplicaConfig;
10
+import com.ruoyi.common.utils.EsignHttpHelper;
11
+import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
10 12
 
11
-import java.util.HashMap;
12 13
 import java.util.Map;
13 14
 
14 15
 public class SignAward {
@@ -106,8 +107,8 @@ public class SignAward {
106 107
                 }
107 108
 
108 109
             }
109
-
110 110
         }
111
+
111 112
         System.out.println(signFlowDetailJsonObject);
112 113
 
113 114
 

+ 43
- 0
ruoyi-system/src/main/resources/mapper/wisdomarbitrate/SealSignRecordMapper.xml Прегледај датотеку

@@ -3,6 +3,7 @@
3 3
         PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
4 4
         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
5 5
 <mapper namespace="com.ruoyi.wisdomarbitrate.mapper.SealSignRecordMapper">
6
+
6 7
     <insert id="insertSealSignRecord"  useGeneratedKeys="true" keyProperty="id">
7 8
         INSERT INTO seal_sign_record (file_id, file_name, sign_flow_id , penson_account
8 9
         ,penson_name,orgnize_name,orgn_name_psn_acc,orgn_name_psn_name,position_pagepsn
@@ -13,4 +14,46 @@
13 14
         ,#{positionPageorg},#{positionXorg},#{positionYorg},#{caseAppliId},#{signFlowStatus})
14 15
     </insert>
15 16
 
17
+
18
+    <resultMap type="SealSignRecord" id="SealSignRecordResult">
19
+        <id     property="id"       column="id"      />
20
+        <result property="caseAppliId"       column="case_appli_id"      />
21
+        <result property="fileid"     column="file_id"    />
22
+        <result property="signFlowid"     column="sign_flow_id"    />
23
+        <result property="signFlowStatus"        column="sign_flow_status"        />
24
+
25
+        <result property="pensonAccount"        column="penson_account"        />
26
+        <result property="orgnizeName"        column="orgnize_name"        />
27
+        <result property="orgnizeNamePsnAccount"        column="orgn_name_psn_acc"        />
28
+
29
+    </resultMap>
30
+
31
+    <select id="selectSealSignRecord" parameterType="SealSignRecord" resultMap="SealSignRecordResult">
32
+        SELECT s.id ,s.case_appli_id ,s.file_id ,s.sign_flow_id,s.penson_account ,s.orgnize_name ,s.orgn_name_psn_acc
33
+        from seal_sign_record s
34
+        <where>
35
+            <if test="signFlowStatus != null ">
36
+                AND s.sign_flow_status  = #{signFlowStatus}
37
+            </if>
38
+            <if test="caseAppliId != null ">
39
+                AND s.case_appli_id  = #{caseAppliId}
40
+            </if>
41
+        </where>
42
+    </select>
43
+
44
+    <select id="selectSealSignRecordbyStat" parameterType="SealSignRecord" resultMap="SealSignRecordResult">
45
+        SELECT s.id ,s.case_appli_id ,s.file_id ,s.sign_flow_id
46
+        from seal_sign_record s
47
+        where s.sign_flow_status  in (1,2)
48
+    </select>
49
+
50
+    <update id="updataSealSignRecord" parameterType="SealSignRecord">
51
+        update seal_sign_record
52
+        <set>
53
+            <if test="signFlowStatus != null">sign_flow_status = #{signFlowStatus}</if>
54
+        </set>
55
+        where id = #{id}
56
+    </update>
57
+
58
+
16 59
 </mapper>