|
|
@ -596,7 +596,7 @@ |
|
|
|
-- 地区 |
|
|
|
AND `area`.rec_status = 0 |
|
|
|
AND `area`.question_code = 'CITY-COUNTY' |
|
|
|
AND SUBSTRING_INDEX(area.answer,',',1) = 140100 |
|
|
|
AND SUBSTRING_INDEX(area.answer,',',1) = #{param.areaId} |
|
|
|
-- 医院名 |
|
|
|
AND hospital.rec_status = 0 |
|
|
|
AND hospital.question_code = 'HOS-NAME' |
|
|
@ -634,7 +634,7 @@ |
|
|
|
-- 地区 |
|
|
|
AND `area`.rec_status = 0 |
|
|
|
AND `area`.question_code = 'CITY-COUNTY' |
|
|
|
AND SUBSTRING_INDEX(area.answer,',',1) = 140100 |
|
|
|
AND SUBSTRING_INDEX(area.answer,',',1) = #{param.areaId} |
|
|
|
-- 医院名 |
|
|
|
AND hospital.rec_status = 0 |
|
|
|
AND hospital.question_code = 'HOS-NAME' |
|
|
@ -672,7 +672,7 @@ |
|
|
|
-- 地区 |
|
|
|
AND `area`.rec_status = 0 |
|
|
|
AND `area`.question_code = 'CITY-COUNTY' |
|
|
|
AND SUBSTRING_INDEX(area.answer,',',1) = 140100 |
|
|
|
AND SUBSTRING_INDEX(area.answer,',',1) = #{param.areaId} |
|
|
|
-- 医院名 |
|
|
|
AND hospital.rec_status = 0 |
|
|
|
AND hospital.question_code = 'HOS-NAME' |
|
|
@ -1002,4 +1002,326 @@ |
|
|
|
and answer1.detailId = answer2.detailId |
|
|
|
</select> |
|
|
|
|
|
|
|
<select id="xgzlTotal" resultType="com.ccsens.carbasics.bean.vo.StatisticsVo$XgzlTotal"> |
|
|
|
SELECT |
|
|
|
answer1.qjxgnzlzs, |
|
|
|
answer2.sjxgnzlzrs AS fqjxgnzlzs, |
|
|
|
(answer1.qjxgnzlzs+answer2.sjxgnzlzrs) AS xgnzlzs, |
|
|
|
round(answer2.sjxgnzlzrs*100/answer3.rshfhxgnzlzzzrs,2) AS qjxgnzll, |
|
|
|
round(answer2.sjxgnzlzrs*100/answer4.fhxgnzlzzzrs,2) AS fqjxgnzll, |
|
|
|
round((answer1.qjxgnzlzs+answer2.sjxgnzlzrs)*100/(answer3.rshfhxgnzlzzzrs+answer4.fhxgnzlzzzrs),2) AS zxgnzll |
|
|
|
FROM |
|
|
|
( |
|
|
|
SELECT |
|
|
|
SUM(actual.answer) AS qjxgnzlzs |
|
|
|
FROM |
|
|
|
t_qcp_questionnaire_record AS actual |
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id |
|
|
|
WHERE |
|
|
|
actual.rec_status = 0 |
|
|
|
AND qd.rec_status = 0 |
|
|
|
AND qd.submit_status = 1 |
|
|
|
AND actual.question_code = 'XGZL-sICH-Nnt' |
|
|
|
AND yes.rec_status = 0 |
|
|
|
AND yes.question_code = 'XGZL' |
|
|
|
AND yes.answer = '是' |
|
|
|
) AS answer1, |
|
|
|
( |
|
|
|
SELECT |
|
|
|
SUM(actual.answer) AS sjxgnzlzrs |
|
|
|
FROM |
|
|
|
t_qcp_questionnaire_record AS actual |
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id |
|
|
|
WHERE |
|
|
|
actual.rec_status = 0 |
|
|
|
AND qd.rec_status = 0 |
|
|
|
AND qd.submit_status = 1 |
|
|
|
AND actual.question_code = 'XGZL-actual-Nnt' |
|
|
|
AND yes.rec_status = 0 |
|
|
|
AND yes.question_code = 'XGZL' |
|
|
|
AND yes.answer = '是' |
|
|
|
) AS answer2, |
|
|
|
( |
|
|
|
SELECT |
|
|
|
SUM(actual.answer) AS rshfhxgnzlzzzrs |
|
|
|
FROM |
|
|
|
t_qcp_questionnaire_record AS actual |
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id |
|
|
|
WHERE |
|
|
|
actual.rec_status = 0 |
|
|
|
AND qd.rec_status = 0 |
|
|
|
AND qd.submit_status = 1 |
|
|
|
AND actual.question_code = 'XGZL-RSH-Nnt' |
|
|
|
AND yes.rec_status = 0 |
|
|
|
AND yes.question_code = 'XGZL' |
|
|
|
AND yes.answer = '是' |
|
|
|
) AS answer3, |
|
|
|
( |
|
|
|
SELECT |
|
|
|
SUM(actual.answer) AS fhxgnzlzzzrs |
|
|
|
FROM |
|
|
|
t_qcp_questionnaire_record AS actual |
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id |
|
|
|
WHERE |
|
|
|
actual.rec_status = 0 |
|
|
|
AND qd.rec_status = 0 |
|
|
|
AND qd.submit_status = 1 |
|
|
|
AND actual.question_code = 'XGZL-FIT-Nnt' |
|
|
|
AND yes.rec_status = 0 |
|
|
|
AND yes.question_code = 'XGZL' |
|
|
|
AND yes.answer = '是' |
|
|
|
) AS answer4 |
|
|
|
</select> |
|
|
|
|
|
|
|
<select id="xgzlDataForCity" resultType="com.ccsens.carbasics.bean.vo.StatisticsVo$XgzlData"> |
|
|
|
SELECT |
|
|
|
a.id AS areaId, |
|
|
|
a.area_name AS name, |
|
|
|
answer1.qjxgnzlzs, |
|
|
|
answer2.fqjxgnzlzs, |
|
|
|
IFNULL(round((answer1.qjxgnzlzs+answer2.fqjxgnzlzs)*100/(answer3.rshfhxgnzlzzzrs+answer4.fhxgnzlzzzrs),2),0.00) AS zxgnzll |
|
|
|
FROM |
|
|
|
( |
|
|
|
SELECT |
|
|
|
SUBSTRING_INDEX(area.answer,',',1) AS area, |
|
|
|
SUM(actual.answer) AS qjxgnzlzs |
|
|
|
FROM |
|
|
|
t_qcp_questionnaire_record AS actual |
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS level ON qd.id = level.questionnaire_detail_id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS area ON qd.id = area.questionnaire_detail_id |
|
|
|
WHERE |
|
|
|
actual.rec_status = 0 |
|
|
|
AND qd.rec_status = 0 |
|
|
|
AND qd.submit_status = 1 |
|
|
|
AND actual.question_code = 'XGZL-sICH-Nnt' |
|
|
|
AND yes.rec_status = 0 |
|
|
|
AND yes.question_code = 'XGZL' |
|
|
|
AND yes.answer = '是' |
|
|
|
<if test="param.queryLevel == 0"> |
|
|
|
-- 等级 |
|
|
|
AND `level`.rec_status = 0 |
|
|
|
AND `level`.question_code = 'HOS-LEVEL' |
|
|
|
AND `level`.answer = '三级' |
|
|
|
</if> |
|
|
|
<if test="param.queryLevel == 1"> |
|
|
|
-- 等级 |
|
|
|
AND `level`.rec_status = 0 |
|
|
|
AND `level`.question_code = 'HOS-LEVEL' |
|
|
|
AND `level`.answer = '二级' |
|
|
|
</if> |
|
|
|
AND area.rec_status = 0 |
|
|
|
AND area.question_code = 'CITY-COUNTY' |
|
|
|
GROUP BY SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
) AS answer1, |
|
|
|
( |
|
|
|
SELECT |
|
|
|
SUBSTRING_INDEX(area.answer,',',1) AS area, |
|
|
|
SUM(actual.answer) AS fqjxgnzlzs |
|
|
|
FROM |
|
|
|
t_qcp_questionnaire_record AS actual |
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS level ON qd.id = level.questionnaire_detail_id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS area ON qd.id = area.questionnaire_detail_id |
|
|
|
WHERE |
|
|
|
actual.rec_status = 0 |
|
|
|
AND qd.rec_status = 0 |
|
|
|
AND qd.submit_status = 1 |
|
|
|
AND actual.question_code = 'XGZL-actual-Nnt' |
|
|
|
AND yes.rec_status = 0 |
|
|
|
AND yes.question_code = 'XGZL' |
|
|
|
AND yes.answer = '是' |
|
|
|
<if test="param.queryLevel == 0"> |
|
|
|
-- 等级 |
|
|
|
AND `level`.rec_status = 0 |
|
|
|
AND `level`.question_code = 'HOS-LEVEL' |
|
|
|
AND `level`.answer = '三级' |
|
|
|
</if> |
|
|
|
<if test="param.queryLevel == 1"> |
|
|
|
-- 等级 |
|
|
|
AND `level`.rec_status = 0 |
|
|
|
AND `level`.question_code = 'HOS-LEVEL' |
|
|
|
AND `level`.answer = '二级' |
|
|
|
</if> |
|
|
|
AND area.rec_status = 0 |
|
|
|
AND area.question_code = 'CITY-COUNTY' |
|
|
|
GROUP BY SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
) AS answer2, |
|
|
|
( |
|
|
|
SELECT |
|
|
|
SUBSTRING_INDEX(area.answer,',',1) AS area, |
|
|
|
SUM(actual.answer) AS rshfhxgnzlzzzrs |
|
|
|
FROM |
|
|
|
t_qcp_questionnaire_record AS actual |
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS level ON qd.id = level.questionnaire_detail_id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS area ON qd.id = area.questionnaire_detail_id |
|
|
|
WHERE |
|
|
|
actual.rec_status = 0 |
|
|
|
AND qd.rec_status = 0 |
|
|
|
AND qd.submit_status = 1 |
|
|
|
AND actual.question_code = 'XGZL-RSH-Nnt' |
|
|
|
AND yes.rec_status = 0 |
|
|
|
AND yes.question_code = 'XGZL' |
|
|
|
AND yes.answer = '是' |
|
|
|
<if test="param.queryLevel == 0"> |
|
|
|
-- 等级 |
|
|
|
AND `level`.rec_status = 0 |
|
|
|
AND `level`.question_code = 'HOS-LEVEL' |
|
|
|
AND `level`.answer = '三级' |
|
|
|
</if> |
|
|
|
<if test="param.queryLevel == 1"> |
|
|
|
-- 等级 |
|
|
|
AND `level`.rec_status = 0 |
|
|
|
AND `level`.question_code = 'HOS-LEVEL' |
|
|
|
AND `level`.answer = '二级' |
|
|
|
</if> |
|
|
|
AND area.rec_status = 0 |
|
|
|
AND area.question_code = 'CITY-COUNTY' |
|
|
|
GROUP BY SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
) AS answer3, |
|
|
|
( |
|
|
|
SELECT |
|
|
|
SUBSTRING_INDEX(area.answer,',',1) AS area, |
|
|
|
SUM(actual.answer) AS fhxgnzlzzzrs |
|
|
|
FROM |
|
|
|
t_qcp_questionnaire_record AS actual |
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS qd ON actual.questionnaire_detail_id = qd.id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS level ON qd.id = level.questionnaire_detail_id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS area ON qd.id = area.questionnaire_detail_id |
|
|
|
WHERE |
|
|
|
actual.rec_status = 0 |
|
|
|
AND qd.rec_status = 0 |
|
|
|
AND qd.submit_status = 1 |
|
|
|
AND actual.question_code = 'XGZL-FIT-Nnt' |
|
|
|
AND yes.rec_status = 0 |
|
|
|
AND yes.question_code = 'XGZL' |
|
|
|
AND yes.answer = '是' |
|
|
|
<if test="param.queryLevel == 0"> |
|
|
|
-- 等级 |
|
|
|
AND `level`.rec_status = 0 |
|
|
|
AND `level`.question_code = 'HOS-LEVEL' |
|
|
|
AND `level`.answer = '三级' |
|
|
|
</if> |
|
|
|
<if test="param.queryLevel == 1"> |
|
|
|
-- 等级 |
|
|
|
AND `level`.rec_status = 0 |
|
|
|
AND `level`.question_code = 'HOS-LEVEL' |
|
|
|
AND `level`.answer = '二级' |
|
|
|
</if> |
|
|
|
AND area.rec_status = 0 |
|
|
|
AND area.question_code = 'CITY-COUNTY' |
|
|
|
GROUP BY SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
) AS answer4, |
|
|
|
t_area AS a |
|
|
|
WHERE a.id = answer1.area |
|
|
|
AND answer1.area = answer2.area |
|
|
|
AND answer2.area = answer3.area |
|
|
|
AND answer3.area = answer4.area |
|
|
|
ORDER BY (answer1.qjxgnzlzs+answer2.fqjxgnzlzs) DESC,zxgnzll DESC |
|
|
|
</select> |
|
|
|
|
|
|
|
<select id="xgzlDataForHospital" resultType="com.ccsens.carbasics.bean.vo.StatisticsVo$XgzlData"> |
|
|
|
SELECT |
|
|
|
hospital.answer AS cityName, |
|
|
|
answer1.answer AS qjxgnzlzs, |
|
|
|
answer2.answer AS fqjxgnzlzs, |
|
|
|
IFNULL(round((answer1.answer+answer2.answer)*100/(answer3.answer+answer4.answer),2),0.00) AS zxgnzll |
|
|
|
FROM |
|
|
|
t_qcp_questionnaire_record AS answer1 |
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS qd ON answer1.questionnaire_detail_id = qd.id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS level ON qd.id = level.questionnaire_detail_id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS area ON qd.id = area.questionnaire_detail_id |
|
|
|
LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS hospital ON qd.id = hospital.questionnaire_detail_id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS answer2 ON qd.id = answer2.questionnaire_detail_id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS answer3 ON qd.id = answer3.questionnaire_detail_id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS answer4 ON qd.id = answer4.questionnaire_detail_id |
|
|
|
WHERE |
|
|
|
answer1.rec_status = 0 |
|
|
|
AND qd.rec_status = 0 |
|
|
|
AND qd.submit_status = 1 |
|
|
|
AND answer1.question_code = 'XGZL-sICH-Nnt' |
|
|
|
AND answer2.rec_status = 0 |
|
|
|
AND answer2.question_code = 'XGZL-actual-Nnt' |
|
|
|
AND answer3.rec_status = 0 |
|
|
|
AND answer3.question_code = 'XGZL-RSH-Nnt' |
|
|
|
AND answer4.rec_status = 0 |
|
|
|
AND answer4.question_code = 'XGZL-FIT-Nnt' |
|
|
|
AND yes.rec_status = 0 |
|
|
|
AND yes.question_code = 'XGZL' |
|
|
|
AND yes.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 hospital.rec_status = 0 |
|
|
|
AND hospital.question_code = 'HOS-NAME' |
|
|
|
AND area.rec_status = 0 |
|
|
|
AND area.question_code = 'CITY-COUNTY' |
|
|
|
AND SUBSTRING_INDEX(area.answer,',',1) = #{param.areaId} |
|
|
|
ORDER BY (answer1.answer+answer2.answer) DESC,zxgnzll DESC |
|
|
|
</select> |
|
|
|
|
|
|
|
<select id="xgzlSynopsis" resultType="com.ccsens.carbasics.bean.vo.StatisticsVo$XgzlSynopsis"> |
|
|
|
SELECT |
|
|
|
<if test="param.queryType == 1"> |
|
|
|
a.area_name AS `cityName`, |
|
|
|
</if> |
|
|
|
LEFT(level.answer,1) AS level, |
|
|
|
round((SUM(answer1.answer)+SUM(answer2.answer))*100/(SUM(answer3.answer)+SUM(answer4.answer)),2) AS zxgnzll |
|
|
|
FROM |
|
|
|
t_qcp_questionnaire_record AS answer1 |
|
|
|
LEFT JOIN t_qcp_questionnaire_detail AS qd ON answer1.questionnaire_detail_id = qd.id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS answer2 ON qd.id = answer2.questionnaire_detail_id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS answer3 ON qd.id = answer3.questionnaire_detail_id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS answer4 ON qd.id = answer4.questionnaire_detail_id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS yes ON qd.id = yes.questionnaire_detail_id |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS level ON qd.id = level.questionnaire_detail_id |
|
|
|
<if test="param.queryType == 1"> |
|
|
|
LEFT JOIN t_qcp_questionnaire_record AS area ON qd.id = area.questionnaire_detail_id |
|
|
|
LEFT JOIN t_area AS a ON a.id = SUBSTRING_INDEX(area.answer,',',1) |
|
|
|
</if> |
|
|
|
WHERE |
|
|
|
answer1.rec_status = 0 |
|
|
|
AND qd.rec_status = 0 |
|
|
|
AND qd.submit_status = 1 |
|
|
|
AND answer1.question_code = 'XGZL-sICH-Nnt' |
|
|
|
AND answer2.rec_status = 0 |
|
|
|
AND answer2.question_code = 'XGZL-actual-Nnt' |
|
|
|
AND answer3.rec_status = 0 |
|
|
|
AND answer3.question_code = 'XGZL-RSH-Nnt' |
|
|
|
AND answer4.rec_status = 0 |
|
|
|
AND answer4.question_code = 'XGZL-FIT-Nnt' |
|
|
|
AND yes.rec_status = 0 |
|
|
|
AND yes.question_code = 'XGZL' |
|
|
|
AND yes.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> |
|
|
|
<if test="param.queryType == 1"> |
|
|
|
AND area.rec_status = 0 |
|
|
|
AND area.question_code = 'CITY-COUNTY' |
|
|
|
AND SUBSTRING_INDEX(area.answer,',',1) = #{param.areaId} |
|
|
|
</if> |
|
|
|
</select> |
|
|
|
|
|
|
|
</mapper> |