diff --git a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/result/GovernCapacityResultDTO.java b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/result/GovernCapacityResultDTO.java index 95ab00a382..e749c0e218 100644 --- a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/result/GovernCapacityResultDTO.java +++ b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/result/GovernCapacityResultDTO.java @@ -44,4 +44,6 @@ public class GovernCapacityResultDTO implements Serializable { * 当前agencyName的上一级组织名称 */ private String parentAgencyName; + + private String orgId; } diff --git a/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenGovernRankDataDao.xml b/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenGovernRankDataDao.xml index 35130ae0b1..5cd4094e36 100644 --- a/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenGovernRankDataDao.xml +++ b/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenGovernRankDataDao.xml @@ -6,6 +6,7 @@ (SELECT - rankData.ORG_NAME AS agencyName, - rankData.RESPONSE_RATIO, - rankData.RESOLVED_RATIO, - rankData.GOVERN_RATIO, - rankData.SATISFACTION_RATIO, - pa.AGENCY_NAME AS parentAgencyName - FROM - screen_govern_rank_data rankData - LEFT JOIN screen_customer_agency agency ON (rankData.org_id = agency.AGENCY_ID AND agency.DEL_FLAG = '0') - left join screen_customer_agency pa on(agency.PARENT_AREA_CODE=pa.AREA_CODE and pa.DEL_FLAG='0') - WHERE - rankData.DEL_FLAG = '0' - AND rankData.org_id in - - #{orgId} - - AND rankData.MONTH_ID =#{monthId} - ORDER BY - (rankData.RESPONSE_RATIO + rankData.RESOLVED_RATIO + rankData.GOVERN_RATIO + rankData.SATISFACTION_RATIO) DESC, - rankData.RESPONSE_RATIO DESC,rankData.RESOLVED_RATIO DESC,rankData.GOVERN_RATIO DESC,rankData.SATISFACTION_RATIO DESC) + agency.agency_id as orgId, + agency.AGENCY_NAME AS agencyName, + IFNULL(rankData.RESPONSE_RATIO,0) AS RESPONSE_RATIO, + IFNULL(rankData.RESOLVED_RATIO,0) AS RESOLVED_RATIO, + IFNULL(rankData.GOVERN_RATIO,0) AS GOVERN_RATIO, + IFNULL(rankData.SATISFACTION_RATIO,0) AS SATISFACTION_RATIO, + pa.AGENCY_NAME AS parentAgencyName + FROM screen_customer_agency agency + left join screen_customer_agency pa + on(agency.PARENT_AREA_CODE=pa.AREA_CODE + and pa.DEL_FLAG='0') + left join screen_govern_rank_data rankData + ON (agency.AGENCY_ID =rankData.org_id + AND rankData.DEL_FLAG = '0' + and rankData.org_type='agency') + WHERE + agency.DEL_FLAG = '0' + AND agency.agency_id in + + #{orgId} + + AND rankData.MONTH_ID =#{monthId} + ORDER BY + (rankData.RESPONSE_RATIO + rankData.RESOLVED_RATIO + rankData.GOVERN_RATIO + rankData.SATISFACTION_RATIO) DESC, + rankData.RESPONSE_RATIO DESC,rankData.RESOLVED_RATIO DESC,rankData.GOVERN_RATIO DESC,rankData.SATISFACTION_RATIO DESC + ) union - (SELECT - rankData.ORG_NAME AS agencyName, - rankData.RESPONSE_RATIO, - rankData.RESOLVED_RATIO, - rankData.GOVERN_RATIO, - rankData.SATISFACTION_RATIO, - ca.agency_name AS parentAgencyName - FROM - screen_govern_rank_data rankData - inner JOIN screen_customer_grid grid ON (rankData.org_id = grid.grid_id AND grid.DEL_FLAG = 0) - left join screen_customer_agency ca on (ca.agency_id = grid.parent_agency_id) - WHERE - rankData.DEL_FLAG = '0' - AND rankData.org_id in - - #{orgId} - - AND rankData.MONTH_ID =#{monthId} - ORDER BY - (rankData.RESPONSE_RATIO + rankData.RESOLVED_RATIO + rankData.GOVERN_RATIO + rankData.SATISFACTION_RATIO) DESC, - rankData.RESPONSE_RATIO DESC,rankData.RESOLVED_RATIO DESC,rankData.GOVERN_RATIO DESC,rankData.SATISFACTION_RATIO - DESC + ( + SELECT + grid.grid_id as orgId, + grid.GRID_NAME AS agencyName, + IFNULL(rankData.RESPONSE_RATIO,0) AS RESPONSE_RATIO, + IFNULL(rankData.RESOLVED_RATIO,0) AS RESOLVED_RATIO, + IFNULL(rankData.GOVERN_RATIO,0) AS GOVERN_RATIO, + IFNULL(rankData.SATISFACTION_RATIO,0) AS SATISFACTION_RATIO, + ca.agency_name AS parentAgencyName + FROM screen_customer_grid grid + left join screen_customer_agency ca + on (ca.agency_id = grid.parent_agency_id) + left join screen_govern_rank_data rankData + ON (grid.grid_id=rankData.org_id + AND grid.DEL_FLAG = 0 + and rankData.org_type='grid') + WHERE grid.DEL_FLAG = '0' + AND grid.GRID_ID in + + #{orgId} + + AND rankData.MONTH_ID =#{monthId} + ORDER BY + (rankData.RESPONSE_RATIO + rankData.RESOLVED_RATIO + rankData.GOVERN_RATIO + rankData.SATISFACTION_RATIO) DESC, + rankData.RESPONSE_RATIO DESC,rankData.RESOLVED_RATIO DESC,rankData.GOVERN_RATIO DESC,rankData.SATISFACTION_RATIO + DESC )