Browse Source

20211105医院排名接口增加筛选项

master
zy_Java 4 years ago
parent
commit
0a57c2a5e2
  1. 142
      src/main/resources/mapper_dao/OrganizationDao.xml

142
src/main/resources/mapper_dao/OrganizationDao.xml

@ -376,6 +376,22 @@
AND p.rec_status = 0
AND o.rec_status = 0
</select>
<select id="getQcpHospitalId" resultType="java.lang.Long">
SELECT
h.id
FROM
t_organization o,
t_organization_project p,
qcp.t_qcp_hospital h
WHERE
o.id = p.organization_id
AND p.project_id = h.project_id
AND o.id = #{id}
AND o.rec_status = 0
AND p.rec_status = 0
AND h.rec_status = 0
</select>
<select id="hospitalRankStatistical" resultType="com.ccsens.carbasics.bean.vo.OrganizationVo$HospitalRankItem">
SELECT
d.user_id as userId,
@ -413,47 +429,13 @@
(
<choose>
<when test="type == 0">
SELECT
a1.detail_id as detail_id,
convert((a1.answer / a2.answer)*100,decimal(15,0)) as count
FROM
(SELECT
questionnaire_detail_id as detail_id,
answer
FROM `t_qcp_questionnaire_record`
WHERE question_code = 'actual-Nnt' and rec_status = 0)a1,
(SELECT
questionnaire_detail_id as detail_id,
answer
FROM `t_qcp_questionnaire_record`
WHERE question_code = 'AIS-Nnt' and rec_status = 0)a2
WHERE
a1.detail_id = a2.detail_id
<include refid="nnt"></include>
</when>
<when test="type == 1">
SELECT
a1.detail_id as detail_id,
convert((a1.answer / (a1.answer + a2.answer + a3.answer))*100,decimal(15,0)) as count
FROM
(SELECT
questionnaire_detail_id as detail_id,
answer
FROM `t_qcp_questionnaire_record`
WHERE question_code = '45-Nnt' and rec_status = 0)a1,
(SELECT
questionnaire_detail_id as detail_id,
answer
FROM `t_qcp_questionnaire_record`
WHERE question_code = '60-Nnt' and rec_status = 0)a2,
(SELECT
questionnaire_detail_id as detail_id,
answer
FROM `t_qcp_questionnaire_record`
WHERE question_code = '61-Nnt' and rec_status = 0)a3
WHERE
a1.detail_id = a2.detail_id
and a2.detail_id = a3.detail_id
and a1.detail_id = a3.detail_id
<include refid="dnt45"></include>
</when>
<when test="type == 2">
<include refid="dnt60"></include>
</when>
</choose>
)t on h.detail_id = t.detail_id
@ -462,20 +444,76 @@
d.submit_status = 1
ORDER BY `value` DESC
</select>
<select id="getQcpHospitalId" resultType="java.lang.Long">
<sql id="nnt">
SELECT
h.id
a1.detail_id as detail_id,
convert((a1.answer / a2.answer)*100,decimal(15,0)) as count
FROM
t_organization o,
t_organization_project p,
qcp.t_qcp_hospital h
(
SELECT
questionnaire_detail_id as detail_id,
answer
FROM `t_qcp_questionnaire_record`
WHERE question_code = 'actual-Nnt' and rec_status = 0
)a1,
(
SELECT
questionnaire_detail_id as detail_id,
answer
FROM `t_qcp_questionnaire_record`
WHERE question_code = 'AIS-Nnt' and rec_status = 0
)a2
WHERE
o.id = p.organization_id
AND p.project_id = h.project_id
AND o.id = #{id}
AND o.rec_status = 0
AND p.rec_status = 0
AND h.rec_status = 0
</select>
a1.detail_id = a2.detail_id
</sql>
<sql id="dnt45">
SELECT
a1.detail_id as detail_id,
convert((a1.answer / (a1.answer + a2.answer + a3.answer))*100,decimal(15,0)) as count
FROM
(SELECT
questionnaire_detail_id as detail_id,
answer
FROM `t_qcp_questionnaire_record`
WHERE question_code = '45-Nnt' and rec_status = 0)a1,
(SELECT
questionnaire_detail_id as detail_id,
answer
FROM `t_qcp_questionnaire_record`
WHERE question_code = '60-Nnt' and rec_status = 0)a2,
(SELECT
questionnaire_detail_id as detail_id,
answer
FROM `t_qcp_questionnaire_record`
WHERE question_code = '61-Nnt' and rec_status = 0)a3
WHERE
a1.detail_id = a2.detail_id
and a2.detail_id = a3.detail_id
and a1.detail_id = a3.detail_id
</sql>
<sql id="dnt60">
SELECT
a1.detail_id as detail_id,
convert(((a1.answer + a2.answer) / (a1.answer + a2.answer + a3.answer))*100,decimal(15,0)) as count
FROM
(SELECT
questionnaire_detail_id as detail_id,
answer
FROM `t_qcp_questionnaire_record`
WHERE question_code = '45-Nnt' and rec_status = 0)a1,
(SELECT
questionnaire_detail_id as detail_id,
answer
FROM `t_qcp_questionnaire_record`
WHERE question_code = '60-Nnt' and rec_status = 0)a2,
(SELECT
questionnaire_detail_id as detail_id,
answer
FROM `t_qcp_questionnaire_record`
WHERE question_code = '61-Nnt' and rec_status = 0)a3
WHERE
a1.detail_id = a2.detail_id
and a2.detail_id = a3.detail_id
and a1.detail_id = a3.detail_id
</sql>
</mapper>

Loading…
Cancel
Save