From 987e38327f849e1b13d8541246dde08d877db0e8 Mon Sep 17 00:00:00 2001
From: 陈昶聿 <chychen@nbjetron.com>
Date: 星期三, 07 一月 2026 14:10:43 +0800
Subject: [PATCH] 【市一】调整mapper获取ordid

---
 smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml |  283 ++++++++++++++++++++++++++++++++-----------------------
 1 files changed, 164 insertions(+), 119 deletions(-)

diff --git a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
index 111eee5..0742f40 100644
--- a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
@@ -103,7 +103,9 @@
     <resultMap type="com.smartor.domain.ServiceSubtaskScriptCount" id="ServiceSubtaskScriptCountResult">
         <result property="scriptid" column="scriptid"/>
         <result property="templateid" column="templateid"/>
+        <result property="scriptType" column="script_type"/>
         <result property="scriptContent" column="script_content"/>
+        <result property="subtaskType" column="subtask_type"/>
         <result property="completedQuantity" column="completed_quantity"/>
         <result property="allQuantity" column="all_quantity"/>
         <result property="completedPercentage" column="completed_percentage"/>
@@ -208,32 +210,36 @@
             resultMap="ServiceSubtaskResult">
 
         <include refid="selectServiceSubtaskVo"/>
-        <where>
-            del_flag=0
+        WHERE 1=1
+            <if test="orgid != null and orgid != ''"> and orgid = #{orgid}</if>
+
+            AND del_flag=0
             <if test="taskid != null ">and taskid = #{taskid}</if>
             <if test="serviceType != null ">and service_type = #{serviceType}</if>
             <if test="patid != null ">and patid = #{patid}</if>
             <if test="sendstates!=null">
                 AND sendstate IN
                 <foreach collection="sendstates" item="sendstate" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{sendstate}
                 </foreach>
             </if>
-        </where>
+        
     </select>
 
     <select id="queryServiceSubtaskList" parameterType="com.smartor.domain.ServiceSubtaskVO"
             resultMap="ServiceSubtaskResult">
         <include refid="selectServiceSubtaskVo"/>
-        <where>
-            del_flag=0
+        WHERE 1=1
+            <if test="orgid != null and orgid != ''"> and orgid = #{orgid}</if>
+
+            AND del_flag=0
             <if test="taskid != null ">and taskid = #{taskid}</if>
             <if test="visitTime != null">
                 AND date_format(visit_time,'%y%m%d') &lt;= date_format(#{visitTime},'%y%m%d')
             </if>
             <if test="sendstate != null ">and sendstate = #{sendstate}</if>
-        </where>
+        
 
     </select>
 
@@ -241,15 +247,17 @@
     <select id="selectServiceSubtaskList" parameterType="com.smartor.domain.ServiceSubtaskVO"
             resultMap="ServiceSubtaskResult">
         <include refid="selectServiceSubtaskVo"/>
-        <where>
-            del_flag=0
+        WHERE 1=1
+            <if test="orgid != null and orgid != ''"> and orgid = #{orgid}</if>
+
+            AND del_flag=0
             <if test="sendname != null  and sendname != ''">and sendname like concat('%', #{sendname}, '%')</if>
             <if test="phone != null  and phone != ''">and phone = #{phone}</if>
             <if test="leavehospitaldistrictcode != null  and leavehospitaldistrictcode != ''">and
-                leavehospitaldistrictcode = #{leavehospitaldistrictcode}
+                AND leavehospitaldistrictcode = #{leavehospitaldistrictcode}
             </if>
             <if test="leavehospitaldistrictname != null  and leavehospitaldistrictname != ''">and
-                leavehospitaldistrictname = #{leavehospitaldistrictname}
+                AND leavehospitaldistrictname = #{leavehospitaldistrictname}
             </if>
             <if test="leavediagname != null  and leavediagname != ''">and leavediagname like concat('%',
                 #{leavediagname}, '%')
@@ -274,8 +282,8 @@
             <if test="type != null  and type != ''">and type = #{type}</if>
             <if test="taskid != null ">and taskid = #{taskid}</if>
             <if test="templateid != null  and templateid != ''">and templateid = #{templateid}</if>
-            <if test="templatename != null  and templatename != ''">and templatename like concat('%', #{templatename},
-                '%')
+            <if test="templatename != null  and templatename != ''">
+                and templatename like concat('%', #{templatename},'%')
             </if>
             <if test="startOutHospTime != null">
                 AND date_format(endtime,'%y%m%d') &gt;= date_format(#{startOutHospTime},'%y%m%d')
@@ -297,16 +305,16 @@
                 <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
                     AND leavehospitaldistrictcode IN
                     <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="("
-                             separator=","
-                             close=")">
-                        #{leavehospitaldistrictcode}
+                             AND separator=","
+                             AND close=")">
+                    #{leavehospitaldistrictcode}
                     </foreach>
                 </if>
                 <if test=" leaveldeptcodes != null and leaveldeptcodes.size()>0">
                     AND deptcode IN
                     <foreach collection="leaveldeptcodes" item="leaveldeptcode" open="(" separator=","
-                             close=")">
-                        #{leaveldeptcode}
+                             AND close=")">
+                    #{leaveldeptcode}
                     </foreach>
                 </if>
             </if>
@@ -314,16 +322,16 @@
                 <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
                     AND (leavehospitaldistrictcode IN
                     <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="("
-                             separator=","
-                             close=")">
-                        #{leavehospitaldistrictcode}
+                             AND separator=","
+                             AND close=")">
+                    #{leavehospitaldistrictcode}
                     </foreach>
                 </if>
                 <if test=" leaveldeptcodes != null and leaveldeptcodes.size()>0">
                     OR deptcode IN
                     <foreach collection="leaveldeptcodes" item="leaveldeptcode" open="(" separator=","
-                             close="))">
-                        #{leaveldeptcode}
+                             AND close="))">
+                    #{leaveldeptcode}
                     </foreach>
                 </if>
             </if>
@@ -382,19 +390,19 @@
             <if test="taskGuid != null">and task_guid = #{taskGuid}</if>
             <if test="isabnormal != null">and isabnormal = #{isabnormal}</if>
             <if test="isVisitAgain != null">and is_visit_again = #{isVisitAgain}</if>
-<!--            <if test="dateLimit != null and dateLimit = '1'"> and CURDATE() + 1 > long_send_time</if>-->
+            <!--            <if test="dateLimit != null and dateLimit = '1'"> and CURDATE() + 1 > long_send_time</if>-->
             <!-- <if test="visitTime != null">and visit_time = #{visitTime}</if> -->
             <!--<if test="visitDeptCode != null">and visit_dept_code = #{visitDeptCode}</if>
             <if test="visitDeptName != null">and visit_dept_name = #{visitDeptName}</if>-->
             <if test="visitCount != null and visitCount > 1 and visitDeptCodes != null and visitDeptCodes.size() > 0">
                 AND visit_dept_code IN
                 <foreach collection="visitDeptCodes" item="visitDeptCodes" open="("
-                         separator=","
-                         close=")">
+                         AND separator=","
+                         AND close=")">
                     #{visitDeptCodes}
                 </foreach>
             </if>
-        </where>
+        
         <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>
@@ -406,14 +414,30 @@
 
         <!-- order by update_time desc,id desc -->
     </select>
+    <select id="getCompensateServiceSubtaskList" parameterType="com.smartor.domain.ServiceSubtaskVO"
+            resultMap="ServiceSubtaskResult">
+        <include refid="selectServiceSubtaskVo"/>
+        WHERE 1=1
+            <if test="orgid != null and orgid != ''"> and orgid = #{orgid}</if>
+
+            AND del_flag=0
+            <if test="visitTime != null">
+                AND date_format(visit_time,'%y%m%d') &lt;= date_format(#{visitTime},'%y%m%d')
+            </if>
+            <if test="sendstate != null ">and sendstate = #{sendstate}</if>
+
+        
+
+    </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}
+        WHERE 1=1
+            <if test="orgid != null and orgid != ''"> and orgid = #{orgid}</if>
+            and 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>
@@ -428,20 +452,19 @@
             <if test="managementDoctor != null">and management_doctor = #{managementDoctor}</if>
             <if test="currentPreachform != null">and current_preachform = #{currentPreachform}</if>
             <if test="isabnormal != null">and isabnormal = #{isabnormal}</if>
-        </where>
-
     </select>
 
 
     <select id="selectServiceSubtaskListAgain" parameterType="com.smartor.domain.ServiceSubtaskVO"
             resultMap="ServiceSubtaskResult">
         <include refid="selectServiceSubtaskVo"/>
-        <where>
-            del_flag=0
+        WHERE 1=1
+            <if test="orgid != null and orgid != ''"> and orgid = #{orgid}</if>
+            AND del_flag=0
             and upid is not null
             and visit_count > 1
-            <if test="createStartTime != null  and createEndTime != null">and create_time BETWEEN #{createStartTime} AND
-                #{createEndTime}
+            <if test="createStartTime != null  and createEndTime != null">
+            and create_time BETWEEN #{createStartTime} AND #{createEndTime}
             </if>
             <if test="senddate != null ">and senddate = #{senddate}</if>
             <if test="senduuid != null  and senduuid != ''">and senduuid = #{senduuid}</if>
@@ -486,21 +509,21 @@
             <if test="managementDoctorCode != null">and management_doctor_code = #{managementDoctorCode}</if>
             <if test="isabnormal != null">and isabnormal = #{isabnormal}</if>
             <if test="managementDoctor != null">and management_doctor like concat('%',#{managementDoctor}, '%')</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}
+        WHERE 1=1
+            <if test="orgid != null and orgid != ''"> and orgid = #{orgid}</if>
+AND b.taskid = #{taskid}
             and b.patid = #{patid}
             <if test="createTime != null and createTime != ''">
-                DATE_FORMAT(b.create_time, '%Y-%m-%d') LIKE CONCAT(#{createTimeNew}, '%')
+                AND DATE_FORMAT(b.create_time, '%Y-%m-%d') LIKE CONCAT(#{createTimeNew}, '%')
             </if>
             <if test="sendstate != null ">and b.sendstate = #{sendstate}</if>
-        </where>
+        
     </select>
 
     <select id="selectTimelyRate" parameterType="com.smartor.domain.ServiceSubtask" resultType="double">
@@ -535,16 +558,18 @@
     <select id="selectTimelyRateDetail" parameterType="com.smartor.domain.ServiceSubtask"
             resultMap="ServiceSubtaskResult">
         <include refid="selectServiceSubtaskVo"/>
-        <where>
-            id in (
-            SELECT id FROM
-            (SELECT id, visit_time, finishtime,
-            (CASE WHEN ( DATE_FORMAT( visit_time, '%y%m%d' ) &lt; DATE_FORMAT( IF ( ISNULL( finishtime ), NOW(),
-            finishtime
-            ), '%y%m%d' ) )
-            THEN 1 ELSE 0 END ) finished,1 AS tasknumber FROM service_subtask
-            WHERE del_flag=0
-            -- AND visit_time &lt; NOW()
+        WHERE 1=1
+            <if test="orgid != null and orgid != ''"> and orgid = #{orgid}</if>
+
+            AND id in (
+            AND SELECT id FROM
+            AND (SELECT id, visit_time, finishtime,
+            AND (CASE WHEN ( DATE_FORMAT( visit_time, '%y%m%d' ) &lt; DATE_FORMAT( IF ( ISNULL( finishtime ), NOW(),
+            AND finishtime
+            AND ), '%y%m%d' ) )
+            AND THEN 1 ELSE 0 END ) finished,1 AS tasknumber FROM service_subtask
+            AND WHERE del_flag=0
+            AND -- AND visit_time &lt; NOW()
             <if test="starttime != null and endtime!=null">
                 AND date_format(visit_time,'%y%m%d') >= date_format(#{starttime},'%y%m%d')
                 AND date_format(visit_time,'%y%m%d') &lt;= date_format(#{endtime},'%y%m%d')
@@ -554,15 +579,15 @@
             <if test="deptcode != null  and deptcode != ''">and deptcode = #{deptcode}</if>
             <if test="deptname != null  and deptname != ''">and deptname = #{deptname}</if>
             <if test="leavehospitaldistrictcode != null  and leavehospitaldistrictcode != ''">and
-                leavehospitaldistrictcode = #{leavehospitaldistrictcode}
+                AND leavehospitaldistrictcode = #{leavehospitaldistrictcode}
             </if>
             <if test="leavehospitaldistrictname != null  and leavehospitaldistrictname != ''">and
-                leavehospitaldistrictname = #{leavehospitaldistrictname}
+                AND leavehospitaldistrictname = #{leavehospitaldistrictname}
             </if>
             <if test="managementDoctorCode != null">and management_doctor_code = #{managementDoctorCode}</if>
             <if test="managementDoctor != null">and management_doctor like concat('%',#{managementDoctor}, '%')</if>
-            ) a where a.finished =1)
-        </where>
+            AND ) a where a.finished =1)
+        
     </select>
 
     <select id="selectServiceSubtaskById" parameterType="Long" resultMap="ServiceSubtaskResult">
@@ -942,10 +967,12 @@
             <if test="taskSituation != null">task_situation=#{taskSituation},</if>
             <if test="isabnormal != null">isabnormal=#{isabnormal},</if>
         </trim>
-        <where>
+        WHERE 1=1
+            <if test="orgid != null and orgid != ''"> and orgid = #{orgid}</if>
+
             <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">
@@ -1150,26 +1177,28 @@
     <select id="getSfStatistics" parameterType="com.smartor.domain.ServiceSubtaskCountReq"
             resultMap="ServiceSubtaskResult">
         <include refid="selectServiceSubtaskVo"/>
-        <where>
-            del_flag=0
+        WHERE 1=1
+            <if test="orgid != null and orgid != ''"> and orgid = #{orgid}</if>
+
+            AND del_flag=0
             <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
                 AND leavehospitaldistrictcode IN
                 <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{leavehospitaldistrictcode}
                 </foreach>
             </if>
             <if test="deptcodes != null and deptcodes.size() > 0">
                 AND deptcode IN
                 <foreach collection="deptcodes" item="deptcode" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{deptcode}
                 </foreach>
             </if>
             <if test="serviceType != null and serviceType.size() > 0">
                 AND service_type IN
                 <foreach collection="serviceType" item="serviceType" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{serviceType}
                 </foreach>
             </if>
@@ -1180,7 +1209,7 @@
             <if test="visitDeptCode != null">and visit_dept_code = #{visitDeptCode}</if>
             <if test="visitDeptName != null">abd visit_dept_name = #{visitDeptName}</if>
             <if test="isabnormal != null">abd isabnormal = #{isabnormal}</if>
-        </where>
+        
     </select>
 
     <select id="getSfStatisticsJoy" parameterType="com.smartor.domain.ServiceSubtaskCountReq"
@@ -1190,26 +1219,28 @@
         config_key='joyCount')) joyAllCount
         FROM service_subtask_detail a
         WHERE sub_id IN(SELECT id FROM service_subtask t
-        <where>
-            del_flag=0
+        WHERE 1=1
+            <if test="orgid != null and orgid != ''"> and orgid = #{orgid}</if>
+
+            AND del_flag=0
             <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
                 AND leavehospitaldistrictcode IN
                 <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{leavehospitaldistrictcode}
                 </foreach>
             </if>
             <if test="deptcodes != null and deptcodes.size() > 0">
                 AND deptcode IN
                 <foreach collection="deptcodes" item="deptcode" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{deptcode}
                 </foreach>
             </if>
             <if test="serviceType != null and serviceType.size() > 0">
                 AND service_type IN
                 <foreach collection="serviceType" item="serviceType" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{serviceType}
                 </foreach>
             </if>
@@ -1220,7 +1251,7 @@
             <if test="visitDeptCode != null">and visit_dept_code = #{visitDeptCode}</if>
             <if test="visitDeptName != null">abd visit_dept_name = #{visitDeptName}</if>
             <if test="isabnormal != null">abd isabnormal = #{isabnormal}</if>
-        </where>
+        
         )
         AND targetid IN ( SELECT id FROM ivr_liba_target WHERE assortid IN (SELECT config_value FROM sys_config WHERE
         config_key='joyCount'))
@@ -1232,26 +1263,28 @@
         SELECT joyName,joyCount,joyAllCount,ROUND(joyCount/joyAllCount,2) joyTotal FROM (
         SELECT targetname joyName,
         (select COUNT(sub_id) FROM service_subtask_detail WHERE sub_id IN(SELECT id FROM service_subtask t
-        <where>
-            del_flag=0
+        WHERE 1=1
+            <if test="orgid != null and orgid != ''"> and orgid = #{orgid}</if>
+
+            AND del_flag=0
             <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
                 AND leavehospitaldistrictcode IN
                 <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{leavehospitaldistrictcode}
                 </foreach>
             </if>
             <if test="deptcodes != null and deptcodes.size() > 0">
                 AND deptcode IN
                 <foreach collection="deptcodes" item="deptcode" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{deptcode}
                 </foreach>
             </if>
             <if test="serviceType != null and serviceType.size() > 0">
                 AND service_type IN
                 <foreach collection="serviceType" item="serviceType" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{serviceType}
                 </foreach>
             </if>
@@ -1259,30 +1292,32 @@
                 AND date_format(visit_time,'%y%m%d') >= date_format(#{startTime},'%y%m%d')
                 AND date_format(visit_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
             </if>
-        </where>
+        
         ) AND targetid=a.id) joyCount , (SELECT COUNT(*) from (select sub_id FROM service_subtask_detail
         WHERE sub_id IN(SELECT id FROM service_subtask t
-        <where>
-            del_flag=0
+        WHERE 1=1
+            <if test="orgid != null and orgid != ''"> and orgid = #{orgid}</if>
+
+            AND del_flag=0
             <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">AND
-                leavehospitaldistrictcode IN
+                AND leavehospitaldistrictcode IN
                 <foreach
-                        collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
-                        close=")">
+                        AND collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
+                        AND close=")">
                     #{leavehospitaldistrictcode}
                 </foreach>
             </if>
             <if test="deptcodes != null and deptcodes.size() > 0">
                 AND deptcode IN
                 <foreach collection="deptcodes" item="deptcode" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{deptcode}
                 </foreach>
             </if>
             <if test="serviceType != null and serviceType.size() > 0">
                 AND service_type IN
                 <foreach collection="serviceType" item="serviceType" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{serviceType}
                 </foreach>
             </if>
@@ -1290,7 +1325,7 @@
                 AND date_format(visit_time,'%y%m%d') >= date_format(#{startTime},'%y%m%d')
                 AND date_format(visit_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
             </if>
-        </where>
+        
         GROUP BY sub_id ) ) ta ) joyAllCount
         FROM ivr_liba_target a
         WHERE assortid IN (SELECT config_value FROM sys_config WHERE config_key=
@@ -1308,27 +1343,29 @@
         COUNT(sub_id) joyCount
         FROM service_subtask_detail a
         INNER JOIN service_subtask t ON a.sub_id = t.id
-        <where>
-            a.del_flag=0
+        WHERE 1=1
+            <if test="orgid != null and orgid != ''"> and orgid = #{orgid}</if>
+
+            AND a.del_flag=0
             AND t.del_flag=0
             <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
                 AND t.leavehospitaldistrictcode IN
                 <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{leavehospitaldistrictcode}
                 </foreach>
             </if>
             <if test="deptcodes != null and deptcodes.size() > 0">
                 AND t.deptcode IN
                 <foreach collection="deptcodes" item="deptcode" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{deptcode}
                 </foreach>
             </if>
             <if test="serviceType != null and serviceType.size() > 0">
                 AND t.service_type IN
                 <foreach collection="serviceType" item="serviceType" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{serviceType}
                 </foreach>
             </if>
@@ -1349,7 +1386,7 @@
             <if test="type != null">
                 and t.type = #{type}
             </if>
-        </where>
+        
         GROUP BY a.sub_id
     </select>
 
@@ -1358,7 +1395,9 @@
         SELECT
         a.id as scriptid,
         a.templateid as templateid,
+        a.script_type,
         a.script_content,
+        b.subtask_type,
         b.completed_quantity,
         b.all_quantity,
         ROUND(b.completed_quantity/b.all_quantity,2) as completed_percentage
@@ -1372,6 +1411,7 @@
         INNER JOIN(
         SELECT
         ssd.scriptid AS scriptid,
+        ss.type as subtask_type,
         SUM(CASE WHEN IFNULL(ssd.matchedtext,ssd.asrtext) IS NOT NULL
         AND IFNULL(ssd.matchedtext,ssd.asrtext) != '' THEN 1
         ELSE 0 END) AS completed_quantity,
@@ -1430,28 +1470,30 @@
         FROM
         service_subtask_detail ssd
         INNER JOIN service_subtask ss ON ssd.sub_id = ss.id
-        <where>
-            ss.del_flag=0
+        WHERE 1=1
+            <if test="orgid != null and orgid != ''"> and orgid = #{orgid}</if>
+
+            AND ss.del_flag=0
             AND IFNULL(ssd.matchedtext,ssd.asrtext) IS NOT NULL
             AND IFNULL(ssd.matchedtext,ssd.asrtext) != ''
             <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
                 AND ss.leavehospitaldistrictcode IN
                 <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{leavehospitaldistrictcode}
                 </foreach>
             </if>
             <if test="deptcodes != null and deptcodes.size() > 0">
                 AND ss.deptcode IN
                 <foreach collection="deptcodes" item="deptcode" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{deptcode}
                 </foreach>
             </if>
             <if test="serviceType != null and serviceType.size() > 0">
                 AND ss.service_type IN
                 <foreach collection="serviceType" item="serviceType" open="(" separator=","
-                         close=")">
+                         AND close=")">
                     #{serviceType}
                 </foreach>
             </if>
@@ -1466,7 +1508,7 @@
             <if test="configValue != null and configValue != ''">
                 AND ssd.categoryid IN (${configValue})
             </if>
-        </where>
+        
         group by ssd.scriptid, IFNULL(ssd.matchedtext,ssd.asrtext)
     </select>
 
@@ -1815,16 +1857,18 @@
     <!-- 浼樺寲鐨勭粺璁℃煡璇細鐩存帴鍦ㄦ暟鎹簱灞傚畬鎴愯仛鍚堣绠� -->
     <select id="countByCondition" parameterType="com.smartor.domain.ServiceSubtaskVO" resultType="map">
         SELECT
-            SUM(CASE WHEN sendstate = 4 THEN 1 ELSE 0 END) AS wzx,
-            SUM(CASE WHEN sendstate != 4 AND sendstate != 2 THEN 1 ELSE 0 END) AS ysf,
-            SUM(CASE WHEN sendstate = 5 THEN 1 ELSE 0 END) AS fssb,
-            SUM(CASE WHEN sendstate >= 3 OR sendstate = 1 THEN 1 ELSE 0 END) AS yfs,
-            SUM(CASE WHEN sendstate = 2 THEN 1 ELSE 0 END) AS dsf,
-            SUM(CASE WHEN sendstate = 1 THEN 1 ELSE 0 END) AS blq,
-            SUM(CASE WHEN excep IS NOT NULL AND excep != '0' THEN 1 ELSE 0 END) AS yc
+        SUM(CASE WHEN sendstate = 4 THEN 1 ELSE 0 END) AS wzx,
+        SUM(CASE WHEN sendstate != 4 AND sendstate != 2 THEN 1 ELSE 0 END) AS ysf,
+        SUM(CASE WHEN sendstate = 5 THEN 1 ELSE 0 END) AS fssb,
+        SUM(CASE WHEN sendstate >= 3 OR sendstate = 1 THEN 1 ELSE 0 END) AS yfs,
+        SUM(CASE WHEN sendstate = 2 THEN 1 ELSE 0 END) AS dsf,
+        SUM(CASE WHEN sendstate = 1 THEN 1 ELSE 0 END) AS blq,
+        SUM(CASE WHEN excep IS NOT NULL AND excep != '0' THEN 1 ELSE 0 END) AS yc
         FROM service_subtask
-        <where>
-            del_flag = 0
+        WHERE 1=1
+            <if test="orgid != null and orgid != ''"> and orgid = #{orgid}</if>
+
+            AND del_flag = 0
             <if test="sendname != null and sendname != ''">
                 AND sendname LIKE CONCAT('%', #{sendname}, '%')
             </if>
@@ -1835,16 +1879,16 @@
                 <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
                     AND leavehospitaldistrictcode IN
                     <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="("
-                             separator=","
-                             close=")">
-                        #{leavehospitaldistrictcode}
+                             AND separator=","
+                             AND close=")">
+                    #{leavehospitaldistrictcode}
                     </foreach>
                 </if>
                 <if test=" leaveldeptcodes != null and leaveldeptcodes.size()>0">
                     AND deptcode IN
                     <foreach collection="leaveldeptcodes" item="leaveldeptcode" open="(" separator=","
-                             close=")">
-                        #{leaveldeptcode}
+                             AND close=")">
+                    #{leaveldeptcode}
                     </foreach>
                 </if>
             </if>
@@ -1852,16 +1896,16 @@
                 <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
                     AND (leavehospitaldistrictcode IN
                     <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="("
-                             separator=","
-                             close=")">
-                        #{leavehospitaldistrictcode}
+                             AND separator=","
+                             AND close=")">
+                    #{leavehospitaldistrictcode}
                     </foreach>
                 </if>
                 <if test=" leaveldeptcodes != null and leaveldeptcodes.size()>0">
                     OR deptcode IN
                     <foreach collection="leaveldeptcodes" item="leaveldeptcode" open="(" separator=","
-                             close="))">
-                        #{leaveldeptcode}
+                             AND close="))">
+                    #{leaveldeptcode}
                     </foreach>
                 </if>
             </if>
@@ -1946,14 +1990,15 @@
             <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 collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="("
+                             AND 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}
+                    #{leaveldeptcode}
                     </foreach>
                 </if>
             </if>
@@ -1981,7 +2026,7 @@
             <if test="visitCount != null and visitCount > 1">
                 AND visit_count > 1
             </if>
-        </where>
+        
     </select>
 
 </mapper>

--
Gitblit v1.9.3