From 9b977a5dcaae63d5f4997592dae8df0ee0b6d85f Mon Sep 17 00:00:00 2001
From: sinake <sinake1@qq.com>
Date: 星期五, 10 七月 2026 15:57:16 +0800
Subject: [PATCH] 器官分配基础新增修改新增少主表ID

---
 ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonateorganBaseServiceImpl.java |   49 +++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 45 insertions(+), 4 deletions(-)

diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonateorganBaseServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonateorganBaseServiceImpl.java
index 4c43028..3917bb5 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonateorganBaseServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonateorganBaseServiceImpl.java
@@ -2,9 +2,12 @@
 
 import java.util.List;
 
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.common.utils.DateUtils;
+import com.ruoyi.common.utils.bean.DtoConversionUtils;
 import com.ruoyi.project.domain.ServiceDonateorgan;
+import com.ruoyi.project.domain.vo.ServiceDonateorganBaseVO;
 import com.ruoyi.project.domain.dto.DonateorganBaseInfoDTO;
 import com.ruoyi.project.domain.vo.DonateorganBaseInfoVO;
 import com.ruoyi.project.mapper.ServiceDonateorganMapper;
@@ -13,9 +16,6 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-
-import java.util.ArrayList;
-import java.util.Map;
 
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.project.mapper.ServiceDonateorganBaseMapper;
@@ -127,4 +127,45 @@
         return this.list(wrappers);
     }
 
+    @Override
+    public long add(ServiceDonateorganBaseVO serviceDonateorganBaseVO) {
+        ServiceDonateorganBase serviceDonateorganBase = DtoConversionUtils.sourceToTarget(serviceDonateorganBaseVO, ServiceDonateorganBase.class);
+        boolean save = false;
+        if (ObjectUtils.isNotEmpty(serviceDonateorganBase)) {
+            save = save(serviceDonateorganBase);
+            if (save == true && CollectionUtils.isNotEmpty(serviceDonateorganBaseVO.getServiceDonateorganList())) {
+                for (ServiceDonateorgan serviceDonateorgan : serviceDonateorganBaseVO.getServiceDonateorganList()) {
+                    serviceDonateorgan.setBaseId(serviceDonateorganBase.getId());
+                    serviceDonateorganMapper.insert(serviceDonateorgan);
+                }
+            }
+        }
+
+        return serviceDonateorganBase.getId();
+    }
+
+    @Override
+    public Boolean updateByParam(ServiceDonateorganBaseVO serviceDonateorganBaseVO) {
+        ServiceDonateorganBase serviceDonateorganBase = DtoConversionUtils.sourceToTarget(serviceDonateorganBaseVO, ServiceDonateorganBase.class);
+        boolean b = false;
+        if (ObjectUtils.isNotEmpty(serviceDonateorganBase)) {
+            b = updateById(serviceDonateorganBase);
+            if (b == true && CollectionUtils.isNotEmpty(serviceDonateorganBaseVO.getServiceDonateorganList())) {
+                for (ServiceDonateorgan serviceDonateorgan : serviceDonateorganBaseVO.getServiceDonateorganList()) {
+                    if(ObjectUtils.isNotEmpty(serviceDonateorgan.getId()) ) {
+                        if(ObjectUtils.isNotEmpty(serviceDonateorgan.getDelFlag())&&serviceDonateorgan.getDelFlag()==1 ) {
+                            serviceDonateorganMapper.deleteById(serviceDonateorgan.getId());
+                        }else {
+                            serviceDonateorganMapper.updateById(serviceDonateorgan);
+                        }
+                    }else {
+                        serviceDonateorgan.setBaseId(serviceDonateorganBase.getId());
+                        serviceDonateorganMapper.insert(serviceDonateorgan);
+                    }
+                }
+            }
+        }
+        return b;
+    }
+
 }

--
Gitblit v1.9.3