From 21ce122193e2fb57d206dbfca59e8d2ab2114fd0 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期一, 23 三月 2026 17:12:56 +0800
Subject: [PATCH] 新增病区与科室组合

---
 smartor/src/main/java/com/smartor/domain/entity/ServiceSubtaskEntity.java |    4 ++--
 smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml        |   39 +++++++++++++++++++++++++++++++++++++--
 2 files changed, 39 insertions(+), 4 deletions(-)

diff --git a/smartor/src/main/java/com/smartor/domain/entity/ServiceSubtaskEntity.java b/smartor/src/main/java/com/smartor/domain/entity/ServiceSubtaskEntity.java
index b357612..e52a46b 100644
--- a/smartor/src/main/java/com/smartor/domain/entity/ServiceSubtaskEntity.java
+++ b/smartor/src/main/java/com/smartor/domain/entity/ServiceSubtaskEntity.java
@@ -689,9 +689,9 @@
     private Date endOutHospTime;
 
     /**
-     * 绉戝涓庣梾鍖虹殑鏌ヨ鏄痮r杩樻槸and:   1:and(榛樿)     2:or
+     * 绉戝涓庣梾鍖虹殑鏌ヨ鏄痮r杩樻槸and:   1:and(榛樿)(绂婚櫌鐥呭尯涓庣闄㈢瀹ょ粍鍚�)     2:or(绂婚櫌鐥呭尯涓庣闄㈢瀹ょ粍鍚�)    3:and(绂婚櫌鐥呭尯涓庨殢璁跨瀹ょ粍鍚�)   4:or(绂婚櫌鐥呭尯涓庨殢璁跨瀹ょ粍鍚�)
      */
-    @ApiModelProperty(value = "绉戝涓庣梾鍖虹殑鏌ヨ鏄痮r杩樻槸and:   1:and(榛樿)     2:or  ")
+    @ApiModelProperty(value = "绉戝涓庣梾鍖虹殑鏌ヨ鏄痮r杩樻槸and:   1:and(榛樿)(绂婚櫌鐥呭尯涓庣闄㈢瀹ょ粍鍚�)     2:or(绂婚櫌鐥呭尯涓庣闄㈢瀹ょ粍鍚�)    3:and(绂婚櫌鐥呭尯涓庨殢璁跨瀹ょ粍鍚�)   4:or(绂婚櫌鐥呭尯涓庨殢璁跨瀹ょ粍鍚�)")
     private String deptOrDistrict = "1";
 
     /**
diff --git a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
index c28555d..1877ccc 100644
--- a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
@@ -361,6 +361,41 @@
                 </foreach>
             </if>
         </if>
+        <if test="deptOrDistrict==3">
+            <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
+                AND (leavehospitaldistrictcode IN
+                <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="("
+                         separator=","
+                         close=")">
+                    #{leavehospitaldistrictcode}
+                </foreach>
+            </if>
+            <if test=" visitDeptCodes != null and visitDeptCodes.size()>0">
+                and visit_dept_name IN
+                <foreach collection="visitDeptCodes" item="visitDeptCode" open="(" separator=","
+                         close="))">
+                    #{visitDeptCode}
+                </foreach>
+            </if>
+        </if>
+
+        <if test="deptOrDistrict==4">
+            <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
+                AND (leavehospitaldistrictcode IN
+                <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="("
+                         separator=","
+                         close=")">
+                    #{leavehospitaldistrictcode}
+                </foreach>
+            </if>
+            <if test=" visitDeptCodes != null and visitDeptCodes.size()>0">
+                OR visit_dept_name IN
+                <foreach collection="visitDeptCodes" item="visitDeptCode" open="(" separator=","
+                         close="))">
+                    #{visitDeptCode}
+                </foreach>
+            </if>
+        </if>
 
         <if test="visitTime != null">
             AND date_format(visit_time,'%y%m%d') = date_format(#{visitTime},'%y%m%d')
@@ -425,8 +460,8 @@
         </if>
         <if test="sort != null  and sort==0">order by endtime asc</if>
         <if test="sort != null  and sort==1">order by endtime desc</if>
-        <if test="sort != null  and sort==2">order by long_send_time asc</if>
-        <if test="sort != null  and sort==3">order by long_send_time desc</if>
+        <if test="sort != null  and sort==2">order by visit_time asc</if>
+        <if test="sort != null  and sort==3">order by visit_time desc</if>
         <if test="sort != null  and sort==5">order by admindate asc</if>
         <if test="sort != null  and sort==6">order by admindate desc</if>
         <if test="sort != null  and sort==7">order by visit_time asc</if>

--
Gitblit v1.9.3