czh 2 лет назад
Родитель
Сommit
817386c703

+ 5 - 11
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/CommonBusinessService.java

@@ -17,12 +17,9 @@ import com.sckw.core.exception.SystemException;
 import com.sckw.core.model.constant.Global;
 import com.sckw.core.model.enums.ClientTypeEnum;
 import com.sckw.core.model.enums.CooperateTypeEnum;
-import com.sckw.core.utils.AsyncThreadUtils;
-import com.sckw.core.utils.BeanUtils;
+import com.sckw.core.utils.*;
 import lombok.RequiredArgsConstructor;
 import org.springframework.cloud.stream.function.StreamBridge;
-import com.sckw.core.utils.OkHttpUtils;
-import com.sckw.core.utils.UUIDUtils;
 import com.sckw.core.web.constant.HttpStatus;
 import com.sckw.core.web.context.LoginUserHolder;
 import com.sckw.order.api.dubbo.TradeOrderInfoService;
@@ -265,8 +262,8 @@ public class CommonBusinessService {
      * @author: czh
      * @date: 2023/8/14
      */
-    public void postToEsign(String firstAccount, String secondAccount, Long orgFirst, Long orgSeconId, String contractFile, Long id, String contractName, String filePathPrefix) {
-        AsyncFactory.execute(new AsyncProcess(firstAccount, secondAccount, orgFirst, orgSeconId, contractFile, id, contractName, remoteSystemService, eSignUrl, kwcContractLogisticsMapper, kwcContractTradeMapper, filePathPrefix));
+    public void postToEsign(String firstAccount, String secondAccount, Long orgFirst, Long orgSeconId, String contractFile, Long id, String contractName) {
+        AsyncFactory.execute(new AsyncProcess(firstAccount, secondAccount, orgFirst, orgSeconId, contractFile, id, contractName, remoteSystemService, eSignUrl, kwcContractLogisticsMapper, kwcContractTradeMapper));
     }
 
 
@@ -312,7 +309,6 @@ public class CommonBusinessService {
         private final String contractFile;
         private final Long id;
         private final String contractName;
-        private final String filePathPrefix;
 
         private RemoteSystemService remoteSystemService;
         private String eSignUrl;
@@ -329,8 +325,7 @@ public class CommonBusinessService {
                             RemoteSystemService remoteSystemService,
                             String eSignUrl,
                             KwcContractLogisticsMapper kwcContractLogisticsMapper,
-                            KwcContractTradeMapper kwcContractTradeMapper,
-                            String filePathPrefix) {
+                            KwcContractTradeMapper kwcContractTradeMapper) {
             this.firstAccount = firstAccount;
             this.secondAccount = secondAccount;
             this.orgFirst = orgFirst;
@@ -342,7 +337,6 @@ public class CommonBusinessService {
             this.eSignUrl = eSignUrl;
             this.kwcContractLogisticsMapper = kwcContractLogisticsMapper;
             this.kwcContractTradeMapper = kwcContractTradeMapper;
-            this.filePathPrefix = filePathPrefix;
         }
 
         @Override
@@ -351,7 +345,7 @@ public class CommonBusinessService {
             JSONArray jsonArray = JSONArray.parseArray(contractFile);
             JSONObject jsonObject = jsonArray.getJSONObject(0);
             String fileName = jsonObject.getString("name");
-            String url = filePathPrefix + jsonObject.getString("url");
+            String url = FileUtils.splice(jsonObject.getString("url"));
             File file = getFileByHttpURL(url, fileName);
             List<Long> entIds = new ArrayList<>(2);
             entIds.add(orgFirst);

+ 37 - 5
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/KwcContractLogisticsService.java

@@ -1,8 +1,12 @@
 package com.sckw.contract.service;
 
+import java.io.File;
 import java.util.Date;
 
 import cn.hutool.core.date.DateUtil;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
@@ -143,7 +147,17 @@ public class KwcContractLogisticsService {
         long contactId = new IdWorker(1L).nextId();
         kwcContractLogistics.setId(contactId);
         kwcContractLogistics.setStatus(ContractStatusEnum.SAVE.getCode());
-        kwcContractLogistics.setSigningUrl(reqVo.getContractFile());
+        String contractFile = reqVo.getContractFile();
+        if (StringUtils.isNotBlank(contractFile)) {
+            JSONArray jsonArray = JSONArray.parseArray(contractFile);
+            for (int n = 0; n < jsonArray.size(); n++) {
+                JSONObject jsonObject = jsonArray.getJSONObject(n);
+                String url = jsonObject.getString("url");
+                jsonObject.put("url", FileUtils.replaceAll(url));
+            }
+            kwcContractLogistics.setSigningUrl(JSON.toJSONString(jsonArray));
+        }
+
         if (kwcContractLogisticsMapper.insert(kwcContractLogistics) <= 0) {
             throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.INSERT_FAIL);
         }
@@ -347,8 +361,27 @@ public class KwcContractLogisticsService {
 
         //合同文件
         List<String> fileList = new ArrayList<>();
-        fileList.add(kwcContractLogistics.getSignedUrl());
-        fileList.add(kwcContractLogistics.getSigningUrl());
+        String signedUrl = kwcContractLogistics.getSignedUrl();
+        if (StringUtils.isNotBlank(signedUrl)) {
+            JSONArray jsonArray = JSONArray.parseArray(signedUrl);
+            for (int n = 0; n < jsonArray.size(); n++) {
+                JSONObject jsonObject = jsonArray.getJSONObject(n);
+                String url = jsonObject.getString("url");
+                jsonObject.put("url", FileUtils.splice(url));
+            }
+            fileList.add(JSON.toJSONString(jsonArray));
+        }
+
+        String signingUrl = kwcContractLogistics.getSigningUrl();
+        if (StringUtils.isNotBlank(signingUrl)) {
+            JSONArray jsonArray = JSONArray.parseArray(signingUrl);
+            for (int n = 0; n < jsonArray.size(); n++) {
+                JSONObject jsonObject = jsonArray.getJSONObject(n);
+                String url = jsonObject.getString("url");
+                jsonObject.put("url", FileUtils.splice(url));
+            }
+            fileList.add(JSON.toJSONString(jsonArray));
+        }
         contractLogisticsDetailResVo.setContractFile(fileList.stream().filter(StringUtils::isNotBlank).toList());
 
         //审批流程信息
@@ -413,8 +446,7 @@ public class KwcContractLogisticsService {
                     reqVo.getBaseInfo().getCarrierEntId(),
                     reqVo.getContractFile(),
                     id,
-                    reqVo.getBaseInfo().getContractName(),
-                    filePathPrefix);
+                    reqVo.getBaseInfo().getContractName());
             //发送消息
             sendLogisticsMessage(kwcContractLogistics);
         }

+ 36 - 5
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/service/KwcContractTradeService.java

@@ -7,6 +7,8 @@ import cn.hutool.core.date.DatePattern;
 import cn.hutool.core.date.DateTime;
 import cn.hutool.core.date.DateUtil;
 import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
@@ -228,7 +230,17 @@ public class KwcContractTradeService {
         long contactId = new IdWorker(1L).nextId();
         kwcContractTrade.setId(contactId);
         kwcContractTrade.setStatus(ContractStatusEnum.SAVE.getCode());
-        kwcContractTrade.setSigningUrl(reqVo.getContractFile());
+        String contractFile = reqVo.getContractFile();
+        if (StringUtils.isNotBlank(contractFile)) {
+            JSONArray jsonArray = JSONArray.parseArray(contractFile);
+            for (int n = 0; n < jsonArray.size(); n++) {
+                JSONObject jsonObject = jsonArray.getJSONObject(n);
+                String url = jsonObject.getString("url");
+                jsonObject.put("url", FileUtils.replaceAll(url));
+            }
+            kwcContractTrade.setSigningUrl(JSON.toJSONString(jsonArray));
+        }
+
         if (kwcContractTradeMapper.insert(kwcContractTrade) <= 0) {
             throw new SystemException(HttpStatus.CRUD_FAIL_CODE, HttpStatus.INSERT_FAIL);
         }
@@ -427,8 +439,28 @@ public class KwcContractTradeService {
 
         //合同文件
         List<String> fileList = new ArrayList<>();
-        fileList.add(kwcContractTrade.getSigningUrl());
-        fileList.add(kwcContractTrade.getSignedUrl());
+        String signedUrl = kwcContractTrade.getSignedUrl();
+        if (StringUtils.isNotBlank(signedUrl)) {
+            JSONArray jsonArray = JSONArray.parseArray(signedUrl);
+            for (int n = 0; n < jsonArray.size(); n++) {
+                JSONObject jsonObject = jsonArray.getJSONObject(n);
+                String url = jsonObject.getString("url");
+                jsonObject.put("url", FileUtils.splice(url));
+            }
+            fileList.add(JSON.toJSONString(jsonArray));
+        }
+
+        String signingUrl = kwcContractTrade.getSigningUrl();
+        if (StringUtils.isNotBlank(signingUrl)) {
+            JSONArray jsonArray = JSONArray.parseArray(signingUrl);
+            for (int n = 0; n < jsonArray.size(); n++) {
+                JSONObject jsonObject = jsonArray.getJSONObject(n);
+                String url = jsonObject.getString("url");
+                jsonObject.put("url", FileUtils.splice(url));
+            }
+            fileList.add(JSON.toJSONString(jsonArray));
+        }
+        
         contractTradeDetailResVo.setContractFile(fileList.stream().filter(StringUtils::isNotBlank).toList());
 
         //流程记录
@@ -492,8 +524,7 @@ public class KwcContractTradeService {
                     reqVo.getBaseInfo().getPurchaseEntId(),
                     reqVo.getContractFile(),
                     id,
-                    reqVo.getBaseInfo().getContractName(),
-                    filePathPrefix);
+                    reqVo.getBaseInfo().getContractName());
             sendTradeMessage(kwcContractTrade);
         }
 

+ 4 - 0
sckw-modules/sckw-system/src/main/java/com/sckw/system/service/KwsEnterpriseService.java

@@ -375,6 +375,8 @@ public class KwsEnterpriseService {
             kwsEntCertificate.setStatus(ApprovalEnum.PROCESS.getCode());
             BeanUtils.copyProperties(businessLicense, kwsEntCertificate);
             kwsEntCertificate.setId(new IdWorker(1).nextId());
+            kwsEntCertificate.setCertificateMain(FileUtils.replaceAll(businessLicense.getCertificateMain()));
+            kwsEntCertificate.setCertificateRevolt(FileUtils.replaceAll(businessLicense.getCertificateRevolt()));
             kwsEntCertificates.add(kwsEntCertificate);
         }
         if (kwsEntCertificateDao.saveBatch(kwsEntCertificates) != kwsEntCertificates.size()) {
@@ -620,6 +622,8 @@ public class KwsEnterpriseService {
             CertificateResVo certificateResVo = new CertificateResVo();
             certificateResVo.setTypeName(Objects.requireNonNull(CertificateTypeEnum.getName(item.getType())).getName());
             BeanUtils.copyProperties(item, certificateResVo);
+            certificateResVo.setCertificateMain(FileUtils.splice(certificateResVo.getCertificateMain()));
+            certificateResVo.setCertificateRevolt(FileUtils.splice(certificateResVo.getCertificateRevolt()));
             list.add(certificateResVo);
         });
         return list;