Kaynağa Gözat

实现生成庭审笔录

qitz 2 yıl önce
ebeveyn
işleme
6b56829d92

+ 12
- 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/wisdomarbitrate/CaseApplicationController.java Dosyayı Görüntüle

@@ -8,6 +8,7 @@ import com.ruoyi.common.core.page.TableDataInfo;
8 8
 import com.ruoyi.common.enums.BusinessType;
9 9
 import com.ruoyi.common.exception.EsignDemoException;
10 10
 import com.ruoyi.common.utils.WxAppletNotifyUtils;
11
+import com.ruoyi.wisdomarbitrate.domain.ArbitrateRecord;
11 12
 import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
12 13
 import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
13 14
 import com.ruoyi.wisdomarbitrate.domain.vo.SendRoomNoMessageVO;
@@ -243,4 +244,15 @@ public class CaseApplicationController extends BaseController {
243 244
         return success(schemeUrl);
244 245
     }
245 246
 
247
+    /**
248
+     * 生成庭审笔录
249
+     * @param arbitrateRecord
250
+     * @return
251
+     */
252
+    @PostMapping("/creatTrialRecord")
253
+    @PreAuthorize("@ss.hasPermi('caseManagement:list:creatTrialRecord')")
254
+    public AjaxResult creatTrialRecord(@Validated @RequestBody ArbitrateRecord arbitrateRecord){
255
+        return caseApplicationService.creatTrialRecord(arbitrateRecord);
256
+    }
257
+
246 258
 }

+ 36
- 1
ruoyi-common/src/main/java/com/ruoyi/common/utils/file/SaaSAPIFileUtils.java Dosyayı Görüntüle

@@ -1,14 +1,20 @@
1 1
 package com.ruoyi.common.utils.file;
2 2
 
3 3
 import cn.hutool.json.JSONObject;
4
+import com.google.gson.Gson;
5
+import com.google.gson.JsonArray;
6
+import com.google.gson.JsonObject;
4 7
 import com.ruoyi.common.config.EsignDemoConfig;
5 8
 import com.ruoyi.common.constant.EsignHeaderConstant;
9
+import com.ruoyi.common.constant.FileTransformation;
6 10
 import com.ruoyi.common.core.domain.entity.EsignHttpResponse;
7 11
 import com.ruoyi.common.enums.EsignRequestType;
8 12
 import com.ruoyi.common.exception.EsignDemoException;
9 13
 import com.ruoyi.common.utils.EsignHttpHelper;
10 14
 import com.ruoyi.common.utils.bean.EsignFileBean;
15
+import com.ruoyi.common.utils.uuid.IdUtils;
11 16
 
17
+import java.time.LocalDate;
12 18
 import java.util.Map;
13 19
 
14 20
 public class SaaSAPIFileUtils {
@@ -79,7 +85,7 @@ public class SaaSAPIFileUtils {
79 85
         return EsignHttpHelper.doCommHttp(eSignHost, apiaddr,requestType , jsonParm, header,true);
80 86
     }
81 87
 
82
-  public static void main(String[] args) throws EsignDemoException {
88
+  public static void main1(String[] args) throws EsignDemoException {
83 89
       String filePath = "D:\\home\\ruoyi\\uploadPath\\upload\\2023\\10\\7\\23893bfd3f2249ffa5c82850c11c482e.docx";
84 90
         EsignHttpResponse uploadUrl = getUploadUrl(filePath);
85 91
         String body = uploadUrl.getBody();
@@ -96,5 +102,34 @@ public class SaaSAPIFileUtils {
96 102
 //        System.out.println("这是获取文件上传状态的结果:"+fileStatus.getBody());
97 103
 //        getFileStatus("a808f1f39a744357a2f018e4ab34c55d");
98 104
 //     fileDownloadUrl("");
105
+    }
106
+    public static void main(String[] args) throws EsignDemoException {
107
+        String signFlowId = "41e6732b48c54c63a91b2379c352212d";
108
+        Gson gson = new Gson();
109
+        EsignHttpResponse fileDownload = fileDownloadUrl(signFlowId);
110
+        JsonObject fileDownloadJsonObject = gson.fromJson(fileDownload.getBody(),JsonObject.class);
111
+        JsonObject fileDownloadData = fileDownloadJsonObject.getAsJsonObject("data");
112
+        JsonArray filesArray = fileDownloadData.get("files").getAsJsonArray();
113
+        if(filesArray!=null&&filesArray.size()>0){
114
+            JsonObject fileObject = (JsonObject)filesArray.get(0);
115
+            String fileDownloadUrl = fileObject.get("downloadUrl").toString();
116
+            String fileName = java.util.UUID.randomUUID().toString().replace("-", "") + ".pdf";
117
+            String savePath = "/home/ruoyi/uploadPath/upload";
118
+            LocalDate now = LocalDate.now();
119
+            String year = Integer.toString(now.getYear());
120
+            String month = String.format("%02d", now.getMonthValue());
121
+            String day = String.format("%02d", now.getDayOfMonth());
122
+            String saveName = "/profile/upload/" + year + "/" + month + "/" + day + "/" + fileName;
123
+            String dir = "F:\\ymkf\\shanghaixm\\testCaijueshu\\" + fileName;
124
+            String fileDownloadUrlnew  = fileDownloadUrl.substring(1,fileDownloadUrl.length()-1);
125
+            FileTransformation.downLoadFileByUrl(fileDownloadUrlnew,dir);
126
+
127
+
128
+        }
129
+
130
+
131
+
132
+
133
+
99 134
     }
100 135
 }

+ 10
- 0
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/domain/CaseApplication.java Dosyayı Görüntüle

@@ -101,6 +101,16 @@ public class CaseApplication  extends BaseEntity {
101 101
 
102 102
     /** 案件描述 */
103 103
     private String caseDescribe;
104
+    /** 裁决书URL */
105
+    private String  filearbitraUrl;
106
+
107
+    public String getFilearbitraUrl() {
108
+        return filearbitraUrl;
109
+    }
110
+
111
+    public void setFilearbitraUrl(String filearbitraUrl) {
112
+        this.filearbitraUrl = filearbitraUrl;
113
+    }
104 114
 
105 115
     /** 是否同意组庭 */
106 116
     private Integer isAgreePendTral;

+ 4
- 0
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/mapper/CaseAttachMapper.java Dosyayı Görüntüle

@@ -2,6 +2,7 @@ package com.ruoyi.wisdomarbitrate.mapper;
2 2
 
3 3
 import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
4 4
 import com.ruoyi.wisdomarbitrate.domain.CaseAttach;
5
+import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
5 6
 
6 7
 import java.util.List;
7 8
 
@@ -14,4 +15,7 @@ public interface CaseAttachMapper {
14 15
 
15 16
 
16 17
     int updateCaseAttach(CaseAttach caseAttach);
18
+
19
+    int updateCaseAttachBycaseid(CaseAttach caseAttach);
20
+
17 21
 }

+ 4
- 0
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/ICaseApplicationService.java Dosyayı Görüntüle

@@ -1,6 +1,8 @@
1 1
 package com.ruoyi.wisdomarbitrate.service;
2 2
 
3
+import com.ruoyi.common.core.domain.AjaxResult;
3 4
 import com.ruoyi.common.exception.EsignDemoException;
5
+import com.ruoyi.wisdomarbitrate.domain.ArbitrateRecord;
4 6
 import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
5 7
 import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
6 8
 import com.ruoyi.wisdomarbitrate.domain.vo.SendRoomNoMessageVO;
@@ -46,4 +48,6 @@ public interface ICaseApplicationService {
46 48
     SealSignRecord selectSignUrl(CaseApplication caseApplication) throws EsignDemoException;
47 49
 
48 50
     SealSignRecord selectSealUrl(CaseApplication caseApplication) throws EsignDemoException;
51
+
52
+    AjaxResult creatTrialRecord(ArbitrateRecord arbitrateRecord);
49 53
 }

+ 5
- 4
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/AdjudicationServiceImpl.java Dosyayı Görüntüle

@@ -56,6 +56,7 @@ public class AdjudicationServiceImpl implements IAdjudicationService {
56 56
     private ICaseLogRecordService caseLogRecordService;
57 57
 
58 58
     @Override
59
+    @Transactional
59 60
     public AjaxResult createDocument(CaseApplication caseApplication) {
60 61
         try {
61 62
             Map<String, Object> datas = new HashMap<>();
@@ -125,10 +126,10 @@ public class AdjudicationServiceImpl implements IAdjudicationService {
125 126
             datas.put("year", year);
126 127
             datas.put("months", month);
127 128
             datas.put("day", day);
128
-            String modalFilePath = "/data/arbitrate-document/template/仲裁裁决书模板.docx";
129
-            //String modalFilePath = "D:/develop/仲裁裁决书模板 (2).docx";
130
-            String saveFolderPath = "/home/ruoyi/uploadPath/upload/" + year + "/" + month + "/" + day;
131
-            //String saveFolderPath = "D:/data/" + now.getYear() + "/" + now.getMonthValue() + "/" + now.getDayOfMonth();
129
+//            String modalFilePath = "/data/arbitrate-document/template/仲裁裁决书模板.docx";
130
+            String modalFilePath = "D:/develop/仲裁裁决书模板 (2).docx";
131
+//            String saveFolderPath = "/home/ruoyi/uploadPath/upload/" + year + "/" + month + "/" + day;
132
+            String saveFolderPath = "D:/data/" + now.getYear() + "/" + now.getMonthValue() + "/" + now.getDayOfMonth();
132 133
             String fileName = UUID.randomUUID().toString().replace("-", "") + ".docx";
133 134
             String saveName = "/profile/upload/" + year + "/" + month + "/" + day + "/" + fileName;
134 135
             String resultFilePath = saveFolderPath + "/" + fileName;

+ 174
- 0
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/service/impl/CaseApplicationServiceImpl.java Dosyayı Görüntüle

@@ -20,6 +20,7 @@ import com.ruoyi.common.core.domain.entity.SysDept;
20 20
 import com.ruoyi.common.core.domain.entity.SysUser;
21 21
 import com.ruoyi.common.exception.EsignDemoException;
22 22
 import com.ruoyi.common.exception.ServiceException;
23
+import com.ruoyi.common.utils.WordUtil;
23 24
 import com.ruoyi.common.utils.file.SaaSAPIFileUtils;
24 25
 
25 26
 
@@ -44,8 +45,14 @@ import org.springframework.stereotype.Service;
44 45
 import org.springframework.transaction.annotation.Transactional;
45 46
 
46 47
 import java.io.File;
48
+import java.io.IOException;
47 49
 import java.math.BigDecimal;
50
+import java.nio.file.Files;
51
+import java.nio.file.Path;
52
+import java.nio.file.StandardCopyOption;
48 53
 import java.text.SimpleDateFormat;
54
+import java.time.LocalDate;
55
+import java.time.ZoneId;
49 56
 import java.util.*;
50 57
 import java.util.regex.Pattern;
51 58
 import java.util.stream.Collectors;
@@ -75,6 +82,8 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
75 82
     private SysUserMapper sysUserMapper;
76 83
     @Autowired
77 84
     private SealSignRecordMapper sealSignRecordMapper;
85
+    @Autowired
86
+    private CaseLogRecordMapper caseLogRecordMapper;
78 87
     // 手机号正则
79 88
     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}$");
80 89
 
@@ -968,6 +977,171 @@ public class CaseApplicationServiceImpl implements ICaseApplicationService {
968 977
         return sealSignRecordReslt;
969 978
     }
970 979
 
980
+    @Override
981
+    @Transactional
982
+    public AjaxResult creatTrialRecord(ArbitrateRecord arbitrateRecordselect) {
983
+        //生成仲裁结果
984
+        CaseApplication caseApplicationselect = new CaseApplication();
985
+        caseApplicationselect.setId(arbitrateRecordselect.getCaseAppliId());
986
+        CaseApplication caseApplication = caseApplicationMapper.selectCaseApplication(caseApplicationselect);
987
+        String createBy = caseApplication.getCreateBy();
988
+        if (createBy!=null){
989
+            arbitrateRecordselect.setCreateBy(createBy);
990
+        }
991
+        //先判断案件是否已经提交过仲裁结果
992
+        ArbitrateRecord arbitrateRecordsele = arbitrateRecordMapper.selectArbitrateRecord(arbitrateRecordselect);
993
+        if (arbitrateRecordsele!=null){
994
+            int i = arbitrateRecordMapper.updataArbitrateRecord(arbitrateRecordselect);
995
+            if (i>0){
996
+                //案件日志表里添加数据
997
+                CaseLogRecord caseLogRecord = new CaseLogRecord();
998
+                caseLogRecord.setCaseAppliId(caseApplication.getId());
999
+                caseLogRecord.setCaseNode(caseApplication.getCaseStatus());
1000
+                if (createBy!=null){
1001
+                    caseLogRecord.setCreateBy(createBy);
1002
+                }
1003
+                caseLogRecordMapper.insertCaseLogRecord(caseLogRecord);
1004
+
1005
+                // 新增日志
1006
+                CaseLogUtils.insertCaseLog(caseApplication.getId(),CaseApplicationConstants.GENERATED_ARBITRATION,"");
1007
+
1008
+
1009
+            }
1010
+        }else {
1011
+            //提交仲裁结果
1012
+            int i =  arbitrateRecordMapper.insertArbitrateRecord(arbitrateRecordselect);
1013
+
1014
+            if (i>0){
1015
+                //案件日志表里添加数据
1016
+                CaseLogRecord caseLogRecord = new CaseLogRecord();
1017
+                caseLogRecord.setCaseAppliId(caseApplication.getId());
1018
+                caseLogRecord.setCaseNode(caseApplication.getCaseStatus());
1019
+                if (createBy!=null){
1020
+                    caseLogRecord.setCreateBy(createBy);
1021
+                }
1022
+                caseLogRecordMapper.insertCaseLogRecord(caseLogRecord);
1023
+
1024
+                // 新增日志
1025
+                CaseLogUtils.insertCaseLog(caseApplication.getId(),CaseApplicationConstants.GENERATED_ARBITRATION,"");
1026
+
1027
+            }
1028
+        }
1029
+
1030
+        //生成庭审笔录
1031
+        try {
1032
+            Map<String, Object> datas = new HashMap<>();
1033
+            Long id = caseApplication.getId();
1034
+            if (id == null) {
1035
+                return null;
1036
+            }
1037
+
1038
+            //获取仲裁记录表里的相关信息
1039
+            ArbitrateRecord arbitrateRecord = new ArbitrateRecord();
1040
+            arbitrateRecord.setCaseAppliId(id);
1041
+            ArbitrateRecord arbitrateRecord1 = arbitrateRecordMapper.selectArbitrateRecord(arbitrateRecord);
1042
+
1043
+            //获取案件关联人信息
1044
+            CaseAffiliate caseAffiliate = new CaseAffiliate();
1045
+            caseAffiliate.setCaseAppliId(id);
1046
+            List<CaseAffiliate> caseAffiliates = caseAffiliateMapper.selectCaseAffiliate(caseAffiliate);
1047
+            if (caseAffiliates != null && caseAffiliates.size() > 0) {
1048
+                for (CaseAffiliate affiliate : caseAffiliates) {
1049
+                    //获取身份类型
1050
+                    int identityType = affiliate.getIdentityType();
1051
+                    if (identityType == 1) {    //申请人
1052
+                        datas.put("appName", affiliate.getName());
1053
+                        datas.put("appIDNo", affiliate.getIdentityNum());
1054
+                        datas.put("appAddress", affiliate.getContactAddress());
1055
+                        datas.put("appAgentName", affiliate.getNameAgent());
1056
+                        datas.put("appAgentIDNo", affiliate.getIdentityNumAgent());
1057
+                    } else if (identityType == 2) {  //被申请人
1058
+                        datas.put("resName", affiliate.getName());
1059
+                        datas.put("resIDNo", affiliate.getIdentityNum());
1060
+                        datas.put("resAddress", affiliate.getContactAddress());
1061
+                        datas.put("resAgentName", affiliate.getNameAgent());
1062
+                        datas.put("resAgentIDNo", affiliate.getIdentityNumAgent());
1063
+                    }
1064
+                }
1065
+            }
1066
+            String arbitratorName = caseApplication.getArbitratorName();
1067
+            datas.put("caseName", caseApplication.getCaseName());
1068
+            datas.put("arbitratorName", arbitratorName);
1069
+            Date hearDate = caseApplication.getHearDate();
1070
+            if (hearDate != null) {
1071
+                LocalDate localDate = hearDate.toInstant()
1072
+                        .atZone(ZoneId.systemDefault())
1073
+                        .toLocalDate();
1074
+                datas.put("hearYear", localDate.getYear());
1075
+                datas.put("hearMonths", localDate.getMonthValue());
1076
+                datas.put("hearDay", localDate.getDayOfMonth());
1077
+            } else {
1078
+                datas.put("hearYear", null);
1079
+                datas.put("hearMonths", null);
1080
+                datas.put("hearDay", null);
1081
+            }
1082
+            datas.put("appArbitrationClaims", caseApplication.getArbitratClaims());
1083
+            if (arbitrateRecord1 != null) {
1084
+                datas.put("evidenDetermi", arbitrateRecord1.getEvidenDetermi());
1085
+                datas.put("factDetermi", arbitrateRecord1.getFactDetermi());
1086
+                datas.put("caseSketch", arbitrateRecord1.getCaseSketch());
1087
+                datas.put("arbitrateThink", arbitrateRecord1.getArbitrateThink());
1088
+                datas.put("rulingFollows", arbitrateRecord1.getRulingFollows());
1089
+            }
1090
+            datas.put("legalProvisions", "仲裁法");
1091
+            LocalDate now = LocalDate.now();
1092
+            String year = Integer.toString(now.getYear());
1093
+            String month = String.format("%02d", now.getMonthValue());
1094
+            String day = String.format("%02d", now.getDayOfMonth());
1095
+            datas.put("year", year);
1096
+            datas.put("months", month);
1097
+            datas.put("day", day);
1098
+            String modalFilePath = "/data/arbitrate-document/template/仲裁裁决书模板.docx";
1099
+//            String modalFilePath = "D:/develop/仲裁裁决书模板 (2).docx";
1100
+            String saveFolderPath = "/home/ruoyi/uploadPath/upload/" + year + "/" + month + "/" + day;
1101
+//            String saveFolderPath = "D:/data/" + now.getYear() + "/" + now.getMonthValue() + "/" + now.getDayOfMonth();
1102
+            String fileName = UUID.randomUUID().toString().replace("-", "") + ".docx";
1103
+            String saveName = "/profile/upload/" + year + "/" + month + "/" + day + "/" + fileName;
1104
+            String resultFilePath = saveFolderPath + "/" + fileName;
1105
+            // 创建日期目录
1106
+            File saveFolder = new File(saveFolderPath);
1107
+            if (!saveFolder.exists()) {
1108
+                saveFolder.mkdirs();
1109
+            }
1110
+            Path sourcePath = new File(modalFilePath).toPath();
1111
+            Path destinationPath = new File(resultFilePath).toPath();
1112
+            Files.copy(sourcePath, destinationPath, StandardCopyOption.REPLACE_EXISTING);
1113
+            String docFilePath = WordUtil.getDocFilePath(datas, modalFilePath, resultFilePath);
1114
+            String savePath = docFilePath.substring(0, docFilePath.indexOf("/upload/") + 8);
1115
+
1116
+//            String savePath = saveFolderPath;
1117
+//            saveName = fileName;
1118
+
1119
+            //将庭审笔录保存到附件表里
1120
+            CaseAttach caseAttach = CaseAttach.builder()
1121
+                    .caseAppliId(id)
1122
+                    .annexName(saveName)
1123
+                    .annexPath(savePath) 
1124
+                    .annexType(7)
1125
+                    .build();
1126
+            int i = caseAttachMapper.save(caseAttach);
1127
+            if (i > 0) {
1128
+                if (arbitrateRecord1 != null) {
1129
+                    Integer annexId = caseAttach.getAnnexId();
1130
+                    //将附件id保存到仲裁记录表里面
1131
+                    arbitrateRecord1.setAnnexId(annexId);
1132
+                    arbitrateRecordMapper.updataArbitrateRecord(arbitrateRecord1);
1133
+                }
1134
+            }
1135
+            //获取案件详细信息
1136
+            CaseApplication caseApplicationSelct = caseApplicationMapper.selectCaseApplication(caseApplication);
1137
+            return AjaxResult.success(caseApplicationSelct);
1138
+        } catch (IOException e) {
1139
+            e.printStackTrace();
1140
+            return AjaxResult.error("生成庭审笔录异常");
1141
+        }
1142
+
1143
+    }
1144
+
971 1145
     @Override
972 1146
     @Transactional
973 1147
     public int pendTralSure(CaseApplication caseApplication) {

+ 12
- 4
ruoyi-system/src/main/java/com/ruoyi/wisdomarbitrate/utils/FixSelectFlowDetailUtils.java Dosyayı Görüntüle

@@ -4,18 +4,23 @@ import com.google.gson.Gson;
4 4
 import com.google.gson.JsonArray;
5 5
 import com.google.gson.JsonObject;
6 6
 import com.ruoyi.common.constant.CaseApplicationConstants;
7
+import com.ruoyi.common.constant.FileTransformation;
7 8
 import com.ruoyi.common.core.domain.entity.EsignHttpResponse;
8 9
 import com.ruoyi.common.exception.EsignDemoException;
9 10
 import com.ruoyi.common.utils.file.SaaSAPIFileUtils;
10 11
 import com.ruoyi.wisdomarbitrate.domain.CaseApplication;
12
+import com.ruoyi.wisdomarbitrate.domain.CaseAttach;
11 13
 import com.ruoyi.wisdomarbitrate.domain.SealSignRecord;
12 14
 import com.ruoyi.wisdomarbitrate.mapper.CaseApplicationMapper;
15
+import com.ruoyi.wisdomarbitrate.mapper.CaseAttachMapper;
13 16
 import com.ruoyi.wisdomarbitrate.mapper.SealSignRecordMapper;
14 17
 import org.springframework.beans.factory.annotation.Autowired;
15 18
 import org.springframework.scheduling.annotation.Scheduled;
16 19
 import org.springframework.stereotype.Component;
17 20
 
21
+import java.time.LocalDate;
18 22
 import java.util.List;
23
+import java.util.UUID;
19 24
 
20 25
 @Component
21 26
 public class FixSelectFlowDetailUtils {
@@ -24,8 +29,10 @@ public class FixSelectFlowDetailUtils {
24 29
     private CaseApplicationMapper caseApplicationMapper;
25 30
     @Autowired
26 31
     private SealSignRecordMapper sealSignRecordMapper;
32
+    @Autowired
33
+    private CaseAttachMapper caseAttachMapper;
27 34
 
28
-    @Scheduled(cron = "0/3 * * * * ?")
35
+//    @Scheduled(cron = "0/3 * * * * ?")
29 36
     public void fixExecuteSelectFlowDetailUtils() throws EsignDemoException {
30 37
         Gson gson = new Gson();
31 38
 
@@ -83,8 +90,6 @@ public class FixSelectFlowDetailUtils {
83 90
                     CaseApplication caseApplicationselect = caseApplicationMapper.selectCaseApplication(caseApplication);
84 91
                     if(caseApplicationselect.getCaseStatus().intValue()==CaseApplicationConstants.ARBITRATED_SEAL){
85 92
                         caseApplication.setCaseStatus(CaseApplicationConstants.ARBITRATION_DELIVERY);
86
-                        caseApplicationMapper.submitCaseApplication(caseApplication);
87
-
88 93
                         //下载审核完成的裁决书,
89 94
                         String signFlowId = sealSignRecord.getSignFlowid();
90 95
                         EsignHttpResponse fileDownload = SaaSAPIFileUtils.fileDownloadUrl(signFlowId);
@@ -96,8 +101,11 @@ public class FixSelectFlowDetailUtils {
96 101
                             String fileDownloadUrl = fileObject.get("downloadUrl").toString();
97 102
                             //修改"签署用印记录表"的状态为签署完成
98 103
                             sealSignRecord.setSignFlowStatus(3);
99
-                            sealSignRecord.setFileDownloadUrl(fileDownloadUrl);
104
+                            sealSignRecord.setFileDownloadUrl(fileDownloadUrl.substring(1,fileDownloadUrl.length()-1));
100 105
                             sealSignRecordMapper.updataSealSignRecord(sealSignRecord);
106
+                            String filearbitraUrl  = fileDownloadUrl.substring(1,fileDownloadUrl.length()-1);
107
+                            caseApplication.setFilearbitraUrl(filearbitraUrl);
108
+                            caseApplicationMapper.submitCaseApplication(caseApplication);
101 109
 
102 110
                         }
103 111
                     }

+ 3
- 1
ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseApplicationMapper.xml Dosyayı Görüntüle

@@ -34,6 +34,7 @@
34 34
         <result property="arbitratorName"   column="arbitrator_name"  />
35 35
         <result property="paymentStatus"   column="payment_status"  />
36 36
         <result property="paymentStatusName"   column="paymentStatusName"  />
37
+        <result property="filearbitraUrl"   column="filearbitra_url"  />
37 38
     </resultMap>
38 39
 
39 40
 
@@ -55,7 +56,7 @@
55 56
         c.hear_date ,c.arbitrat_claims ,
56 57
         c.loan_start_date ,c.loan_end_date ,c.claim_princi_owed ,c.claim_interest_owed ,c.claim_liquid_damag ,c.fee_payable ,
57 58
         c.begin_video_date ,c.online_video_person ,c.contract_number ,c.create_by ,c.create_time ,
58
-        c.update_by ,c.update_time , c.arbitrator_name,d.dept_name as applicantName,c.register_date
59
+        c.update_by ,c.update_time , c.arbitrator_name,d.dept_name as applicantName,c.register_date,c.filearbitra_url
59 60
         from case_application c
60 61
         LEFT JOIN case_affiliate ca ON ca.case_appli_id = c.id and ca.identity_type=1
61 62
         LEFT JOIN sys_dept d ON ca.NAME = d.dept_id and ca.name=d.dept_id
@@ -181,6 +182,7 @@
181 182
             <if test="objectionAddEviden != null">objection_add_eviden = #{objectionAddEviden},</if>
182 183
             <if test="openCourtHear != null">open_court_hear = #{openCourtHear},</if>
183 184
             <if test="hearDate != null">hear_date = #{hearDate},</if>
185
+            <if test="filearbitraUrl != null  and filearbitraUrl != ''">filearbitra_url = #{filearbitraUrl},</if>
184 186
         </set>
185 187
         where id = #{id}
186 188
     </update>

+ 16
- 0
ruoyi-system/src/main/resources/mapper/wisdomarbitrate/CaseAttachMapper.xml Dosyayı Görüntüle

@@ -49,6 +49,22 @@
49 49
         where annex_id = #{annexId}
50 50
     </update>
51 51
 
52
+    <update id="updateCaseAttachBycaseid" parameterType="CaseAttach">
53
+        update case_attach
54
+        <set>
55
+            <if test="annexName != null and annexName != ''">annex_name = #{annexName},</if>
56
+            <if test="annexPath != null and annexPath != ''">annex_path = #{annexPath}</if>
57
+        </set>
58
+        <where>
59
+            <if test="caseAppliId != null ">
60
+                AND case_appli_id  = #{caseAppliId}
61
+            </if>
62
+            <if test="annexType != null ">
63
+                AND annex_type  = #{annexType}
64
+            </if>
65
+        </where>
66
+    </update>
67
+
52 68
 
53 69
 
54 70
 </mapper>