From 8c13eebe691e5f25aa10fd6df6789f2e856a23da Mon Sep 17 00:00:00 2001
From: xusd <330628789@qq.com>
Date: Fri, 04 Jul 2025 18:18:00 +0800
Subject: [PATCH] Merge branch 'feature/login_test-wjz' into feature/login_test

---
 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseFeedbackService.java |   30 +++++++++++++++++++++++-------
 1 files changed, 23 insertions(+), 7 deletions(-)

diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseFeedbackService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseFeedbackService.java
index e54301e..9388a67 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseFeedbackService.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseFeedbackService.java
@@ -7,6 +7,7 @@
 import cn.huge.base.common.utils.ObjectUtils;
 import cn.huge.base.common.utils.ThreadPoolUtils;
 import cn.huge.module.cases.consts.CaseTaskConsts;
+import cn.huge.module.cases.domain.dto.FileRelateDTO;
 import cn.huge.module.cases.domain.dto.MediatorDTO;
 import cn.huge.module.cases.domain.po.*;
 import cn.huge.module.cases.domain.vo.SaveEventFeedBackVo;
@@ -18,6 +19,7 @@
 import cn.huge.module.cust.dto.CtUserDTO;
 import cn.huge.module.mediate.constant.CaseBaseConsts;
 import cn.huge.module.mediate.constant.CaseBaseConstsEnum;
+import cn.huge.module.sys.constant.FileOwnerTypeBaseEnum;
 import cn.huge.module.sys.dto.FileIdInfoBaseDTO;
 import cn.huge.module.sys.dto.FileInfoBaseDTO;
 import cn.huge.module.sys.dto.FileTypeInfoBaseDTO;
@@ -38,6 +40,7 @@
 
 import javax.print.DocFlavor;
 import java.util.*;
+import java.util.concurrent.Callable;
 import java.util.concurrent.CompletableFuture;
 import java.util.stream.Collectors;
 
@@ -83,6 +86,7 @@
 
     @Autowired
     private CaseInfoService caseInfoService;
+
 
     /**
      * 更新对象
@@ -192,6 +196,7 @@
      * @param userId
      */
     private void asyncSaveEventFeedback(CaseFeedback caseFeedback, String userId) {
+        log.info("同步办理反馈信息开始!!");
         String caseId = caseFeedback.getCaseId();
         CaseInfo caseInfo = caseInfoService.getById(caseId);
         String canalSecond = caseInfo.getCanalSecond();
@@ -207,11 +212,11 @@
             return ;
         }
 
-        //  使用单例设计的线程池来异步同步
-        ThreadPoolUtils.submit(()->{
+        //  使用completableFuture进行异步处理,使用jdk8的forkjoinPool线程池
+        CompletableFuture<Object> future = CompletableFuture.supplyAsync(() -> {
             log.info("异步保存办理反馈信息开始");
             //  保存办理反馈信息后需要同步到大平台中
-            String evtId = caseInfo.getCaseRef();
+            String code = caseInfo.getCaseRef();
 
             //  反馈用户信息
             CtUserDTO ctUserDTO = custClient.clientGetUser(userId);
@@ -227,8 +232,8 @@
 
             //  构建参数
             SaveEventFeedBackVo saveEventFeedBackVo = new SaveEventFeedBackVo();
-            saveEventFeedBackVo.setId(caseId);
-            saveEventFeedBackVo.setEvtId(evtId);
+            saveEventFeedBackVo.setId(caseFeedback.getId());
+            saveEventFeedBackVo.setCode(code);
 
             //  先传递当前子系统的用户id
             saveEventFeedBackVo.setAppUserId(userId);
@@ -242,8 +247,19 @@
             saveEventFeedBackVo.setHandleType("");
 
             //  附件信息
-            List<FileInfoBaseDTO> fileInfoList = caseFeedback.getFileInfoList();
-            saveEventFeedBackVo.setFileInfoList(fileInfoList);
+            //  先获取文件关联表信息
+            List<FileRelateDTO> fileRelateDTOS = sysClient.listFileRelateByOwnerId(caseFeedback.getId());
+            List<FileInfoBaseDTO> fileInfoBaseDTOS = new ArrayList<>();
+            if (CollectionUtils.isNotEmpty(fileRelateDTOS)){
+                fileInfoBaseDTOS = fileRelateDTOS.stream()
+                        .map(o->{
+                            FileInfoBaseDTO fileInfoBaseDTO = new FileInfoBaseDTO();
+                            fileInfoBaseDTO.setId(o.getFileId());
+                            return fileInfoBaseDTO;
+                        }).collect(Collectors.toList());
+            }
+
+            saveEventFeedBackVo.setFileInfoList(fileInfoBaseDTOS);
 
             //  发起同步
             sysClient.saveEventFeedback(saveEventFeedBackVo);

--
Gitblit v1.8.0