Browse Source

Merge branch 'dev'

dev
zhaoqifeng 4 years ago
parent
commit
0f37a3ae10
  1. 2
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java
  2. 10
      epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/datastats/DatsStatsDao.xml
  3. 39
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/GrassRootsGovernServiceImpl.java
  4. 12
      epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenGovernRankDataDao.xml

2
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/datastats/impl/DataStatsServiceImpl.java

@ -1194,7 +1194,7 @@ public class DataStatsServiceImpl implements DataStatsService {
Integer eventUnResolvedCount = list.stream().mapToInt(FactAgencyGovernDailyEntity::getEventUnResolvedCount).sum(); Integer eventUnResolvedCount = list.stream().mapToInt(FactAgencyGovernDailyEntity::getEventUnResolvedCount).sum();
Integer closedProjectTotal = issueResolvedCount + issueUnResolvedCount+projectResolvedCount Integer closedProjectTotal = issueResolvedCount + issueUnResolvedCount+projectResolvedCount
+ projectUnResolvedCount + eventResolvedCount + eventUnResolvedCount; + projectUnResolvedCount + eventResolvedCount + eventUnResolvedCount;
resultDTO.setProblemResolvedCount(problemResolvedCount); resultDTO.setProblemResolvedCount(closedProjectTotal);
resultDTO.setGroupSelfGovernRatio(getPercentage(inGroupTopicResolvedCount + inGroupTopicUnResolvedCount, problemResolvedCount)); resultDTO.setGroupSelfGovernRatio(getPercentage(inGroupTopicResolvedCount + inGroupTopicUnResolvedCount, problemResolvedCount));
resultDTO.setGridSelfGovernRatio(getPercentage(gridSelfGovernProjectTotal, closedProjectTotal)); resultDTO.setGridSelfGovernRatio(getPercentage(gridSelfGovernProjectTotal, closedProjectTotal));
resultDTO.setCommunityResolvedRatio(getPercentage(communityClosedCount, closedProjectTotal)); resultDTO.setCommunityResolvedRatio(getPercentage(communityClosedCount, closedProjectTotal));

10
epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/datastats/DatsStatsDao.xml

@ -624,7 +624,9 @@
SELECT SELECT
agency_id AS agencyId, agency_id AS agencyId,
`level` AS level, `level` AS level,
problem_resolved_count AS problemResolvedCount, ISSUE_PROJECT_RESOLVED_COUNT+ISSUE_PROJECT_UN_RESOLVED_COUNT
+APPROVAL_PROJECT_RESOLVED_COUNT+APPROVAL_PROJECT_UN_RESOLVED_COUNT
+EVENT_RESOLVED_COUNT+EVENT_UN_RESOLVED_COUNT AS problemResolvedCount,
concat(ROUND(group_self_govern_ratio*100, 1),'%') AS groupSelfGovernRatio, concat(ROUND(group_self_govern_ratio*100, 1),'%') AS groupSelfGovernRatio,
concat(ROUND(grid_self_govern_ratio*100, 1),'%') AS gridSelfGovernRatio, concat(ROUND(grid_self_govern_ratio*100, 1),'%') AS gridSelfGovernRatio,
concat(ROUND(community_closed_ratio*100, 1),'%') AS communityResolvedRatio, concat(ROUND(community_closed_ratio*100, 1),'%') AS communityResolvedRatio,
@ -638,13 +640,15 @@
<foreach item="agencyId" collection="agencyIds" open="AND (" separator="or" close=")" index=""> <foreach item="agencyId" collection="agencyIds" open="AND (" separator="or" close=")" index="">
agency_id = #{agencyId} agency_id = #{agencyId}
</foreach> </foreach>
ORDER BY problem_resolved_count DESC ORDER BY problemResolvedCount DESC
</select> </select>
<select id="getGridGovern" resultType="com.epmet.dataaggre.dto.datastats.result.GridGovrnResultDTO"> <select id="getGridGovern" resultType="com.epmet.dataaggre.dto.datastats.result.GridGovrnResultDTO">
SELECT SELECT
grid_id AS gridId, grid_id AS gridId,
problem_resolved_count AS problemResolvedCount, ISSUE_PROJECT_RESOLVED_COUNT+ISSUE_PROJECT_UN_RESOLVED_COUNT
+APPROVAL_PROJECT_RESOLVED_COUNT+APPROVAL_PROJECT_UN_RESOLVED_COUNT
+EVENT_RESOLVED_COUNT+EVENT_UN_RESOLVED_COUNT AS problemResolvedCount,
concat(ROUND(group_self_govern_ratio*100, 1),'%') AS groupSelfGovernRatio, concat(ROUND(group_self_govern_ratio*100, 1),'%') AS groupSelfGovernRatio,
concat(ROUND(grid_self_govern_ratio*100, 1),'%') AS gridSelfGovernRatio, concat(ROUND(grid_self_govern_ratio*100, 1),'%') AS gridSelfGovernRatio,
concat(ROUND(community_closed_ratio*100, 1),'%') AS communityResolvedRatio, concat(ROUND(community_closed_ratio*100, 1),'%') AS communityResolvedRatio,

39
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/GrassRootsGovernServiceImpl.java

@ -242,34 +242,41 @@ public class GrassRootsGovernServiceImpl implements GrassRootsGovernService {
@Override @Override
public List<GovernCapacityRankResultDTO> governCapacityRank(AgencyAndNumFormDTO param) { public List<GovernCapacityRankResultDTO> governCapacityRank(AgencyAndNumFormDTO param) {
List<GovernCapacityResultDTO> orderList = new ArrayList<>(); List<GovernCapacityResultDTO> orderList = new ArrayList<>();
if(null == param.getTopNum()) param.setTopNum(NumConstant.FIVE); if(null == param.getTopNum()) {
if(NumConstant.ZERO == param.getTopNum()) param.setTopNum(NumConstant.MAX); param.setTopNum(NumConstant.FIVE);
}
if(NumConstant.ZERO == param.getTopNum()) {
param.setTopNum(NumConstant.MAX);
}
PageHelper.startPage(NumConstant.ONE,param.getTopNum()); PageHelper.startPage(NumConstant.ONE,param.getTopNum());
String monthId = dateUtils.getCurrentMonthId(); String dateId = com.epmet.commons.tools.utils.DateUtils.getBeforeNDay(NumConstant.ONE);
if (StringUtils.isNotEmpty(param.getAreaCode())){ if (StringUtils.isNotEmpty(param.getAreaCode())){
List<String> nextAgencyIds = screenCustomerAgencyService.getNextAgencyIds(param.getAreaCode(), param.getAgencyId()); List<String> nextAgencyIds = screenCustomerAgencyService.getNextAgencyIds(param.getAreaCode(), param.getAgencyId());
if (CollectionUtils.isEmpty(nextAgencyIds)){ if (CollectionUtils.isEmpty(nextAgencyIds)){
return new ArrayList<>(); return new ArrayList<>();
} }
orderList = screenGovernRankDataDao.selectGovernCapacityRatioNew(monthId,nextAgencyIds); orderList = screenGovernRankDataDao.selectGovernCapacityRatioNew(dateId,nextAgencyIds);
int time = NumConstant.TWELVE; int time = NumConstant.ONE;
while(CollectionUtils.isEmpty(orderList) && time > NumConstant.ONE){ while(CollectionUtils.isEmpty(orderList) && time < NumConstant.TEN){
time--; time++;
monthId = dateUtils.getPreviousMonthIdByDest(null ,monthId); dateId = com.epmet.commons.tools.utils.DateUtils.getBeforeNDay(time);
PageHelper.startPage(NumConstant.ONE,param.getTopNum()); PageHelper.startPage(NumConstant.ONE,param.getTopNum());
orderList = screenGovernRankDataDao.selectGovernCapacityRatioNew(monthId,nextAgencyIds); orderList = screenGovernRankDataDao.selectGovernCapacityRatioNew(dateId,nextAgencyIds);
} }
}else { }else {
orderList = screenGovernRankDataDao.selectGovernCapacityRatio(monthId, param.getAgencyId()); orderList = screenGovernRankDataDao.selectGovernCapacityRatio(dateId, param.getAgencyId());
int time = NumConstant.TWELVE; int time = NumConstant.ONE;
while (CollectionUtils.isEmpty(orderList) && time > NumConstant.ONE) { while (CollectionUtils.isEmpty(orderList) && time < NumConstant.TEN) {
time--; time++;
monthId = dateUtils.getPreviousMonthIdByDest(null, monthId); dateId = com.epmet.commons.tools.utils.DateUtils.getBeforeNDay(time);
PageHelper.startPage(NumConstant.ONE, param.getTopNum()); PageHelper.startPage(NumConstant.ONE, param.getTopNum());
orderList = screenGovernRankDataDao.selectGovernCapacityRatio(monthId, param.getAgencyId()); orderList = screenGovernRankDataDao.selectGovernCapacityRatio(dateId, param.getAgencyId());
} }
} }
if(null == orderList || orderList.isEmpty()) return new ArrayList<>(); if(null == orderList || orderList.isEmpty()) {
return new ArrayList<>();
}
List<GovernCapacityRankResultDTO> result = new LinkedList<>(); List<GovernCapacityRankResultDTO> result = new LinkedList<>();
orderList.forEach(o -> { orderList.forEach(o -> {
GovernCapacityRankResultDTO rank = new GovernCapacityRankResultDTO(); GovernCapacityRankResultDTO rank = new GovernCapacityRankResultDTO();

12
epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenGovernRankDataDao.xml

@ -14,14 +14,14 @@
rankData.SATISFACTION_RATIO, rankData.SATISFACTION_RATIO,
agency.AGENCY_NAME AS parentAgencyName agency.AGENCY_NAME AS parentAgencyName
FROM FROM
screen_govern_rank_data rankData screen_govern_rank_data_daily rankData
LEFT JOIN LEFT JOIN
screen_customer_agency agency screen_customer_agency agency
ON rankData.PARENT_ID = agency.AGENCY_ID AND agency.DEL_FLAG = '0' AND agency.AGENCY_ID = #{agencyId} ON rankData.PARENT_ID = agency.AGENCY_ID AND agency.DEL_FLAG = '0' AND agency.AGENCY_ID = #{agencyId}
WHERE WHERE
rankData.DEL_FLAG = '0' rankData.DEL_FLAG = '0'
AND rankData.PARENT_ID = #{agencyId} AND rankData.PARENT_ID = #{agencyId}
AND rankData.MONTH_ID = #{monthId} AND rankData.DATE_ID = #{monthId}
ORDER BY ORDER BY
rankData.RESPONSE_RATIO DESC rankData.RESPONSE_RATIO DESC
</select> </select>
@ -40,7 +40,7 @@
left join screen_customer_agency pa left join screen_customer_agency pa
on(agency.PARENT_AREA_CODE=pa.AREA_CODE on(agency.PARENT_AREA_CODE=pa.AREA_CODE
and pa.DEL_FLAG='0') and pa.DEL_FLAG='0')
left join screen_govern_rank_data rankData left join screen_govern_rank_data_daily rankData
ON (agency.AGENCY_ID =rankData.org_id ON (agency.AGENCY_ID =rankData.org_id
AND rankData.DEL_FLAG = '0' AND rankData.DEL_FLAG = '0'
and rankData.org_type='agency') and rankData.org_type='agency')
@ -50,7 +50,7 @@
<foreach collection="orgIds" item="orgId" open="(" close=")" separator=","> <foreach collection="orgIds" item="orgId" open="(" close=")" separator=",">
#{orgId} #{orgId}
</foreach> </foreach>
AND rankData.MONTH_ID =#{monthId} AND rankData.DATE_ID =#{monthId}
) )
union union
( (
@ -65,7 +65,7 @@
FROM screen_customer_grid grid FROM screen_customer_grid grid
left join screen_customer_agency ca left join screen_customer_agency ca
on (ca.agency_id = grid.parent_agency_id) on (ca.agency_id = grid.parent_agency_id)
left join screen_govern_rank_data rankData left join screen_govern_rank_data_daily rankData
ON (grid.grid_id=rankData.org_id ON (grid.grid_id=rankData.org_id
AND grid.DEL_FLAG = 0 AND grid.DEL_FLAG = 0
and rankData.org_type='grid') and rankData.org_type='grid')
@ -74,7 +74,7 @@
<foreach collection="orgIds" item="orgId" open="(" close=")" separator=","> <foreach collection="orgIds" item="orgId" open="(" close=")" separator=",">
#{orgId} #{orgId}
</foreach> </foreach>
AND rankData.MONTH_ID =#{monthId} AND rankData.DATE_ID =#{monthId}
) )
ORDER BY ORDER BY
RESPONSE_RATIO DESC RESPONSE_RATIO DESC

Loading…
Cancel
Save