|
|
@ -47,7 +47,7 @@ |
|
|
|
</select> |
|
|
|
|
|
|
|
<!-- 查询项目评价信息 --> |
|
|
|
<select id="selectProjectEvaluate" resultType="com.epmet.dto.extract.result.ProjectEvaluateResultDTO"> |
|
|
|
<!--<select id="selectProjectEvaluate" resultType="com.epmet.dto.extract.result.ProjectEvaluateResultDTO"> |
|
|
|
SELECT |
|
|
|
ACTION_CODE, |
|
|
|
ORG_ID AS gridId, |
|
|
@ -60,6 +60,34 @@ |
|
|
|
AND CUSTOMER_ID = #{customerId} |
|
|
|
AND MONTH_ID = #{monthId} |
|
|
|
AND (ACTION_CODE = 'bad' OR ACTION_CODE = 'good' OR ACTION_CODE = 'perfect') |
|
|
|
</select>--> |
|
|
|
<select id="selectProjectEvaluate" resultType="com.epmet.dto.extract.result.ProjectEvaluateResultDTO"> |
|
|
|
SELECT |
|
|
|
IFNULL(en.actionCode,'good') AS actionCode, |
|
|
|
cl.projectId, |
|
|
|
cl.gridId |
|
|
|
FROM |
|
|
|
(SELECT |
|
|
|
ld.PROJECT_ID AS projectId, |
|
|
|
ld.ORG_ID AS gridId |
|
|
|
FROM fact_origin_project_log_daily ld |
|
|
|
WHERE ld.DEL_FLAG = 0 |
|
|
|
AND ld.CUSTOMER_ID = #{customerId} |
|
|
|
AND ld.ACTION_CODE IN('close') |
|
|
|
AND ld.ORG_TYPE = 'grid' |
|
|
|
AND ld.MONTH_ID = #{monthId} |
|
|
|
) cl |
|
|
|
LEFT JOIN |
|
|
|
(SELECT |
|
|
|
IFNULL(ld.ACTION_CODE,'good') AS actionCode, |
|
|
|
ld.ORG_ID AS gridId, |
|
|
|
ld.PROJECT_ID AS projectId |
|
|
|
FROM fact_origin_project_log_daily ld |
|
|
|
WHERE ld.DEL_FLAG = 0 |
|
|
|
AND ld.ACTION_CODE IN( 'bad','good', 'perfect') |
|
|
|
AND ld.MONTH_ID = #{monthId} |
|
|
|
AND ld.CUSTOMER_ID = #{customerId} |
|
|
|
) en ON (en.projectId = cl.projectId) |
|
|
|
</select> |
|
|
|
|
|
|
|
<!-- 网格项目自治率查询 --> |
|
|
@ -92,29 +120,46 @@ |
|
|
|
COUNT( ID ) AS "count", |
|
|
|
SUM( IFNULL( b.score, 80 ) ) AS "ratio" |
|
|
|
FROM |
|
|
|
( SELECT f.ID, f.AGENCY_ID FROM fact_origin_project_main_daily f |
|
|
|
INNER JOIN dim_agency da ON f.FINISH_ORG_IDS LIKE concat('%', da.ID, '%') |
|
|
|
AND da.AGENCY_DIM_TYPE = 'all' |
|
|
|
AND da.`LEVEL` = #{level} |
|
|
|
AND da.CUSTOMER_ID = #{customerId} |
|
|
|
WHERE 1=1 |
|
|
|
AND f.MONTH_ID = #{monthId}) a |
|
|
|
LEFT JOIN ( |
|
|
|
SELECT |
|
|
|
PROJECT_ID, |
|
|
|
AVG( CASE ACTION_CODE WHEN 'bad' THEN 60 WHEN 'perfect' THEN 100 ELSE 80 END ) AS score |
|
|
|
FROM |
|
|
|
fact_origin_project_log_daily |
|
|
|
WHERE |
|
|
|
(ACTION_CODE = 'bad' |
|
|
|
OR ACTION_CODE = 'good' |
|
|
|
OR ACTION_CODE = 'perfect') |
|
|
|
AND CUSTOMER_ID = #{customerId} |
|
|
|
AND MONTH_ID = #{monthId} |
|
|
|
GROUP BY |
|
|
|
PROJECT_ID |
|
|
|
( |
|
|
|
SELECT |
|
|
|
f.ID, |
|
|
|
log.AGENCY_ID |
|
|
|
FROM |
|
|
|
fact_origin_project_main_daily f |
|
|
|
INNER JOIN fact_origin_project_log_daily log ON f.ID = log.PROJECT_ID |
|
|
|
AND log.ACTION_CODE = 'close' |
|
|
|
AND log.DEL_FLAG = '0' |
|
|
|
AND log.CUSTOMER_ID = #{customerId} |
|
|
|
AND log.MONTH_ID = #{monthId} |
|
|
|
INNER JOIN dim_agency da ON log.PIDS LIKE concat( '%', da.ID, '%' ) |
|
|
|
AND da.AGENCY_DIM_TYPE = 'all' |
|
|
|
AND da.`LEVEL` = #{level} |
|
|
|
AND da.CUSTOMER_ID = #{customerId} |
|
|
|
|
|
|
|
WHERE |
|
|
|
1 = 1 |
|
|
|
AND f.ORIGIN = 'issue' |
|
|
|
AND f.PROJECT_STATUS = 'closed' |
|
|
|
AND f.CUSTOMER_ID = #{customerId} |
|
|
|
) a |
|
|
|
LEFT JOIN ( |
|
|
|
SELECT |
|
|
|
l1.PROJECT_ID, |
|
|
|
AVG( CASE l1.ACTION_CODE WHEN 'bad' THEN 60 WHEN 'perfect' THEN 100 ELSE 80 END ) AS score |
|
|
|
FROM |
|
|
|
fact_origin_project_log_daily l1 |
|
|
|
INNER JOIN fact_origin_project_log_daily l2 ON l1.PROJECT_ID = l2.PROJECT_ID |
|
|
|
AND l2.ACTION_CODE = 'close' |
|
|
|
AND l2.MONTH_ID = #{monthId} |
|
|
|
AND l2.CUSTOMER_ID = #{customerId} |
|
|
|
WHERE |
|
|
|
( l1.ACTION_CODE = 'bad' OR l1.ACTION_CODE = 'good' OR l1.ACTION_CODE = 'perfect' ) |
|
|
|
AND l1.CUSTOMER_ID = #{customerId} |
|
|
|
GROUP BY |
|
|
|
PROJECT_ID |
|
|
|
) b ON a.ID = b.PROJECT_ID |
|
|
|
GROUP BY AGENCY_ID |
|
|
|
GROUP BY |
|
|
|
AGENCY_ID |
|
|
|
</select> |
|
|
|
<select id="selectDepTransferCount" resultType="com.epmet.dto.extract.result.OrgStatisticsResultDTO"> |
|
|
|
SELECT |
|
|
@ -221,24 +266,26 @@ |
|
|
|
</select> |
|
|
|
<!-- 查询机关办结次数 --> |
|
|
|
<select id="selectAgencyHandledProjectCount" resultType="com.epmet.dto.extract.result.ProjectParticipatedAgencyResultDTO"> |
|
|
|
SELECT |
|
|
|
SUBSTRING_INDEX(main.FINISH_ORG_IDS,':',1) AS agencyId, |
|
|
|
COUNT(main.ID) AS count |
|
|
|
FROM fact_origin_project_main_daily main |
|
|
|
LEFT JOIN fact_origin_project_log_daily log |
|
|
|
ON main.ID = log.PROJECT_ID AND log.DEL_FLAG = '0' AND log.ACTION_CODE = 'close' |
|
|
|
WHERE main.DEL_FLAG = '0' |
|
|
|
AND main.CUSTOMER_ID = #{customerId} |
|
|
|
<if test="null != agencies and agencies.size() > 0"> |
|
|
|
<foreach collection="agencies" item="item" open="AND ( " separator=" OR " close=" ) "> |
|
|
|
main.FINISH_ORG_IDS LIKE concat(#{item},'%') |
|
|
|
</foreach> |
|
|
|
</if> |
|
|
|
|
|
|
|
<if test='null != dimId and "" != dimId.trim()'> |
|
|
|
AND log.ID IS NOT NULL AND log.MONTH_ID = #{dimId} |
|
|
|
</if> |
|
|
|
GROUP BY SUBSTRING_INDEX(main.FINISH_ORG_IDS,':',1) |
|
|
|
SELECT |
|
|
|
ORG_ID AS "agencyId", |
|
|
|
COUNT( PROJECT_ID ) AS count |
|
|
|
FROM |
|
|
|
fact_origin_project_log_daily |
|
|
|
WHERE |
|
|
|
DEL_FLAG = '0' |
|
|
|
AND ACTION_CODE = 'close' |
|
|
|
AND CUSTOMER_ID = #{customerId} |
|
|
|
AND ORG_TYPE = 'agency' |
|
|
|
<if test="null != agencies and agencies.size() > 0"> |
|
|
|
<foreach collection="agencies" item="item" open="AND ( " separator=" OR " close=" ) "> |
|
|
|
ORG_ID = #{item} |
|
|
|
</foreach> |
|
|
|
</if> |
|
|
|
<if test='null != dimId and "" != dimId.trim()'> |
|
|
|
AND MONTH_ID = #{dimId} |
|
|
|
</if> |
|
|
|
GROUP BY |
|
|
|
ORG_ID |
|
|
|
</select> |
|
|
|
<!-- 查询评价周期内各级别机关办结的项目Id --> |
|
|
|
<select id="selectProjectIdHandledByAgency" resultType="com.epmet.dto.extract.result.ProjectParticipatedAgencyResultDTO"> |
|
|
|