From 48d32c21519998b29f85960774a79e4c5519bdf8 Mon Sep 17 00:00:00 2001 From: sinake <sinake1@qq.com> Date: 星期五, 10 十月 2025 17:01:53 +0800 Subject: [PATCH] 新增随访情况 --- smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml | 126 +++++++++++++++++++++++++++++++++++++++++ 1 files changed, 125 insertions(+), 1 deletions(-) diff --git a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml index 8704464..3b71072 100644 --- a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml +++ b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml @@ -84,12 +84,17 @@ <result property="visitDeptCode" column="visit_dept_code"/> <result property="managementDoctor" column="management_doctor"/> <result property="managementDoctorCode" column="management_doctor_code"/> + <result property="taskSituation" column="task_situation"/> </resultMap> <resultMap type="com.smartor.domain.ServiceSubtaskCount" id="ServiceSubtaskResult2"> <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> @@ -177,7 +182,8 @@ orgid, visit_type, management_doctor, - management_doctor_code + management_doctor_code, + task_situation from service_subtask </sql> @@ -581,6 +587,7 @@ <if test="visitDeptName != null">visit_dept_name,</if> <if test="managementDoctorCode != null">management_doctor_code,</if> <if test="managementDoctor != null">management_doctor,</if> + <if test="taskSituation != null">task_situation,</if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="sendname != null">#{sendname},</if> @@ -664,6 +671,7 @@ <if test="visitDeptName != null">#{visitDeptName},</if> <if test="managementDoctorCode != null">#{managementDoctorCode},</if> <if test="managementDoctor != null">#{managementDoctor},</if> + <if test="taskSituation != null">#{taskSituation},</if> </trim> </insert> @@ -752,6 +760,7 @@ <if test="visitDeptName != null">visit_dept_name = #{visitDeptName},</if> <if test="managementDoctorCode != null">management_doctor_code = #{managementDoctorCode},</if> <if test="managementDoctor != null">management_doctor=#{managementDoctor},</if> + <if test="taskSituation != null">task_situation=#{taskSituation},</if> </trim> where id = #{id} </update> @@ -841,6 +850,7 @@ <if test="visitDeptName != null">visit_dept_name = #{visitDeptName},</if> <if test="managementDoctorCode != null">management_doctor_code = #{managementDoctorCode},</if> <if test="managementDoctor != null">management_doctor=#{managementDoctor},</if> + <if test="taskSituation != null">task_situation=#{taskSituation},</if> </trim> <where> <if test="patid != null ">and patid = #{patid}</if> @@ -932,6 +942,7 @@ <if test="visitDeptName != null">visit_dept_name = #{visitDeptName},</if> <if test="managementDoctorCode != null">management_doctor_code = #{managementDoctorCode},</if> <if test="managementDoctor != null">management_doctor=#{managementDoctor},</if> + <if test="taskSituation != null">task_situation=#{taskSituation},</if> </trim> where patid = #{patid} and taskid = #{taskid} </update> @@ -1020,6 +1031,7 @@ <if test="visitDeptName != null">visit_dept_name = #{visitDeptName},</if> <if test="managementDoctorCode != null">management_doctor_code = #{managementDoctorCode},</if> <if test="managementDoctor != null">management_doctor=#{managementDoctor},</if> + <if test="taskSituation != null">task_situation=#{taskSituation},</if> </trim> where task_guid = #{taskGuid} and task_name = #{taskName} </update> @@ -1076,6 +1088,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