|
@@ -12474,6 +12474,363 @@
|
|
|
AND t.lastBehospitalCode = mhp_last.behospital_code
|
|
|
</select>
|
|
|
|
|
|
+ <!-- 31天再入院详情页-科室-->
|
|
|
+ <select id="reHos31DaysPageByDept" resultType="com.diagbot.dto.ReBeHosMergeDTO">
|
|
|
+ SELECT
|
|
|
+ t.fileCode,
|
|
|
+ t.diagnose,
|
|
|
+ t.NAME,
|
|
|
+ t.sex,
|
|
|
+ t.hospitalId,
|
|
|
+ t.behDeptId,
|
|
|
+ t.behDeptName,
|
|
|
+ t.doctorId,
|
|
|
+ t.doctorName,
|
|
|
+ t.behospitalCode,
|
|
|
+ t.behospitalDate,
|
|
|
+ t.leaveHospitalDate,
|
|
|
+ t.lastBehDeptId,
|
|
|
+ t.lastBehDeptName,
|
|
|
+ t.lastBehospitalCode,
|
|
|
+ t.lastBehospitalDate,
|
|
|
+ t.lastLeaveHospitalDate,
|
|
|
+ t.diffDays,
|
|
|
+ mqi.score_res AS scoreRes,
|
|
|
+ mqi.LEVEL AS LEVEL,
|
|
|
+ mqi_last.score_res AS lastScoreRes,
|
|
|
+ mqi_last.LEVEL AS lastLevel,
|
|
|
+ mhp.total_fee AS totleFee,
|
|
|
+ mhp.behospital_day_num AS behospitalDayNum,
|
|
|
+ mhp_last.total_fee AS lastTotleFee,
|
|
|
+ mhp_last.behospital_day_num AS lastBehospitalDayNum
|
|
|
+ FROM
|
|
|
+ (
|
|
|
+ SELECT
|
|
|
+ be.fileCode,
|
|
|
+ be.diagnose,
|
|
|
+ be.NAME,
|
|
|
+ be.sex,
|
|
|
+ be.hospitalId,
|
|
|
+ be.behDeptId,
|
|
|
+ be.behDeptName,
|
|
|
+ be.doctorId,
|
|
|
+ be.doctorName,
|
|
|
+ be.behospitalCode,
|
|
|
+ be.behospitalDate,
|
|
|
+ be.leaveHospitalDate,
|
|
|
+ be.lastBehDeptId,
|
|
|
+ be.lastBehDeptName,
|
|
|
+ be.lastBoctorId,
|
|
|
+ be.lastBoctorName,
|
|
|
+ be.lastBehospitalCode,
|
|
|
+ be.lastBehospitalDate,
|
|
|
+ be.lastLeaveHospitalDate,
|
|
|
+ be.diffDays
|
|
|
+ FROM
|
|
|
+ (
|
|
|
+ SELECT
|
|
|
+ r1.file_code AS fileCode,
|
|
|
+ r1.diagnose,
|
|
|
+ r1.NAME,
|
|
|
+ r1.sex,
|
|
|
+ r1.hospital_id AS hospitalId,
|
|
|
+ r1.beh_dept_id AS behDeptId,
|
|
|
+ r1.beh_dept_name AS behDeptName,
|
|
|
+ r1.doctor_id as doctorId,
|
|
|
+ r1.doctor_name as doctorName,
|
|
|
+ r1.behospital_code AS behospitalCode,
|
|
|
+ r1.behospital_date AS behospitalDate,
|
|
|
+ r1.leave_hospital_date AS leaveHospitalDate,
|
|
|
+ r2.beh_dept_id AS lastBehDeptId,
|
|
|
+ r2.beh_dept_name AS lastBehDeptName,
|
|
|
+ r2.behospital_code AS lastBehospitalCode,
|
|
|
+ r2.behospital_date AS lastBehospitalDate,
|
|
|
+ r2.doctor_id as lastBoctorId,
|
|
|
+ r2.doctor_name as lastBoctorName,
|
|
|
+ r2.leave_hospital_date AS lastLeaveHospitalDate,
|
|
|
+ TIMESTAMPDIFF( DAY, DATE( r2.leave_hospital_date ), DATE( r1.behospital_date ) ) AS diffDays
|
|
|
+ FROM
|
|
|
+ (
|
|
|
+ SELECT
|
|
|
+ ( @rownum := @rownum + 1 ) AS rownum,
|
|
|
+ t1.file_code,
|
|
|
+ t1.diagnose,
|
|
|
+ t1.NAME,
|
|
|
+ t1.sex,
|
|
|
+ t1.doctor_id,
|
|
|
+ t1.doctor_name,
|
|
|
+ t1.hospital_id,
|
|
|
+ t1.beh_dept_id,
|
|
|
+ t1.beh_dept_name,
|
|
|
+ t1.behospital_code,
|
|
|
+ t1.behospital_date,
|
|
|
+ t1.leave_hospital_date
|
|
|
+ FROM
|
|
|
+ (
|
|
|
+ SELECT
|
|
|
+ tt1.file_code,
|
|
|
+ tt1.diagnose,
|
|
|
+ tt1.doctor_id,
|
|
|
+ tt1.doctor_name,
|
|
|
+ tt2.NAME,
|
|
|
+ tt2.sex,
|
|
|
+ tt2.hospital_id,
|
|
|
+ tt2.beh_dept_id,
|
|
|
+ tt2.beh_dept_name,
|
|
|
+ tt2.behospital_code,
|
|
|
+ tt2.behospital_date,
|
|
|
+ tt2.leave_hospital_date
|
|
|
+ FROM
|
|
|
+ (
|
|
|
+ SELECT
|
|
|
+ a.file_code,
|
|
|
+ a.diagnose,
|
|
|
+ a.doctor_id,
|
|
|
+ a.doctor_name
|
|
|
+ FROM
|
|
|
+ med_behospital_info a,
|
|
|
+ sys_user_dept c
|
|
|
+ WHERE
|
|
|
+ a.is_deleted = 'N'
|
|
|
+ AND c.is_deleted = 'N'
|
|
|
+ AND a.hospital_id = c.hospital_id
|
|
|
+ AND a.beh_dept_id = c.dept_id
|
|
|
+ <if test="reBeHosPageVO.deptName != null and reBeHosPageVO.deptName != ''">
|
|
|
+ and a.beh_dept_name = #{reBeHosPageVO.deptName}
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.isPlacefile != null and reBeHosPageVO.isPlacefile != ''">
|
|
|
+ and a.is_placefile = #{reBeHosPageVO.isPlacefile}
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.userId!=null">
|
|
|
+ AND c.user_id = #{reBeHosPageVO.userId}
|
|
|
+ </if>
|
|
|
+ AND a.qc_type_id != 0
|
|
|
+ AND IFNULL( a.diagnose, '' )!= ''
|
|
|
+ AND IFNULL( a.file_code, '' )!= ''
|
|
|
+ <if test="reBeHosPageVO.hospitalId != null and reBeHosPageVO.hospitalId != ''">
|
|
|
+ AND a.hospital_id = #{reBeHosPageVO.hospitalId}
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.isPlacefile != null and reBeHosPageVO.isPlacefile == 0">
|
|
|
+ <if test="reBeHosPageVO.startDate != null ">
|
|
|
+ <![CDATA[ AND a.behospital_date >= #{reBeHosPageVO.startDate}]]>
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.endDate != null ">
|
|
|
+ <![CDATA[ AND a.behospital_date <= #{reBeHosPageVO.endDate}]]>
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.isPlacefile != null and reBeHosPageVO.isPlacefile == 1">
|
|
|
+ <if test="reBeHosPageVO.startDate != null ">
|
|
|
+ <![CDATA[ AND a.leave_hospital_date >= #{reBeHosPageVO.startDate}]]>
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.endDate != null">
|
|
|
+ <![CDATA[ AND a.leave_hospital_date <= #{reBeHosPageVO.endDate}]]>
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.fileCode != null and reBeHosPageVO.fileCode != ''">
|
|
|
+ AND a.file_code like concat('%', #{reBeHosPageVO.fileCode},'%')
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.name != null and reBeHosPageVO.name != ''">
|
|
|
+ AND a.name like concat('%', #{reBeHosPageVO.name},'%')
|
|
|
+ </if>
|
|
|
+ GROUP BY
|
|
|
+ a.file_code,
|
|
|
+ a.diagnose
|
|
|
+ HAVING
|
|
|
+ count(*)> 1
|
|
|
+ ) tt1,
|
|
|
+ med_behospital_info tt2
|
|
|
+ WHERE
|
|
|
+ tt2.is_deleted = 'N'
|
|
|
+ <if test="reBeHosPageVO.isPlacefile != null and reBeHosPageVO.isPlacefile != ''">
|
|
|
+ and tt2.is_placefile = #{reBeHosPageVO.isPlacefile}
|
|
|
+ </if>
|
|
|
+ AND tt2.qc_type_id != 0
|
|
|
+ AND tt1.file_code = tt2.file_code
|
|
|
+ AND tt1.diagnose = tt2.diagnose
|
|
|
+ <if test="reBeHosPageVO.hospitalId != null and reBeHosPageVO.hospitalId != ''">
|
|
|
+ AND tt2.hospital_id = #{reBeHosPageVO.hospitalId}
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.isPlacefile != null and reBeHosPageVO.isPlacefile == 0">
|
|
|
+ <if test="reBeHosPageVO.startDate != null ">
|
|
|
+ <![CDATA[ AND tt2.behospital_date >= #{reBeHosPageVO.startDate}]]>
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.endDate != null ">
|
|
|
+ <![CDATA[ AND tt2.behospital_date <= #{reBeHosPageVO.endDate}]]>
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.isPlacefile != null and reBeHosPageVO.isPlacefile == 1">
|
|
|
+ <if test="reBeHosPageVO.startDate != null ">
|
|
|
+ <![CDATA[ AND tt2.leave_hospital_date >= #{reBeHosPageVO.startDate}]]>
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.endDate != null">
|
|
|
+ <![CDATA[ AND tt2.leave_hospital_date <= #{reBeHosPageVO.endDate}]]>
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.fileCode != null and reBeHosPageVO.fileCode != ''">
|
|
|
+ AND tt2.file_code like concat('%', #{reBeHosPageVO.fileCode},'%')
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.name != null and reBeHosPageVO.name != ''">
|
|
|
+ AND tt2.name like concat('%', #{reBeHosPageVO.name},'%')
|
|
|
+ </if>
|
|
|
+ ORDER BY
|
|
|
+ tt1.file_code,
|
|
|
+ tt1.diagnose,
|
|
|
+ tt2.behospital_date DESC
|
|
|
+ ) t1,
|
|
|
+ ( SELECT @rownum := 0 ) r
|
|
|
+ ) r1
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ ( @INDEX := @INDEX + 1 ) AS rownum,
|
|
|
+ t1.file_code,
|
|
|
+ t1.diagnose,
|
|
|
+ t1.NAME,
|
|
|
+ t1.sex,
|
|
|
+ t1.hospital_id,
|
|
|
+ t1.beh_dept_id,
|
|
|
+ t1.beh_dept_name,
|
|
|
+ t1.doctor_id,
|
|
|
+ t1.doctor_name,
|
|
|
+ t1.behospital_code,
|
|
|
+ t1.behospital_date,
|
|
|
+ t1.leave_hospital_date
|
|
|
+ FROM
|
|
|
+ (
|
|
|
+ SELECT
|
|
|
+ tt1.file_code,
|
|
|
+ tt1.diagnose,
|
|
|
+ tt1.doctor_id,
|
|
|
+ tt1.doctor_name,
|
|
|
+ tt2.NAME,
|
|
|
+ tt2.sex,
|
|
|
+ tt2.hospital_id,
|
|
|
+ tt2.beh_dept_id,
|
|
|
+ tt2.beh_dept_name,
|
|
|
+ tt2.behospital_code,
|
|
|
+ tt2.behospital_date,
|
|
|
+ tt2.leave_hospital_date
|
|
|
+ FROM
|
|
|
+ (
|
|
|
+ SELECT
|
|
|
+ a.file_code,
|
|
|
+ a.diagnose,
|
|
|
+ a.doctor_id ,
|
|
|
+ a.doctor_name
|
|
|
+ FROM
|
|
|
+ med_behospital_info a,
|
|
|
+ sys_user_dept c
|
|
|
+ WHERE
|
|
|
+ a.is_deleted = 'N'
|
|
|
+ AND c.is_deleted = 'N'
|
|
|
+ AND a.hospital_id = c.hospital_id
|
|
|
+ AND a.beh_dept_id = c.dept_id
|
|
|
+ <if test="reBeHosPageVO.deptName != null and reBeHosPageVO.deptName != ''">
|
|
|
+ and a.beh_dept_name = #{reBeHosPageVO.deptName}
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.userId!=null">
|
|
|
+ AND c.user_id = #{reBeHosPageVO.userId}
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.isPlacefile != null and reBeHosPageVO.isPlacefile != ''">
|
|
|
+ and a.is_placefile = #{reBeHosPageVO.isPlacefile}
|
|
|
+ </if>
|
|
|
+ AND a.qc_type_id != 0
|
|
|
+ AND IFNULL( a.diagnose, '' )!= ''
|
|
|
+ AND IFNULL( a.file_code, '' )!= ''
|
|
|
+ <if test="reBeHosPageVO.hospitalId != null and reBeHosPageVO.hospitalId != ''">
|
|
|
+ AND a.hospital_id = #{reBeHosPageVO.hospitalId}
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.isPlacefile != null and reBeHosPageVO.isPlacefile == 0">
|
|
|
+ <if test="reBeHosPageVO.startDate != null ">
|
|
|
+ <![CDATA[ AND a.behospital_date >= #{reBeHosPageVO.startDate}]]>
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.endDate != null ">
|
|
|
+ <![CDATA[ AND a.behospital_date <= #{reBeHosPageVO.endDate}]]>
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.isPlacefile != null and reBeHosPageVO.isPlacefile == 1">
|
|
|
+ <if test="reBeHosPageVO.startDate != null ">
|
|
|
+ <![CDATA[ AND a.leave_hospital_date >= #{reBeHosPageVO.startDate}]]>
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.endDate != null">
|
|
|
+ <![CDATA[ AND a.leave_hospital_date <= #{reBeHosPageVO.endDate}]]>
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.fileCode != null and reBeHosPageVO.fileCode != ''">
|
|
|
+ AND a.file_code like concat('%', #{reBeHosPageVO.fileCode},'%')
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.name != null and reBeHosPageVO.name != ''">
|
|
|
+ AND a.name like concat('%', #{reBeHosPageVO.name},'%')
|
|
|
+ </if>
|
|
|
+ GROUP BY
|
|
|
+ a.file_code,
|
|
|
+ a.diagnose
|
|
|
+ HAVING
|
|
|
+ count(*)> 1
|
|
|
+ ) tt1,
|
|
|
+ med_behospital_info tt2
|
|
|
+ WHERE
|
|
|
+ tt2.is_deleted = 'N'
|
|
|
+ <if test="reBeHosPageVO.isPlacefile != null and reBeHosPageVO.isPlacefile != ''">
|
|
|
+ and tt2.is_placefile = #{reBeHosPageVO.isPlacefile}
|
|
|
+ </if>
|
|
|
+ AND tt2.qc_type_id != 0
|
|
|
+ AND tt1.file_code = tt2.file_code
|
|
|
+ AND tt1.diagnose = tt2.diagnose
|
|
|
+ <if test="reBeHosPageVO.hospitalId != null and reBeHosPageVO.hospitalId != ''">
|
|
|
+ AND tt2.hospital_id = #{reBeHosPageVO.hospitalId}
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.isPlacefile != null and reBeHosPageVO.isPlacefile == 0">
|
|
|
+ <if test="reBeHosPageVO.startDate != null ">
|
|
|
+ <![CDATA[ AND tt2.behospital_date >= #{reBeHosPageVO.startDate}]]>
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.endDate != null ">
|
|
|
+ <![CDATA[ AND tt2.behospital_date <= #{reBeHosPageVO.endDate}]]>
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.isPlacefile != null and reBeHosPageVO.isPlacefile == 1">
|
|
|
+ <if test="reBeHosPageVO.startDate != null ">
|
|
|
+ <![CDATA[ AND tt2.leave_hospital_date >= #{reBeHosPageVO.startDate}]]>
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.endDate != null">
|
|
|
+ <![CDATA[ AND tt2.leave_hospital_date <= #{reBeHosPageVO.endDate}]]>
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.fileCode != null and reBeHosPageVO.fileCode != ''">
|
|
|
+ AND tt2.file_code like concat('%', #{reBeHosPageVO.fileCode},'%')
|
|
|
+ </if>
|
|
|
+ <if test="reBeHosPageVO.name != null and reBeHosPageVO.name != ''">
|
|
|
+ AND tt2.name like concat('%', #{reBeHosPageVO.name},'%')
|
|
|
+ </if>
|
|
|
+ ORDER BY
|
|
|
+ tt1.file_code,
|
|
|
+ tt1.diagnose,
|
|
|
+ tt2.behospital_date DESC
|
|
|
+ ) t1,(
|
|
|
+ SELECT
|
|
|
+ @INDEX := 0
|
|
|
+ ) r
|
|
|
+ ) r2 ON r1.file_code = r2.file_code
|
|
|
+ AND r1.rownum = r2.rownum - 1
|
|
|
+ ) be
|
|
|
+ WHERE
|
|
|
+ be.diffDays IS NOT NULL
|
|
|
+ AND be.diffDays BETWEEN 0
|
|
|
+ AND 31
|
|
|
+ ) t
|
|
|
+ LEFT JOIN med_qcresult_info mqi ON mqi.is_deleted = 'N'
|
|
|
+ AND t.hospitalId = mqi.hospital_id
|
|
|
+ AND t.behospitalCode = mqi.behospital_code
|
|
|
+ LEFT JOIN med_qcresult_info mqi_last ON mqi_last.is_deleted = 'N'
|
|
|
+ AND t.hospitalId = mqi_last.hospital_id
|
|
|
+ AND t.lastBehospitalCode = mqi_last.behospital_code
|
|
|
+ LEFT JOIN med_home_page mhp ON mhp.is_deleted = 'N'
|
|
|
+ AND t.hospitalId = mhp.hospital_id
|
|
|
+ AND t.behospitalCode = mhp.behospital_code
|
|
|
+ LEFT JOIN med_home_page mhp_last ON mhp_last.is_deleted = 'N'
|
|
|
+ AND t.hospitalId = mhp_last.hospital_id
|
|
|
+ AND t.lastBehospitalCode = mhp_last.behospital_code
|
|
|
+ </select>
|
|
|
+
|
|
|
<!-- 单条条目缺陷统计-->
|
|
|
<select id="casesEntryStatisticsById" parameterType="com.diagbot.vo.FilterVO" resultType="com.diagbot.dto.NumDTO">
|
|
|
SELECT
|