From b32bdc72579acf423f0f607a2330690933c7b3ab Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期三, 10 五月 2023 11:29:41 +0800
Subject: [PATCH] 分享表数据代码修改

---
 ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementdetailShared.java      |    5 +++++
 ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java |   19 +++++++++++++++++++
 2 files changed, 24 insertions(+), 0 deletions(-)

diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementdetailShared.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementdetailShared.java
index 5317094..8b62de4 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementdetailShared.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursementdetailShared.java
@@ -34,6 +34,11 @@
     @Excel(name = "璧勯噾鐢宠涓昏〃ID")
     private Long rbid;
 
+    /** 宸梾鎶ラ攢鍗曟槑缁咺D */
+    @ApiModelProperty("宸梾鎶ラ攢鍗曟槑缁咺D")
+    @Excel(name = "宸梾鎶ラ攢鍗曟槑缁咺D")
+    private Long rdid;
+
     /** 浜哄憳绫诲埆 */
     @ApiModelProperty("浜哄憳绫诲埆")
     @Excel(name = "浜哄憳绫诲埆")
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java
index 0bff6a2..d0e029a 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java
@@ -20,9 +20,11 @@
 
 import java.util.ArrayList;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.project.service.IServiceReimbursementService;
+import org.springframework.transaction.annotation.Transactional;
 
 /**
  * 鎶ラ攢鐢宠Service涓氬姟灞傚鐞�
@@ -112,6 +114,7 @@
     }
 
     @Override
+    @Transactional
     public Boolean addSharedData(Long id) {
         ServiceReimbursement serviceReimbursement = serviceReimbursementMapper.selectById(id);
         Map<String, Object> columnMap = new HashMap<>();
@@ -122,11 +125,27 @@
         List<ServiceReimbursementpayee> serviceReimbursementpayees = reimbursementpayeeMapper.selectByMap(columnMap);
         //鏁版嵁缁勮
         ServiceReimbursementShared serviceReimbursementShared = DtoConversionUtils.sourceToTarget(serviceReimbursement, ServiceReimbursementShared.class);
+        serviceReimbursementShared.setReimid(id);
+        serviceReimbursementShared.setId(null);
         List<ServiceReimbursementdetailShared> serviceReimbursementdetailShareds = DtoConversionUtils.sourceToTarget(details, ServiceReimbursementdetailShared.class);
         List<ServiceReimbursementpayeeShared> serviceReimbursementpayeeShareds = DtoConversionUtils.sourceToTarget(serviceReimbursementpayees, ServiceReimbursementpayeeShared.class);
         //灏嗙粍瑁呭ソ鐨勬暟鎹彃鍏ュ埌鍒嗕韩琛ㄤ腑
         sharedService.save(serviceReimbursementShared);
+
+        //灏唖erviceReimbursementdetail琛ㄩ噷鐨刬d璧嬪�肩粰Rdid; 灏唖erviceReimbursementShared閲岀殑ID璧嬪�肩粰RBID,骞跺皢serviceReimbursementdetailShared琛ㄩ噷鐨刬d缃┖锛岀敱鏁版嵁搴撻噸鏂扮敓鎴�
+        for (int i = 0; i < details.size(); i++) {
+            serviceReimbursementdetailShareds.get(i).setRdid(serviceReimbursementdetailShareds.get(i).getId());
+            serviceReimbursementdetailShareds.get(i).setRbid(serviceReimbursementShared.getId());
+            serviceReimbursementdetailShareds.get(i).setId(null);
+        }
         detailSharedService.saveBatch(serviceReimbursementdetailShareds);
+
+        //灏唖erviceReimbursementdetail琛ㄩ噷鐨刬d璧嬪�肩粰Rpid; 灏唖erviceReimbursementShared閲岀殑ID璧嬪�肩粰RBID,骞跺皢serviceReimbursementpayeeShared琛ㄩ噷鐨刬d缃┖锛岀敱鏁版嵁搴撻噸鏂扮敓鎴�
+        for (int i = 0; i < serviceReimbursementpayees.size(); i++) {
+            serviceReimbursementpayeeShareds.get(i).setRpid(serviceReimbursementpayeeShareds.get(i).getId());
+            serviceReimbursementpayeeShareds.get(i).setRbid(serviceReimbursementShared.getId());
+            serviceReimbursementpayeeShareds.get(i).setId(null);
+        }
         payeeSharedService.saveBatch(serviceReimbursementpayeeShareds);
 
         return true;

--
Gitblit v1.9.3