From a7f132bc723df88c95b469260eb79ac247463442 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期四, 25 九月 2025 19:00:57 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml | 118 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 118 insertions(+), 0 deletions(-) diff --git a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml index 16ef881..e3f07ff 100644 --- a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml +++ b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml @@ -90,6 +90,10 @@ <result property="month" column="month"/> <result property="serviceType" column="service_type"/> <result property="subTaskId" column="subTaskId"/> + <result property="joyCount" column="joyCount"/> + <result property="joyAllCount" column="joyAllCount"/> + <result property="joyTotal" column="joyTotal"/> + <result property="joyName" column="joyName"/> </resultMap> @@ -338,6 +342,8 @@ <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> + <if test="sort != null and sort==7">order by visit_time asc</if> + <if test="sort != null and sort==8">order by visit_time desc</if> <!-- order by update_time desc,id desc --> </select> @@ -1074,6 +1080,118 @@ </where> </select> + <select id="getSfStatisticsJoy" parameterType="com.smartor.domain.ServiceSubtaskCountReq" + resultMap="ServiceSubtaskResult2"> + SELECT sub_id as subTaskId,COUNT(sub_id) joyCount, + (SELECT COUNT(1) FROM ivr_liba_target WHERE assortid IN (SELECT config_value FROM sys_config WHERE config_key='joyCount')) joyAllCount + FROM service_subtask_detail a + WHERE sub_id IN(SELECT id FROM service_subtask t + <where> + del_flag=0 + <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0"> + AND leavehospitaldistrictcode IN + <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator="," + close=")"> + #{leavehospitaldistrictcode} + </foreach> + </if> + <if test="deptcodes != null and deptcodes.size() > 0"> + AND deptcode IN + <foreach collection="deptcodes" item="deptcode" open="(" separator="," + close=")"> + #{deptcode} + </foreach> + </if> + <if test="serviceType != null and serviceType.size() > 0"> + AND service_type IN + <foreach collection="serviceType" item="serviceType" open="(" separator="," + close=")"> + #{serviceType} + </foreach> + </if> + <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') <= date_format(#{endTime},'%y%m%d') + </if> + <if test="visitDeptCode != null">and visit_dept_code = #{visitDeptCode}</if> + <if test="visitDeptName != null">abd visit_dept_name = #{visitDeptName}</if> + </where> + ) + AND targetid IN ( SELECT id FROM ivr_liba_target WHERE assortid IN (SELECT config_value FROM sys_config WHERE config_key='joyCount')) + GROUP BY sub_id + </select> + + <select id="getSfStatisticsJoydetails" parameterType="com.smartor.domain.ServiceSubtaskCountReq" + resultMap="ServiceSubtaskResult2"> + 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 + <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0"> + AND leavehospitaldistrictcode IN + <foreach collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator="," + close=")"> + #{leavehospitaldistrictcode} + </foreach> + </if> + <if test="deptcodes != null and deptcodes.size() > 0"> + AND deptcode IN + <foreach collection="deptcodes" item="deptcode" open="(" separator="," + close=")"> + #{deptcode} + </foreach> + </if> + <if test="serviceType != null and serviceType.size() > 0"> + AND service_type IN + <foreach collection="serviceType" item="serviceType" open="(" separator="," + close=")"> + #{serviceType} + </foreach> + </if> + <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') <= 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 + <if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">AND + leavehospitaldistrictcode IN + <foreach + collection="leavehospitaldistrictcodes" item="leavehospitaldistrictcode" open="(" separator="," + close=")"> + #{leavehospitaldistrictcode} + </foreach> + </if> + <if test="deptcodes != null and deptcodes.size() > 0"> + AND deptcode IN + <foreach collection="deptcodes" item="deptcode" open="(" separator="," + close=")"> + #{deptcode} + </foreach> + </if> + <if test="serviceType != null and serviceType.size() > 0"> + AND service_type IN + <foreach collection="serviceType" item="serviceType" open="(" separator="," + close=")"> + #{serviceType} + </foreach> + </if> + <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') <= 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= + 'joyCount') + )a1 + </select> + <select id="getDataByTime" resultMap="ServiceSubtaskResult"> select id, -- Gitblit v1.9.3