From 1a38082352708692a339a8b43db79bc349be07f1 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期四, 10 九月 2026 17:04:33 +0800
Subject: [PATCH] 【景宁】批量新增患者满意度调整

---
 smartor/src/main/java/com/smartor/service/impl/PatSatisfactionServiceImpl.java |   50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 50 insertions(+), 0 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/service/impl/PatSatisfactionServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/PatSatisfactionServiceImpl.java
index 8fd54d1..fd6b774 100644
--- a/smartor/src/main/java/com/smartor/service/impl/PatSatisfactionServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/PatSatisfactionServiceImpl.java
@@ -5,7 +5,11 @@
 import java.util.*;
 import java.util.stream.Collectors;
 
+import com.ruoyi.common.core.domain.entity.SysUser;
+import com.ruoyi.common.core.domain.entity.SysUserDept;
+import com.ruoyi.common.core.domain.model.LoginUser;
 import com.ruoyi.common.utils.Arith;
+import com.ruoyi.common.utils.ArrayListUtils;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.DtoConversionUtils;
 import com.smartor.domain.*;
@@ -19,6 +23,8 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.smartor.service.IPatSatisfactionService;
+
+import static com.ruoyi.common.utils.SecurityUtils.getLoginUser;
 
 /**
  * 鎮h�呮弧鎰忓害Service涓氬姟灞傚鐞�
@@ -101,6 +107,50 @@
     }
 
     /**
+     * 鏂板鎮h�呮弧鎰忓害
+     *
+     * @param patSatisfactions 鎮h�呮弧鎰忓害
+     * @return 缁撴灉
+     */
+    @Override
+    public int batchInsert(List<PatSatisfaction> patSatisfactions) {
+        if(CollectionUtils.isEmpty(patSatisfactions)){
+            return 0;
+        }
+        List<Long> ids = patSatisfactions.stream().map(PatSatisfaction::getId).
+                distinct().collect(Collectors.toList());
+        List<PatSatisfaction> patSatisfactionsOld = new ArrayList<>();
+        PatSatisfaction patSatisfactionVo = new PatSatisfaction();
+        patSatisfactionVo.setIds(ids);
+        patSatisfactionsOld = patSatisfactionMapper.selectPatSatisfactionList(patSatisfactionVo);
+        Map<String, List<PatSatisfaction>> maps = ArrayListUtils.splitListsById(patSatisfactions,
+                patSatisfactionsOld, PatSatisfaction::getId);
+        //鍙湪patSatisfactions鐨勬暟鎹紝鎵ц鏂板鎿嶄綔
+        List<PatSatisfaction> addItems = maps.get("onlyIn1");
+        //鍙湪patSatisfactionsOld鐨勬暟鎹紝鎵ц鍒犻櫎鎿嶄綔
+//        List<PatSatisfaction> delItems = maps.get("onlyIn2");
+        //閲嶅彔鐨勬暟鎹紝鎵ц鏇存柊鎿嶄綔
+        List<PatSatisfaction> editItems = maps.get("common");
+        Integer count = 0;
+        LoginUser loginUser = getLoginUser();
+        SysUser user = loginUser.getUser();
+        for (PatSatisfaction patSatisfaction0 : editItems) {
+            patSatisfaction0.setUpdateBy(user.getNickName());
+            patSatisfaction0.setUpdateTime(DateUtils.getNowDate());
+            count = count + patSatisfactionMapper.updatePatSatisfaction(patSatisfaction0);
+        }
+
+        for (PatSatisfaction patSatisfaction1 : addItems) {
+            patSatisfaction1.setCreateBy(user.getNickName());
+            patSatisfaction1.setOrgid(user.getOrgid());
+            patSatisfaction1.setCreateTime(DateUtils.getNowDate());
+            patSatisfaction1.setUpdateTime(DateUtils.getNowDate());
+            count = count + patSatisfactionMapper.insertPatSatisfaction(patSatisfaction1);
+        }
+        return count;
+    }
+
+    /**
      * 淇敼鎮h�呮弧鎰忓害
      *
      * @param patSatisfaction 鎮h�呮弧鎰忓害

--
Gitblit v1.9.3