From 9526971c403417c1c007804f24884c443b9e6cd7 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期三, 04 九月 2024 00:34:40 +0800
Subject: [PATCH] 代码提交

---
 smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java |   65 +++++++++++++++++++++++++++++++-
 1 files changed, 62 insertions(+), 3 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java
index 27a3555..f3aa58c 100644
--- a/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java
@@ -2,12 +2,12 @@
 
 import java.time.LocalDate;
 import java.time.ZoneOffset;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
+import java.util.*;
 
+import com.ruoyi.common.core.domain.entity.SysDept;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.DtoConversionUtils;
+import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
 import com.smartor.domain.*;
 import com.smartor.mapper.*;
@@ -45,6 +45,8 @@
 
     @Autowired
     private ServiceSubtaskMapper serviceSubtaskMapper;
+    @Autowired
+    private SysUserDeptMapper sysUserDeptMapper;
 
     //璁板綍闀挎湡浠诲姟鍩虹淇℃伅
     List<IvrLibaTemplate> libaTemplates = new ArrayList<>();
@@ -71,6 +73,49 @@
     @Override
     public List<PatMedInhosp> selectPatMedInhospList(PatMedInhosp patMedInhosp) {
         return patMedInhospMapper.selectPatMedInhospList(patMedInhosp);
+    }
+
+
+    @Override
+    public PatMedInhosp getDeptCodeByPatId(PatMedInhosp patMedInhosp) {
+        List<PatMedInhosp> patMedInhosps = selectPatMedInhospList(patMedInhosp);
+        if (!org.springframework.util.CollectionUtils.isEmpty(patMedInhosps)) {
+
+            if (patMedInhosp.getInhospstate().equals("0")) {
+                //鍏堝幓鎺夋椂闂翠负绌虹殑
+                patMedInhosps.removeIf(PatMedInhosp -> PatMedInhosp.getStarttime() == null);
+                Collections.sort(patMedInhosps, Comparator.comparing(PatMedInhosp::getStarttime).reversed());
+            } else if (patMedInhosp.getInhospstate().equals("1")) {
+                //鍏堝幓鎺夋椂闂翠负绌虹殑
+                patMedInhosps.removeIf(PatMedInhosp -> PatMedInhosp.getEndtime() == null);
+                Collections.sort(patMedInhosps, Comparator.comparing(PatMedInhosp::getEndtime).reversed());
+            }
+        }
+        if (patMedInhosps != null && patMedInhosps.size() > 0) return patMedInhosps.get(0);
+        else return null;
+    }
+
+    /**
+     * 鏌ヨ鍑哄叆闄汉娆�
+     *
+     * @param patMedReq
+     * @return
+     */
+    @Override
+    public PatMedRes selectPatMedInhospListCount(PatMedReq patMedReq) {
+        PatMedRes patMedRes = null;
+        // 鑾峰彇褰撳墠鐧婚檰浜虹殑閮ㄩ棬鏉冮檺
+        if (org.springframework.util.CollectionUtils.isEmpty(patMedReq.getDeptcodeList())) {
+            Long userId = SecurityUtils.getUserId();
+            List<SysDept> sysDepts = sysUserDeptMapper.selectDeptListByUserId(userId);
+            List<String> deptCode = new ArrayList<>();
+            for (SysDept sysDept : sysDepts) {
+                deptCode.add(sysDept.getDeptId().toString());
+            }
+            patMedReq.setDeptcodeList(deptCode);
+            patMedRes = patMedInhospMapper.selectPatMedInhospCount(patMedReq);
+        }
+        return patMedRes;
     }
 
     /**
@@ -202,4 +247,18 @@
         }
         return 1;
     }
+
+    /**
+     * 鑾峰彇鍑洪櫌锛屼綇闄紝闂ㄨ瘖鏈嶅姟浜烘
+     *
+     * @param patMedReq
+     * @return
+     */
+    @Override
+    public List<PatMedRes> getDeptRanking(PatMedReq patMedReq) {
+
+        return patMedInhospMapper.getDeptRanking(patMedReq);
+    }
+
+
 }

--
Gitblit v1.9.3