From 55f5271f893a25a7be671b24938e49976936a67b Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期一, 29 九月 2025 18:30:00 +0800 Subject: [PATCH] 新增Orgid --- smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml | 175 ++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 110 insertions(+), 65 deletions(-) diff --git a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml index e3f07ff..cd63052 100644 --- a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml +++ b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml @@ -84,6 +84,7 @@ <result property="visitDeptCode" column="visit_dept_code"/> <result property="managementDoctor" column="management_doctor"/> <result property="managementDoctorCode" column="management_doctor_code"/> + <result property="currentPreachform" column="current_preachform"/> </resultMap> <resultMap type="com.smartor.domain.ServiceSubtaskCount" id="ServiceSubtaskResult2"> @@ -104,6 +105,7 @@ patfrom, management_doctor, management_doctor_code, + current_preachform, upid, visit_dept_name, visit_dept_code, @@ -184,6 +186,36 @@ management_doctor_code from service_subtask </sql> + + <select id="selectServiceSubtaskBySendstate" parameterType="com.smartor.domain.ServiceSubtaskVO" + resultMap="ServiceSubtaskResult"> + + <include refid="selectServiceSubtaskVo"/> + <where> + del_flag=0 + and taskid = #{taskid} + AND sendstate IN + <foreach collection="sendstates" item="sendstate" open="(" separator="," + close=")"> + #{sendstate} + </foreach> + </where> + </select> + + <select id="queryServiceSubtaskList" parameterType="com.smartor.domain.ServiceSubtaskVO" + resultMap="ServiceSubtaskResult"> + <include refid="selectServiceSubtaskVo"/> + <where> + del_flag=0 + <if test="taskid != null ">and taskid = #{taskid}</if> + <if test="visitTime != null"> + AND date_format(visit_time,'%y%m%d') <= date_format(#{visitTime},'%y%m%d') + </if> + <if test="sendstate != null ">and sendstate = #{sendstate}</if> + </where> + + </select> + <select id="selectServiceSubtaskList" parameterType="com.smartor.domain.ServiceSubtaskVO" resultMap="ServiceSubtaskResult"> @@ -275,6 +307,9 @@ </if> </if> + <if test="visitTime != null"> + AND date_format(visit_time,'%y%m%d') = date_format(#{visitTime},'%y%m%d') + </if> <if test="senddate != null ">and senddate = #{senddate}</if> <if test="senduuid != null and senduuid != ''">and senduuid = #{senduuid}</if> <if test="result != null and result != ''">and result = #{result}</if> @@ -290,6 +325,7 @@ <if test="orgid != null and orgid != ''">and orgid = #{orgid}</if> <if test="pid != null ">and pid = #{pid}</if> <if test="preachform != null ">and preachform = #{preachform}</if> + <if test="currentPreachform != null ">and current_preachform = #{currentPreachform}</if> <if test="guid != null and guid != ''">and guid = #{guid}</if> <if test="textParam != null and textParam != ''">and text_param = #{textParam}</if> <if test="bedNo != null">and bed_no = #{bedNo}</if> @@ -324,7 +360,7 @@ <if test="createBy != null">and create_by = #{createBy}</if> <if test="taskGuid != null">and task_guid = #{taskGuid}</if> <if test="isVisitAgain != null">and is_visit_again = #{isVisitAgain}</if> - <if test="visitTime != null">and visit_time = #{visitTime}</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"> @@ -367,6 +403,7 @@ <if test="visitDeptName != null">and visit_dept_name = #{visitDeptName}</if> <if test="managementDoctorCode != null">and management_doctor_code = #{managementDoctorCode}</if> <if test="managementDoctor != null">and management_doctor = #{managementDoctor}</if> + <if test="currentPreachform != null">and current_preachform = #{currentPreachform}</if> </where> </select> @@ -421,6 +458,7 @@ <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="currentPreachform != null">and current_preachform = #{currentPreachform}</if> <if test="managementDoctorCode != null">and management_doctor_code = #{managementDoctorCode}</if> <if test="managementDoctor != null">and management_doctor like concat('%',#{managementDoctor}, '%')</if> </where> @@ -585,6 +623,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="currentPreachform != null">current_preachform,</if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="sendname != null">#{sendname},</if> @@ -668,6 +707,7 @@ <if test="visitDeptName != null">#{visitDeptName},</if> <if test="managementDoctorCode != null">#{managementDoctorCode},</if> <if test="managementDoctor != null">#{managementDoctor},</if> + <if test="currentPreachform != null">#{currentPreachform},</if> </trim> </insert> @@ -756,6 +796,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="currentPreachform != null">current_preachform=#{currentPreachform},</if> </trim> where id = #{id} </update> @@ -845,6 +886,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="currentPreachform != null">current_preachform=#{currentPreachform},</if> </trim> <where> <if test="patid != null ">and patid = #{patid}</if> @@ -936,6 +978,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="currentPreachform != null">current_preachform=#{currentPreachform},</if> </trim> where patid = #{patid} and taskid = #{taskid} </update> @@ -1024,6 +1067,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="currentPreachform != null">current_preachform=#{currentPreachform},</if> </trim> where task_guid = #{taskGuid} and task_name = #{taskName} </update> @@ -1204,6 +1248,7 @@ openid, sfzh, addr, + current_preachform, senderdetail, type, taskid, @@ -1342,16 +1387,16 @@ DATE_FORMAT(visit_time, '%Y-%m-%d') AS timePeriod, </otherwise> </choose> - COUNT(CASE WHEN service_type = '2' THEN 1 END) AS dischargeFollowCount, - COUNT(CASE WHEN service_type = '3' THEN 1 END) AS outpatientFollowCount, + CASE WHEN service_type = '2' THEN 1 END AS dischargeFollowCount, + CASE WHEN service_type = '3' THEN 1 END AS outpatientFollowCount, 0 AS pmiCount, 0 AS pmoCount FROM service_subtask WHERE del_flag = '0' <if test="startDate != null and endDate != null"> - and date_format(visit_time,'%y%m%d') >= date_format(#{startDate},'%y%m%d') - and date_format(visit_time,'%y%m%d') <= date_format(#{endDate},'%y%m%d') + AND visit_time >= #{startDate} + AND visit_time <= DATE_ADD(#{endDate}, INTERVAL 1 DAY) </if> <if test="orgid != null"> @@ -1379,24 +1424,24 @@ </foreach> </if> - GROUP BY - <choose> - <when test="timeType == 'day'"> - DATE_FORMAT(visit_time, '%Y-%m-%d') - </when> - <when test="timeType == 'month'"> - DATE_FORMAT(visit_time, '%Y-%m') - </when> - <when test="timeType == 'year'"> - DATE_FORMAT(visit_time, '%Y') - </when> - <when test="timeType == 'week'"> - CONCAT(YEAR(visit_time), '-W', LPAD(WEEK(visit_time, 1), 2, '0')) - </when> - <otherwise> - DATE_FORMAT(visit_time, '%Y-%m-%d') - </otherwise> - </choose> +<!-- GROUP BY--> +<!-- <choose>--> +<!-- <when test="timeType == 'day'">--> +<!-- DATE_FORMAT(visit_time, '%Y-%m-%d')--> +<!-- </when>--> +<!-- <when test="timeType == 'month'">--> +<!-- DATE_FORMAT(visit_time, '%Y-%m')--> +<!-- </when>--> +<!-- <when test="timeType == 'year'">--> +<!-- DATE_FORMAT(visit_time, '%Y')--> +<!-- </when>--> +<!-- <when test="timeType == 'week'">--> +<!-- CONCAT(YEAR(visit_time), '-W', LPAD(WEEK(visit_time, 1), 2, '0'))--> +<!-- </when>--> +<!-- <otherwise>--> +<!-- DATE_FORMAT(visit_time, '%Y-%m-%d')--> +<!-- </otherwise>--> +<!-- </choose>--> UNION ALL @@ -1421,13 +1466,13 @@ </choose> 0 AS dischargeFollowCount, 0 AS outpatientFollowCount, - COUNT( patid) AS pmiCount, + 1 AS pmiCount, 0 AS pmoCount FROM pat_med_inhosp WHERE del_flag = '0' <if test="startDate != null and endDate != null"> - and date_format(endtime,'%y%m%d') >= date_format(#{startDate},'%y%m%d') - and date_format(endtime,'%y%m%d') <= date_format(#{endDate},'%y%m%d') + AND endtime >= #{startDate} + AND endtime <= DATE_ADD(#{endDate}, INTERVAL 1 DAY) </if> AND inhospstate=1 @@ -1449,24 +1494,24 @@ </foreach> </if> - GROUP BY - <choose> - <when test="timeType == 'day'"> - DATE_FORMAT(endtime, '%Y-%m-%d') - </when> - <when test="timeType == 'month'"> - DATE_FORMAT(endtime, '%Y-%m') - </when> - <when test="timeType == 'year'"> - DATE_FORMAT(endtime, '%Y') - </when> - <when test="timeType == 'week'"> - CONCAT(YEAR(endtime), '-W', LPAD(WEEK(endtime, 1), 2, '0')) - </when> - <otherwise> - DATE_FORMAT(endtime, '%Y-%m-%d') - </otherwise> - </choose> +<!-- GROUP BY--> +<!-- <choose>--> +<!-- <when test="timeType == 'day'">--> +<!-- DATE_FORMAT(endtime, '%Y-%m-%d')--> +<!-- </when>--> +<!-- <when test="timeType == 'month'">--> +<!-- DATE_FORMAT(endtime, '%Y-%m')--> +<!-- </when>--> +<!-- <when test="timeType == 'year'">--> +<!-- DATE_FORMAT(endtime, '%Y')--> +<!-- </when>--> +<!-- <when test="timeType == 'week'">--> +<!-- CONCAT(YEAR(endtime), '-W', LPAD(WEEK(endtime, 1), 2, '0'))--> +<!-- </when>--> +<!-- <otherwise>--> +<!-- DATE_FORMAT(endtime, '%Y-%m-%d')--> +<!-- </otherwise>--> +<!-- </choose>--> UNION ALL @@ -1492,12 +1537,12 @@ 0 AS dischargeFollowCount, 0 AS outpatientFollowCount, 0 AS pmiCount, - COUNT( patid) AS pmoCount + 1 AS pmoCount FROM pat_med_outhosp WHERE del_flag = '0' <if test="startDate != null and endDate != null"> - and date_format(admitdate,'%y%m%d') >= date_format(#{startDate},'%y%m%d') - and date_format(admitdate,'%y%m%d') <= date_format(#{endDate},'%y%m%d') + AND admitdate >= #{startDate} + AND admitdate <= DATE_ADD(#{endDate}, INTERVAL 1 DAY) </if> <if test="orgid != null"> AND orgid = #{orgid} @@ -1510,24 +1555,24 @@ </foreach> </if> - GROUP BY - <choose> - <when test="timeType == 'day'"> - DATE_FORMAT(admitdate, '%Y-%m-%d') - </when> - <when test="timeType == 'month'"> - DATE_FORMAT(admitdate, '%Y-%m') - </when> - <when test="timeType == 'year'"> - DATE_FORMAT(admitdate, '%Y') - </when> - <when test="timeType == 'week'"> - CONCAT(YEAR(admitdate), '-W', LPAD(WEEK(admitdate, 1), 2, '0')) - </when> - <otherwise> - DATE_FORMAT(admitdate, '%Y-%m-%d') - </otherwise> - </choose> +<!-- GROUP BY--> +<!-- <choose>--> +<!-- <when test="timeType == 'day'">--> +<!-- DATE_FORMAT(admitdate, '%Y-%m-%d')--> +<!-- </when>--> +<!-- <when test="timeType == 'month'">--> +<!-- DATE_FORMAT(admitdate, '%Y-%m')--> +<!-- </when>--> +<!-- <when test="timeType == 'year'">--> +<!-- DATE_FORMAT(admitdate, '%Y')--> +<!-- </when>--> +<!-- <when test="timeType == 'week'">--> +<!-- CONCAT(YEAR(admitdate), '-W', LPAD(WEEK(admitdate, 1), 2, '0'))--> +<!-- </when>--> +<!-- <otherwise>--> +<!-- DATE_FORMAT(admitdate, '%Y-%m-%d')--> +<!-- </otherwise>--> +<!-- </choose>--> ) AS combined_data GROUP BY timePeriod ORDER BY timePeriod DESC -- Gitblit v1.9.3