From ec6b75cfebe87ad118aba001708e686bf28e2fde Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期一, 03 八月 2026 20:57:04 +0800
Subject: [PATCH] 1.新增同德药品采集、宣教功能 2.处理新华采集BUG 3.新增service_subtask的院区ID 4.采集同德的入院申请单信息 5.给出院表新增药品字段、入院申请单字段
---
smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml | 131 ++++++++++++++++++++++++++++++++++++++++---
1 files changed, 121 insertions(+), 10 deletions(-)
diff --git a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
index 7e4b4b2..073c0ef 100644
--- a/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
@@ -98,6 +98,7 @@
<result property="scheduleDetailId" column="schedule_detail_id"/>
<result property="scheduleSeq" column="schedule_seq"/>
<result property="loopCount" column="loop_count"/>
+ <result property="campusid" column="campusid"/>
</resultMap>
<resultMap type="com.smartor.domain.ServiceSubtaskCount" id="ServiceSubtaskResult2">
@@ -151,6 +152,7 @@
<sql id="selectServiceSubtaskVo">
select id,
hosp_type,
+ campusid,
task_guid,
diagname,
patfrom,
@@ -363,7 +365,7 @@
#{state}
</foreach>
</if>
- <if test="subIdList != null and sendstates.size() > 0">
+ <if test="subIdList != null and subIdList.size() > 0">
AND id IN
<foreach collection="subIdList" item="subId" open="(" separator="," close=")">
#{subId}
@@ -393,7 +395,6 @@
<if test="endSendDateTime != null">
AND date_format(visit_time,'%y%m%d') <= date_format(#{endSendDateTime},'%y%m%d')
</if>
-
<if test="longSendTime != null">
AND date_format(long_send_time,'%y%m%d') <= date_format(#{longSendTime},'%y%m%d')
</if>
@@ -430,7 +431,8 @@
close=")">
#{leaveldeptcode}
</foreach>
- </if>)
+ </if>
+ )
</if>
<if test="deptOrDistrict==3">
AND (1=1
@@ -451,7 +453,6 @@
</if>
)
</if>
-
<if test="deptOrDistrict==4">
AND (1=1
<if test="leavehospitaldistrictcodes != null and leavehospitaldistrictcodes.size() > 0">
@@ -471,7 +472,6 @@
</if>
)
</if>
-
<if test="visitTime != null">
AND date_format(visit_time,'%y%m%d') = date_format(#{visitTime},'%y%m%d')
</if>
@@ -488,6 +488,7 @@
<if test="isupload != null ">and isupload = #{isupload}</if>
<if test="uploadTime != null ">and upload_time = #{uploadTime}</if>
<if test="orgid != null and orgid != ''">and orgid = #{orgid}</if>
+ <if test="campusid != null and campusid != ''">and campusid = #{campusid}</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>
@@ -502,7 +503,6 @@
<if test="libtemplateid != null ">and libtemplateid = #{libtemplateid}</if>
<if test="libtemplatename != null ">and libtemplatename = #{libtemplatename}</if>
<if test="openid != null ">and openid = #{openid}</if>
- <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>
@@ -971,6 +971,7 @@
<if test="continueTimeNext != null ">continue_time_next,</if>
<if test="continueContent != null ">continue_content,</if>
<if test="operationItemId != null ">operation_item_id,</if>
+ <if test="campusid != null">campusid,</if>
<if test="scheduleId != null ">schedule_id,</if>
<if test="scheduleDetailId != null ">schedule_detail_id,</if>
<if test="scheduleSeq != null ">schedule_seq,</if>
@@ -1067,6 +1068,7 @@
<if test="continueTimeNext != null ">#{continueTimeNext,jdbcType=TIMESTAMP},</if>
<if test="continueContent != null ">#{continueContent},</if>
<if test="operationItemId != null ">#{operationItemId},</if>
+ <if test="campusid != null">#{campusid},</if>
<if test="scheduleId != null ">#{scheduleId},</if>
<if test="scheduleDetailId != null ">#{scheduleDetailId},</if>
<if test="scheduleSeq != null ">#{scheduleSeq},</if>
@@ -1168,6 +1170,7 @@
<if test="continueTimeNext != null ">continue_time_next = #{continueTimeNext,jdbcType=TIMESTAMP},</if>
<if test="continueContent != null ">continue_content = #{continueContent},</if>
<if test="operationItemId != null ">operation_item_id = #{operationItemId},</if>
+ <if test="campusid != null">campusid=#{campusid},</if>
<if test="scheduleId != null ">schedule_id = #{scheduleId},</if>
<if test="scheduleDetailId != null ">schedule_detail_id = #{scheduleDetailId},</if>
<if test="scheduleSeq != null ">schedule_seq = #{scheduleSeq},</if>
@@ -1372,7 +1375,13 @@
<if test="continueTimeNext != null ">continue_time_next = #{continueTimeNext,jdbcType=TIMESTAMP},</if>
<if test="continueContent != null ">continue_content = #{continueContent},</if>
</trim>
- where patid = #{patid} and taskid = #{taskid}
+ where
+ <if test="patid != null ">
+ patid = #{patid}
+ </if>
+ <if test="taskid != null ">
+ and taskid = #{taskid}
+ </if>
<if test="id != null ">
and id = #{id}
</if>
@@ -1500,6 +1509,8 @@
orgid,
drcode,
drname,
+ management_doctor_code,
+ management_doctor,
leavehospitaldistrictcode,
leavehospitaldistrictname,
deptcode,
@@ -2522,14 +2533,15 @@
SUM(CASE WHEN sendstate = 1 THEN 1 ELSE 0 END) AS blq,
SUM(CASE WHEN sendstate = 4 THEN 1 ELSE 0 END) AS wxsf,
SUM(CASE WHEN sendstate != 4 THEN 1 ELSE 0 END) AS xsf,
- SUM(CASE WHEN (sendstate = 1 OR sendstate = 2 OR sendstate = 3 OR sendstate = 5 OR sendstate = 7 ) THEN 1 ELSE 0 END) AS dsf,
+ SUM(CASE WHEN (sendstate = 1 OR sendstate = 2 OR sendstate = 3 OR sendstate = 5 OR sendstate = 7 ) THEN 1 ELSE 0
+ END) AS dsf,
SUM(CASE WHEN sendstate = 6 THEN 1 ELSE 0 END) AS ywc,
SUM(CASE WHEN excep IS NOT NULL AND excep = '1' THEN 1 ELSE 0 END) AS yc,
SUM(CASE WHEN excep IS NOT NULL AND excep = '2' THEN 1 ELSE 0 END) AS jg,
COUNT(1) as total
FROM service_subtask
- where 1=1
- and del_flag = 0
+ where del_flag = 0
+ <if test="continueFlag != null ">and continue_flag = #{continueFlag}</if>
<if test="sendname != null and sendname != ''">
AND sendname LIKE CONCAT('%', #{sendname}, '%')
</if>
@@ -2686,6 +2698,9 @@
<if test="orgid != null and orgid != ''">
AND orgid = #{orgid}
</if>
+ <if test="campusid != null and campusid != ''">
+ AND campusid = #{campusid}
+ </if>
<if test="guid != null and guid != ''">
AND guid = #{guid}
</if>
@@ -2700,6 +2715,9 @@
</if>
<if test="visitCount != null and visitCount > 1">
AND visit_count > 1
+ </if>
+ <if test="drname != null and drname != ''">
+ AND drname like concat('%', #{drname}, '%')
</if>
</select>
@@ -2889,6 +2907,15 @@
FROM service_subtask
WHERE del_flag = 0
AND service_type = 4
+ <if test="orgid != null and orgid != ''">
+ and orgid = #{orgid}
+ </if>
+ <if test="sendstate != null">
+ AND sendstate = #{sendstate}
+ </if>
+ <if test="isFinished != null and isFinished != ''">
+ and finishtime is not null
+ </if>
<if test="starttime != null">AND starttime >= #{starttime}</if>
<if test="endtime != null">AND endtime <= #{endtime}</if>
<if test="visittime != null">AND DATE(visit_time) = DATE(#{visittime})</if>
@@ -2935,6 +2962,84 @@
order by schedule_seq asc, id asc
</select>
+ <select id="gethelibraryCountHyperlink" parameterType="com.smartor.domain.VO.HeLibraryCountVO"
+ resultMap="ServiceSubtaskResult">
+ select id,
+ visit_count,
+ is_visit_again,
+ type,
+ orgid,
+ drcode,
+ drname,
+ leavehospitaldistrictcode,
+ leavehospitaldistrictname,
+ deptcode,
+ deptname,
+ sendstate,
+ preachform,
+ current_preachform,
+ excep,
+ nurse_id,
+ nurse_name,
+ taskid,
+ task_name,
+ visit_time,
+ finishtime,
+ endtime,
+ senddate,
+ suggest,
+ result,
+ templateid,
+ templatename,
+ patid,
+ sendname,
+ send_type,
+ recordid,
+ exrecallcount,
+ continue_flag,
+ continue_time_now,
+ continue_content,
+ continue_count,
+ continue_time_next,
+ task_situation
+ from service_subtask
+ where 1=1
+ and del_flag = 0
+ AND service_type = 4
+ <if test="orgid != null and orgid != ''">
+ and orgid = #{orgid}
+ </if>
+ <if test="sendstate != null">
+ AND sendstate = #{sendstate}
+ </if>
+ <if test="isFinished != null and isFinished != ''">
+ and finishtime is not null
+ </if>
+ <if test="hospitaldistrictcodes != null and hospitaldistrictcodes.size() > 0">
+ AND leavehospitaldistrictcode IN
+ <foreach collection="hospitaldistrictcodes" item="hospitaldistrictcode" open="(" separator=","
+ close=")">
+ #{hospitaldistrictcode}
+ </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="starttime != null">AND starttime >= #{starttime}</if>
+ <if test="endtime != null">AND endtime <= #{endtime}</if>
+ <if test="visittime != null">AND DATE(visit_time) = DATE(#{visittime})</if>
+ <if test="finishtime != null">AND DATE(finishtime) = DATE(#{finishtime})</if>
+ <if test="hospType != null and hospType != ''">AND hosp_type = #{hospType}</if>
+ order by endtime desc
+ <if test="pageSize != null and pageNum != null">
+ limit ${pageSize} OFFSET ${pageNum}
+ </if>
+ </select>
+
<select id="statQuestionOption" resultType="com.smartor.domain.ServiceSubtaskDetailRatioExport">
SELECT
d.questiontext AS questiontext,
@@ -2969,6 +3074,12 @@
#{taskId}
</foreach>
AND s.sendstate = 6
+ <if test="startOutHospTime != null">
+ AND date_format(s.endtime,'%y%m%d') >= date_format(#{startOutHospTime},'%y%m%d')
+ </if>
+ <if test="endOutHospTime != null">
+ AND date_format(s.endtime,'%y%m%d') <= date_format(#{endOutHospTime},'%y%m%d')
+ </if>
GROUP BY
t.taskid,
d.questiontext,
--
Gitblit v1.9.3