|
@ -1324,4 +1324,373 @@ |
|
|
</if> |
|
|
</if> |
|
|
</select> |
|
|
</select> |
|
|
|
|
|
|
|
|
|
|
|
<select id="dptTotal" resultType="com.ccsens.carbasics.bean.vo.StatisticsVo$DptTotal"> |
|
|
|
|
|
SELECT |
|
|
|
|
|
SUM(dpt59.answer)+SUM(dpt89.answer) AS dpt89, |
|
|
|
|
|
SUM(dpt59.answer) AS dpt59, |
|
|
|
|
|
round((SUM(dpt59.answer)+SUM(dpt89.answer))*100/(SUM(dpt59.answer)+SUM(dpt89.answer)+SUM(dpt91.answer)),2) AS dpt89Ratio, |
|
|
|
|
|
round(SUM(dpt59.answer)*100/(SUM(dpt59.answer)+SUM(dpt89.answer)+SUM(dpt91.answer)),2) AS dpt59Ratio |
|
|
|
|
|
FROM |
|
|
|
|
|
t_qcp_questionnaire_record AS dpt59 |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS d ON dpt59.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS dpt89 ON dpt89.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS dpt91 ON dpt91.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id |
|
|
|
|
|
WHERE |
|
|
|
|
|
dpt59.rec_status = 0 |
|
|
|
|
|
AND dpt59.question_code = 'XGZL-DPT-60' |
|
|
|
|
|
AND d.rec_status = 0 |
|
|
|
|
|
AND d.submit_status = 1 |
|
|
|
|
|
AND dpt89.rec_status = 0 |
|
|
|
|
|
AND dpt89.question_code = 'XGZL-DPT-89' |
|
|
|
|
|
AND dpt91.rec_status = 0 |
|
|
|
|
|
AND dpt91.question_code = 'XGZL-DPT-91' |
|
|
|
|
|
AND xgzl.rec_status = 0 AND xgzl.question_code = 'XGZL' AND xgzl.answer = '是' |
|
|
|
|
|
</select> |
|
|
|
|
|
|
|
|
|
|
|
<select id="dptSynopsis" resultType="com.ccsens.carbasics.bean.vo.StatisticsVo$DptSynopsis"> |
|
|
|
|
|
SELECT |
|
|
|
|
|
<if test="param.queryType == 1"> |
|
|
|
|
|
a.area_name AS cityName, |
|
|
|
|
|
</if> |
|
|
|
|
|
LEFT(level.answer,1) AS level, |
|
|
|
|
|
round((SUM(dpt59.answer)+SUM(dpt89.answer))*100/(SUM(dpt59.answer)+SUM(dpt89.answer)+SUM(dpt91.answer)),2) AS dpt89Ratio, |
|
|
|
|
|
round(SUM(dpt59.answer)*100/(SUM(dpt59.answer)+SUM(dpt89.answer)+SUM(dpt91.answer)),2) AS dpt59Ratio |
|
|
|
|
|
FROM |
|
|
|
|
|
t_qcp_questionnaire_record AS dpt59 |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS d ON dpt59.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS dpt89 ON dpt89.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS dpt91 ON dpt91.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
|
|
WHERE dpt59.rec_status = 0 AND dpt59.question_code = 'XGZL-DPT-60' |
|
|
|
|
|
AND d.rec_status = 0 AND d.submit_status = 1 |
|
|
|
|
|
AND dpt89.rec_status = 0 |
|
|
|
|
|
AND dpt89.question_code = 'XGZL-DPT-89' |
|
|
|
|
|
AND dpt91.rec_status = 0 |
|
|
|
|
|
AND dpt91.question_code = 'XGZL-DPT-91' |
|
|
|
|
|
AND `level`.rec_status = 0 AND `level`.question_code = 'HOS-LEVEL' |
|
|
|
|
|
<if test="param.queryLevel == 0"> |
|
|
|
|
|
AND `level`.answer = '三级' |
|
|
|
|
|
</if> |
|
|
|
|
|
<if test="param.queryLevel == 1"> |
|
|
|
|
|
AND `level`.answer = '二级' |
|
|
|
|
|
</if> |
|
|
|
|
|
AND xgzl.rec_status = 0 AND xgzl.question_code = 'XGZL' AND xgzl.answer = '是' |
|
|
|
|
|
AND area.rec_status = 0 AND area.question_code = 'CITY-COUNTY' |
|
|
|
|
|
<if test="param.queryType == 1"> |
|
|
|
|
|
AND SUBSTRING_INDEX(area.answer,',',1) = #{param.areaId} |
|
|
|
|
|
</if> |
|
|
|
|
|
</select> |
|
|
|
|
|
<select id="queryDptForCity" resultType="com.ccsens.carbasics.bean.vo.StatisticsVo$DptData"> |
|
|
|
|
|
SELECT |
|
|
|
|
|
a1.id AS areaId, |
|
|
|
|
|
a1.area_name AS `name`, |
|
|
|
|
|
a1.dpt59RatioCity, |
|
|
|
|
|
a1.dpt89RatioCity, |
|
|
|
|
|
IFNULL(a2.dpt89Ratio,0.00) AS dpt89Ratio, |
|
|
|
|
|
IFNULL(a2.dpt59Ratio,0.00) AS dpt59Ratio |
|
|
|
|
|
FROM |
|
|
|
|
|
(SELECT |
|
|
|
|
|
a.id, |
|
|
|
|
|
a.area_name, |
|
|
|
|
|
IFNULL(round((SUM(dpt59.answer)+SUM(dpt89.answer))*100/(SUM(dpt59.answer)+SUM(dpt89.answer)+SUM(dpt91.answer)),2),0.00) AS dpt89RatioCity, |
|
|
|
|
|
IFNULL(round(SUM(dpt59.answer)*100/(SUM(dpt59.answer)+SUM(dpt89.answer)+SUM(dpt91.answer)),2),0.00) AS dpt59RatioCity |
|
|
|
|
|
FROM |
|
|
|
|
|
t_qcp_questionnaire_record AS dpt59 |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS d ON dpt59.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS dpt89 ON dpt89.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS dpt91 ON dpt91.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
|
|
WHERE |
|
|
|
|
|
dpt59.rec_status = 0 |
|
|
|
|
|
AND dpt59.question_code = 'XGZL-DPT-60' |
|
|
|
|
|
AND d.rec_status = 0 |
|
|
|
|
|
AND d.submit_status = 1 |
|
|
|
|
|
AND dpt89.rec_status = 0 |
|
|
|
|
|
AND dpt89.question_code = 'XGZL-DPT-89' |
|
|
|
|
|
AND dpt91.rec_status = 0 |
|
|
|
|
|
AND dpt91.question_code = 'XGZL-DPT-91' |
|
|
|
|
|
AND xgzl.rec_status = 0 |
|
|
|
|
|
AND xgzl.question_code = 'XGZL' |
|
|
|
|
|
AND xgzl.answer = '是' |
|
|
|
|
|
AND area.rec_status = 0 AND area.question_code = 'CITY-COUNTY' |
|
|
|
|
|
GROUP BY SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
|
|
) AS a1 |
|
|
|
|
|
LEFT JOIN |
|
|
|
|
|
( |
|
|
|
|
|
SELECT |
|
|
|
|
|
a.id, |
|
|
|
|
|
a.area_name, |
|
|
|
|
|
LEFT(level.answer,1) AS level, |
|
|
|
|
|
IFNULL(round((SUM(dpt59.answer)+SUM(dpt89.answer))*100/(SUM(dpt59.answer)+SUM(dpt89.answer)+SUM(dpt91.answer)),2),0.00) AS dpt89Ratio, |
|
|
|
|
|
IFNULL(round(SUM(dpt59.answer)*100/(SUM(dpt59.answer)+SUM(dpt89.answer)+SUM(dpt91.answer)),2),0.00) AS dpt59Ratio |
|
|
|
|
|
FROM |
|
|
|
|
|
t_qcp_questionnaire_record AS dpt59 |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS d ON dpt59.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS dpt89 ON dpt89.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS dpt91 ON dpt91.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
|
|
WHERE |
|
|
|
|
|
dpt59.rec_status = 0 |
|
|
|
|
|
AND dpt59.question_code = 'XGZL-DPT-60' |
|
|
|
|
|
AND d.rec_status = 0 |
|
|
|
|
|
AND d.submit_status = 1 |
|
|
|
|
|
AND dpt89.rec_status = 0 |
|
|
|
|
|
AND dpt89.question_code = 'XGZL-DPT-89' |
|
|
|
|
|
AND dpt91.rec_status = 0 |
|
|
|
|
|
AND dpt91.question_code = 'XGZL-DPT-91' |
|
|
|
|
|
AND xgzl.rec_status = 0 |
|
|
|
|
|
AND xgzl.question_code = 'XGZL' |
|
|
|
|
|
AND xgzl.answer = '是' |
|
|
|
|
|
AND `level`.rec_status = 0 AND `level`.question_code = 'HOS-LEVEL' |
|
|
|
|
|
<if test="param.queryLevel == 0"> |
|
|
|
|
|
AND `level`.answer = '三级' |
|
|
|
|
|
</if> |
|
|
|
|
|
<if test="param.queryLevel == 1"> |
|
|
|
|
|
AND `level`.answer = '二级' |
|
|
|
|
|
</if> |
|
|
|
|
|
AND area.rec_status = 0 AND area.question_code = 'CITY-COUNTY' |
|
|
|
|
|
GROUP BY SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
|
|
) AS a2 ON a1.id = a2.id |
|
|
|
|
|
ORDER BY a2.dpt89Ratio DESC |
|
|
|
|
|
</select> |
|
|
|
|
|
|
|
|
|
|
|
<select id="queryDptForHospital" resultType="com.ccsens.carbasics.bean.vo.StatisticsVo$DptData"> |
|
|
|
|
|
SELECT |
|
|
|
|
|
hospital.answer AS `name`, |
|
|
|
|
|
LEFT(level.answer,1) AS level, |
|
|
|
|
|
IFNULL(round((dpt59.answer+dpt89.answer)*100/(dpt59.answer+dpt89.answer+dpt91.answer),2),0.00) AS dpt89Ratio, |
|
|
|
|
|
IFNULL(round(dpt59.answer*100/(dpt59.answer+dpt89.answer+dpt91.answer),2),0.00) AS dpt59Ratio, |
|
|
|
|
|
dpt59.answer AS dpt59Number, |
|
|
|
|
|
dpt89.answer AS dpt89Number, |
|
|
|
|
|
dpt91.answer AS dpt91Number |
|
|
|
|
|
FROM |
|
|
|
|
|
t_qcp_questionnaire_record AS dpt59 |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS d ON dpt59.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS dpt89 ON dpt89.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS dpt91 ON dpt91.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS hospital ON hospital.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
|
|
WHERE |
|
|
|
|
|
dpt59.rec_status = 0 |
|
|
|
|
|
AND dpt59.question_code = 'XGZL-DPT-60' |
|
|
|
|
|
AND d.rec_status = 0 |
|
|
|
|
|
AND d.submit_status = 1 |
|
|
|
|
|
AND dpt89.rec_status = 0 |
|
|
|
|
|
AND dpt89.question_code = 'XGZL-DPT-89' |
|
|
|
|
|
AND dpt91.rec_status = 0 |
|
|
|
|
|
AND dpt91.question_code = 'XGZL-DPT-91' |
|
|
|
|
|
AND xgzl.rec_status = 0 |
|
|
|
|
|
AND xgzl.question_code = 'XGZL' |
|
|
|
|
|
AND xgzl.answer = '是' |
|
|
|
|
|
AND hospital.rec_status = 0 |
|
|
|
|
|
AND hospital.question_code = 'HOS-NAME' |
|
|
|
|
|
AND `level`.rec_status = 0 AND `level`.question_code = 'HOS-LEVEL' |
|
|
|
|
|
<if test="param.queryLevel == 0"> |
|
|
|
|
|
AND `level`.answer = '三级' |
|
|
|
|
|
</if> |
|
|
|
|
|
<if test="param.queryLevel == 1"> |
|
|
|
|
|
AND `level`.answer = '二级' |
|
|
|
|
|
</if> |
|
|
|
|
|
AND area.rec_status = 0 AND area.question_code = 'CITY-COUNTY' |
|
|
|
|
|
AND SUBSTRING_INDEX(area.answer,',',1) = #{param.areaId} |
|
|
|
|
|
ORDER BY (dpt59.answer+dpt89.answer+dpt91.answer) DESC |
|
|
|
|
|
</select> |
|
|
|
|
|
|
|
|
|
|
|
<select id="prtTotal" resultType="com.ccsens.carbasics.bean.vo.StatisticsVo$PrtTotal"> |
|
|
|
|
|
SELECT |
|
|
|
|
|
SUM(prt29.answer)+SUM(prt59.answer) AS prt59, |
|
|
|
|
|
SUM(prt29.answer) AS prt29, |
|
|
|
|
|
CONVERT((SUM(prt29.answer)+SUM(prt59.answer))*100/(SUM(prt29.answer)+SUM(prt59.answer)+SUM(prt61.answer)),DECIMAL(15,2)) AS prt59Ratio, |
|
|
|
|
|
CONVERT(SUM(prt29.answer)*100/(SUM(prt29.answer)+SUM(prt59.answer)+SUM(prt61.answer)),DECIMAL(15,2)) AS prt29Ratio |
|
|
|
|
|
FROM |
|
|
|
|
|
t_qcp_questionnaire_record AS prt29 |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS d ON prt29.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS prt59 ON prt59.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS prt61 ON prt61.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id |
|
|
|
|
|
WHERE |
|
|
|
|
|
prt29.rec_status = 0 |
|
|
|
|
|
AND prt29.question_code = 'XGZL-PRT-29' |
|
|
|
|
|
AND d.rec_status = 0 |
|
|
|
|
|
AND d.submit_status = 1 |
|
|
|
|
|
AND prt59.rec_status = 0 |
|
|
|
|
|
AND prt59.question_code = 'XGZL-PRT-59' |
|
|
|
|
|
AND prt61.rec_status = 0 |
|
|
|
|
|
AND prt61.question_code = 'XGZL-PRT-62' |
|
|
|
|
|
AND xgzl.rec_status = 0 AND xgzl.question_code = 'XGZL' AND xgzl.answer = '是' |
|
|
|
|
|
</select> |
|
|
|
|
|
|
|
|
|
|
|
<select id="prtSynopsis" resultType="com.ccsens.carbasics.bean.vo.StatisticsVo$PrtSynopsis"> |
|
|
|
|
|
SELECT |
|
|
|
|
|
<if test="param.queryType == 1"> |
|
|
|
|
|
a.area_name AS cityName, |
|
|
|
|
|
</if> |
|
|
|
|
|
LEFT(level.answer,1) AS level, |
|
|
|
|
|
IFNULL(TRUNCATE((SUM(prt29.answer)+SUM(prt59.answer))*100/(SUM(prt29.answer)+SUM(prt59.answer)+SUM(prt61.answer)),2),0.00) AS prt59Ratio, |
|
|
|
|
|
IFNULL(TRUNCATE(SUM(prt29.answer)*100/(SUM(prt29.answer)+SUM(prt59.answer)+SUM(prt61.answer)),2),0.00) AS prt29Ratio |
|
|
|
|
|
FROM |
|
|
|
|
|
t_qcp_questionnaire_record AS prt29 |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS d ON prt29.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS prt59 ON prt59.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS prt61 ON prt61.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
|
|
WHERE prt29.rec_status = 0 AND prt29.question_code = 'XGZL-PRT-29' |
|
|
|
|
|
AND d.rec_status = 0 AND d.submit_status = 1 |
|
|
|
|
|
AND prt59.rec_status = 0 |
|
|
|
|
|
AND prt59.question_code = 'XGZL-PRT-59' |
|
|
|
|
|
AND prt61.rec_status = 0 |
|
|
|
|
|
AND prt61.question_code = 'XGZL-PRT-62' |
|
|
|
|
|
AND `level`.rec_status = 0 AND `level`.question_code = 'HOS-LEVEL' |
|
|
|
|
|
<if test="param.queryLevel == 0"> |
|
|
|
|
|
AND `level`.answer = '三级' |
|
|
|
|
|
</if> |
|
|
|
|
|
<if test="param.queryLevel == 1"> |
|
|
|
|
|
AND `level`.answer = '二级' |
|
|
|
|
|
</if> |
|
|
|
|
|
AND xgzl.rec_status = 0 AND xgzl.question_code = 'XGZL' AND xgzl.answer = '是' |
|
|
|
|
|
AND area.rec_status = 0 AND area.question_code = 'CITY-COUNTY' |
|
|
|
|
|
<if test="param.queryType == 1"> |
|
|
|
|
|
AND SUBSTRING_INDEX(area.answer,',',1) = #{param.areaId} |
|
|
|
|
|
</if> |
|
|
|
|
|
</select> |
|
|
|
|
|
|
|
|
|
|
|
<select id="queryPrtForCity" resultType="com.ccsens.carbasics.bean.vo.StatisticsVo$PrtData"> |
|
|
|
|
|
SELECT |
|
|
|
|
|
a1.id AS areaId, |
|
|
|
|
|
a1.area_name AS `name`, |
|
|
|
|
|
a1.prt29RatioCity, |
|
|
|
|
|
a1.prt59RatioCity, |
|
|
|
|
|
IFNULL(a2.prt59Ratio,0.00) AS prt59Ratio, |
|
|
|
|
|
IFNULL(a2.prt29Ratio,0.00) AS prt29Ratio |
|
|
|
|
|
FROM |
|
|
|
|
|
(SELECT |
|
|
|
|
|
a.id, |
|
|
|
|
|
a.area_name, |
|
|
|
|
|
IFNULL(round((SUM(prt29.answer)+SUM(prt59.answer))*100/(SUM(prt29.answer)+SUM(prt59.answer)+SUM(prt61.answer)),2),0.00) AS prt59RatioCity, |
|
|
|
|
|
IFNULL(round(SUM(prt29.answer)*100/(SUM(prt29.answer)+SUM(prt59.answer)+SUM(prt61.answer)),2),0.00) AS prt29RatioCity |
|
|
|
|
|
FROM |
|
|
|
|
|
t_qcp_questionnaire_record AS prt29 |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS d ON prt29.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS prt59 ON prt59.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS prt61 ON prt61.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
|
|
WHERE |
|
|
|
|
|
prt29.rec_status = 0 |
|
|
|
|
|
AND prt29.question_code = 'XGZL-PRT-29' |
|
|
|
|
|
AND d.rec_status = 0 |
|
|
|
|
|
AND d.submit_status = 1 |
|
|
|
|
|
AND prt59.rec_status = 0 |
|
|
|
|
|
AND prt59.question_code = 'XGZL-PRT-59' |
|
|
|
|
|
AND prt61.rec_status = 0 |
|
|
|
|
|
AND prt61.question_code = 'XGZL-PRT-62' |
|
|
|
|
|
AND xgzl.rec_status = 0 |
|
|
|
|
|
AND xgzl.question_code = 'XGZL' |
|
|
|
|
|
AND xgzl.answer = '是' |
|
|
|
|
|
AND area.rec_status = 0 AND area.question_code = 'CITY-COUNTY' |
|
|
|
|
|
GROUP BY SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
|
|
) AS a1 |
|
|
|
|
|
LEFT JOIN |
|
|
|
|
|
( |
|
|
|
|
|
SELECT |
|
|
|
|
|
a.id, |
|
|
|
|
|
a.area_name, |
|
|
|
|
|
LEFT(level.answer,1) AS level, |
|
|
|
|
|
IFNULL(round((SUM(prt29.answer)+SUM(prt59.answer))*100/(SUM(prt29.answer)+SUM(prt59.answer)+SUM(prt61.answer)),2),0.00) AS prt59Ratio, |
|
|
|
|
|
IFNULL(round(SUM(prt29.answer)*100/(SUM(prt29.answer)+SUM(prt59.answer)+SUM(prt61.answer)),2),0.00) AS prt29Ratio |
|
|
|
|
|
FROM |
|
|
|
|
|
t_qcp_questionnaire_record AS prt29 |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS d ON prt29.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS prt59 ON prt59.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS prt61 ON prt61.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
|
|
WHERE |
|
|
|
|
|
prt29.rec_status = 0 |
|
|
|
|
|
AND prt29.question_code = 'XGZL-PRT-29' |
|
|
|
|
|
AND d.rec_status = 0 |
|
|
|
|
|
AND d.submit_status = 1 |
|
|
|
|
|
AND prt59.rec_status = 0 |
|
|
|
|
|
AND prt59.question_code = 'XGZL-PRT-59' |
|
|
|
|
|
AND prt61.rec_status = 0 |
|
|
|
|
|
AND prt61.question_code = 'XGZL-PRT-62' |
|
|
|
|
|
AND xgzl.rec_status = 0 |
|
|
|
|
|
AND xgzl.question_code = 'XGZL' |
|
|
|
|
|
AND xgzl.answer = '是' |
|
|
|
|
|
AND `level`.rec_status = 0 AND `level`.question_code = 'HOS-LEVEL' |
|
|
|
|
|
<if test="param.queryLevel == 0"> |
|
|
|
|
|
AND `level`.answer = '三级' |
|
|
|
|
|
</if> |
|
|
|
|
|
<if test="param.queryLevel == 1"> |
|
|
|
|
|
AND `level`.answer = '二级' |
|
|
|
|
|
</if> |
|
|
|
|
|
AND area.rec_status = 0 AND area.question_code = 'CITY-COUNTY' |
|
|
|
|
|
GROUP BY SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
|
|
) AS a2 ON a1.id = a2.id |
|
|
|
|
|
ORDER BY a2.prt59Ratio DESC |
|
|
|
|
|
</select> |
|
|
|
|
|
|
|
|
|
|
|
<select id="queryPrtForHospital" resultType="com.ccsens.carbasics.bean.vo.StatisticsVo$PrtData"> |
|
|
|
|
|
SELECT |
|
|
|
|
|
hospital.answer AS `name`, |
|
|
|
|
|
LEFT(level.answer,1) AS level, |
|
|
|
|
|
IFNULL(round((prt29.answer+prt59.answer)*100/(prt29.answer+prt59.answer+prt61.answer),2),0.00) AS prt59Ratio, |
|
|
|
|
|
IFNULL(round(prt29.answer*100/(prt29.answer+prt59.answer+prt61.answer),2),0.00) AS prt29Ratio, |
|
|
|
|
|
prt29.answer AS prt29Number, |
|
|
|
|
|
prt59.answer AS prt59Number, |
|
|
|
|
|
prt61.answer AS prt61Number |
|
|
|
|
|
FROM |
|
|
|
|
|
t_qcp_questionnaire_record AS prt29 |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS d ON prt29.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS prt59 ON prt59.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS prt61 ON prt61.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS xgzl ON xgzl.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS `level` ON `level`.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS hospital ON hospital.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS area ON area.questionnaire_detail_id = d.id |
|
|
|
|
|
LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
|
|
WHERE |
|
|
|
|
|
prt29.rec_status = 0 |
|
|
|
|
|
AND prt29.question_code = 'XGZL-PRT-29' |
|
|
|
|
|
AND d.rec_status = 0 |
|
|
|
|
|
AND d.submit_status = 1 |
|
|
|
|
|
AND prt59.rec_status = 0 |
|
|
|
|
|
AND prt59.question_code = 'XGZL-PRT-59' |
|
|
|
|
|
AND prt61.rec_status = 0 |
|
|
|
|
|
AND prt61.question_code = 'XGZL-PRT-62' |
|
|
|
|
|
AND xgzl.rec_status = 0 |
|
|
|
|
|
AND xgzl.question_code = 'XGZL' |
|
|
|
|
|
AND xgzl.answer = '是' |
|
|
|
|
|
AND hospital.rec_status = 0 |
|
|
|
|
|
AND hospital.question_code = 'HOS-NAME' |
|
|
|
|
|
AND `level`.rec_status = 0 AND `level`.question_code = 'HOS-LEVEL' |
|
|
|
|
|
<if test="param.queryLevel == 0"> |
|
|
|
|
|
AND `level`.answer = '三级' |
|
|
|
|
|
</if> |
|
|
|
|
|
<if test="param.queryLevel == 1"> |
|
|
|
|
|
AND `level`.answer = '二级' |
|
|
|
|
|
</if> |
|
|
|
|
|
AND area.rec_status = 0 AND area.question_code = 'CITY-COUNTY' |
|
|
|
|
|
AND SUBSTRING_INDEX(area.answer,',',1) = #{param.areaId} |
|
|
|
|
|
ORDER BY (prt29.answer+prt59.answer+prt61.answer) DESC |
|
|
|
|
|
</select> |
|
|
|
|
|
|
|
|
</mapper> |
|
|
</mapper> |