From db13d846510525ddd4d5c48ee0c549c62cf93efa Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期四, 20 三月 2025 19:01:42 +0800
Subject: [PATCH] 代码提交

---
 smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml |   92 +++++++++++++++++++++++++++++++++++++---------
 1 files changed, 74 insertions(+), 18 deletions(-)

diff --git a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
index 2f4a4c7..dc05e19 100644
--- a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
@@ -195,22 +195,49 @@
             <if test="endOutHospTime != null">
                 AND date_format(endtime,'%y%m%d') &lt;= date_format(#{endOutHospTime},'%y%m%d')
             </if>
+            <if test="startSendDateTime != null">
+                AND date_format(long_send_time,'%y%m%d') &gt;= date_format(#{startSendDateTime},'%y%m%d')
+            </if>
+            <if test="endSendDateTime != null">
+                AND date_format(long_send_time,'%y%m%d') &lt;= date_format(#{endSendDateTime},'%y%m%d')
+            </if>
+
             <if test="longSendTime != null">
                 AND date_format(long_send_time,'%y%m%d') &lt;= date_format(#{longSendTime},'%y%m%d')
             </if>
-            <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
-                AND leavehospitaldistrictcode IN
-                <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
-                         close=")">
-                    #{leavehospitaldistrictcode}
-                </foreach>
+            <if test="deptOrDistrict==1">
+                <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
+                    AND leavehospitaldistrictcode IN
+                    <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="("
+                             separator=","
+                             close=")">
+                        #{leavehospitaldistrictcode}
+                    </foreach>
+                </if>
+                <if test=" leaveldeptcodes != null and leaveldeptcodes.size()>0">
+                    AND deptcode IN
+                    <foreach collection="leaveldeptcodes" item="leaveldeptcode" open="(" separator=","
+                             close=")">
+                        #{leaveldeptcode}
+                    </foreach>
+                </if>
             </if>
-            <if test=" leaveldeptcodes != null and leaveldeptcodes.size()>0">
-                AND deptcode IN
-                <foreach collection="leaveldeptcodes" item="leaveldeptcode" open="(" separator=","
-                         close=")">
-                    #{leaveldeptcode}
-                </foreach>
+            <if test="deptOrDistrict==2">
+                <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
+                    AND (leavehospitaldistrictcode IN
+                    <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="("
+                             separator=","
+                             close=")">
+                        #{leavehospitaldistrictcode}
+                    </foreach>
+                </if>
+                <if test=" leaveldeptcodes != null and leaveldeptcodes.size()>0">
+                    OR deptcode IN
+                    <foreach collection="leaveldeptcodes" item="leaveldeptcode" open="(" separator=","
+                             close="))">
+                        #{leaveldeptcode}
+                    </foreach>
+                </if>
             </if>
 
             <if test="senddate != null ">and senddate = #{senddate}</if>
@@ -242,6 +269,7 @@
             <if test="longSendTime != null ">and long_send_time = #{longSendTime}</if>
             <if test="sendstate != null ">and sendstate = #{sendstate}</if>
             <if test="drname != null  and drname != ''">and drname like concat('%', #{drname}, '%')</if>
+            <if test="taskName != null  and taskName != ''">and task_name like concat('%', #{taskName}, '%')</if>
             <if test="drcode != null ">and drcode = #{drcode}</if>
             <if test="starttime != null ">and starttime = #{starttime}</if>
             <if test="endtime != null ">and endtime = #{endtime}</if>
@@ -254,12 +282,37 @@
             <if test="createBy != null">and create_by = #{createBy}</if>
             <if test="taskGuid != null">and task_guid = #{taskGuid}</if>
         </where>
-        <if test="serviceType != null  and serviceType != ''and serviceType != '2'and serviceType != '3'">order by
-            long_send_time desc
-        </if>
-        <if test="serviceType != null  and serviceType != ''and serviceType == '2'">order by endtime desc</if>
-        <if test="serviceType != null  and serviceType != ''and serviceType == '3'">order by admindate desc</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==5">order by admindate asc</if>
+        <if test="sort != null  and sort==6">order by admindate desc</if>
+
         <!-- order by update_time desc,id desc -->
+    </select>
+
+    <select id="selectServiceSubtaskListByCreateTime" parameterType="com.smartor.domain.ServiceSubtaskVO"
+            resultMap="ServiceSubtaskResult">
+        <include refid="selectServiceSubtaskVo"/>
+        <where>
+            del_flag=0
+            <if test="createStartTime != null  and createEndTime != null">and create_time BETWEEN #{createStartTime} AND
+                #{createEndTime}
+            </if>
+            <if test="createBy != null ">and create_by = #{createBy}</if>
+            <if test="sendname != null ">and sendname = #{sendname}</if>
+            <if test="sfzh != null ">and sfzh = #{sfzh}</if>
+        </where>
+
+    </select>
+
+    <select id="selectSendstateByCondition" parameterType="com.smartor.domain.ServiceSubtask" resultType="Integer">
+        SELECT b.sendstate
+        from service_task a
+                 JOIN service_subtask b on a.taskid = b.taskid and a.pat_cycle = 0 and b.del_flag = 0
+        where b.taskid = #{taskid}
+          and b.patid = #{patid}
     </select>
 
     <select id="selectServiceSubtaskById" parameterType="Long" resultMap="ServiceSubtaskResult">
@@ -575,7 +628,10 @@
             <if test="patfrom != null ">patfrom=#{patfrom},</if>
             <if test="taskGuid != null ">taskGuid=#{taskGuid},</if>
         </trim>
-        where patid = #{patid} and taskid = #{taskid}
+        <where>
+            <if test="patid != null ">and patid = #{patid}</if>
+            <if test="taskid != null ">and taskid = #{taskid}</if>
+        </where>
     </update>
 
     <update id="updateServiceSubtaskByCondition" parameterType="com.smartor.domain.ServiceSubtask">

--
Gitblit v1.9.3