|
|
@ -113,9 +113,9 @@ public class CalGridIndexServiceImpl implements CalGridIndexService { |
|
|
|
// 网格的发文数量
|
|
|
|
List<PublishCountResultDTO> publishCountList = articlePublishedGridDailyService.selectArticlePublishCount(customerId, monthId); |
|
|
|
// 网格议题转项目率
|
|
|
|
List<GridIssueCountResultDTO> gridIssueTotalList = issueExtractService.selectIssueTotalTwoMonth(customerId, monthId, DateUtils.minusMonthId(monthId)); |
|
|
|
List<GridProjectCountResultDTO> gridProjectTotalList = issueExtractService.selectGridProjectCount(customerId, monthId, ExtractConstant.SHIFT_PROJECT); |
|
|
|
List<GridProjectCountResultDTO> gridIssueShiftProjectRatio = getGridIssueShiftProjectRatio(gridIssueTotalList, gridProjectTotalList); |
|
|
|
List<GridIssueCountResultDTO> gridIssueTotalShiftProjectList = issueExtractService.selectIssueTotalShiftProject(customerId, monthId); |
|
|
|
List<GridIssueCountResultDTO> gridIssueTotalList = issueExtractService.selectIssueTotal(customerId, monthId); |
|
|
|
List<GridIssueCountResultDTO> gridIssueShiftProjectRatio = getGridIssueShiftProjectRatio(gridIssueTotalShiftProjectList, gridIssueTotalList); |
|
|
|
// 建群党员数
|
|
|
|
List<PartyCreateGroupCountResultDTO> partyCreateGroupCountList = groupExtractService.selectPartyCreateGroupCount(customerId, monthId); |
|
|
|
//结合目前产品,数据来源:话题评论、议题表决
|
|
|
@ -313,9 +313,10 @@ public class CalGridIndexServiceImpl implements CalGridIndexService { |
|
|
|
List<GridProjectCountResultDTO> gridProjectTotalList = issueExtractService.selectGridProjectCount(customerId, monthId, ExtractConstant.SHIFT_PROJECT); |
|
|
|
log.info("网格总项目数{}", JSON.toJSONString(gridProjectTotalList)); |
|
|
|
//网格议题转项目率
|
|
|
|
List<GridIssueCountResultDTO> gridIssueCountList = issueExtractService.selectIssueTotalTwoMonth(customerId, monthId, DateUtils.minusMonthId(monthId)); |
|
|
|
List<GridIssueCountResultDTO> gridIssueCountList = issueExtractService.selectIssueTotalShiftProject(customerId, monthId); |
|
|
|
log.info("网格近两个月的议题{}", JSON.toJSONString(gridIssueCountList)); |
|
|
|
List<GridProjectCountResultDTO> gridIssueShiftProjectRatio = getGridIssueShiftProjectRatio(gridIssueCountList, gridProjectTotalList); |
|
|
|
|
|
|
|
List<GridIssueCountResultDTO> gridIssueShiftProjectRatio = getGridIssueShiftProjectRatio(gridIssueCountList, gridIssueTotalList); |
|
|
|
log.info("网格议题转项目率{}", JSON.toJSONString(gridIssueShiftProjectRatio)); |
|
|
|
//网格自治项目数 从议题创建到项目关闭,包括处理人,自始至终没有出过议题所属网格
|
|
|
|
List<AutoNoMyResultDTO> projectAutoNoMyList = projectLogService.selectProjectAutoNoMy(customerId, monthId); |
|
|
@ -391,15 +392,23 @@ public class CalGridIndexServiceImpl implements CalGridIndexService { |
|
|
|
} |
|
|
|
}); |
|
|
|
} |
|
|
|
// 2. 网格总项目数,网格议题转项目率
|
|
|
|
// 2.网格议题转项目率
|
|
|
|
if (!CollectionUtils.isEmpty(gridIssueShiftProjectRatio)){ |
|
|
|
gridIssueShiftProjectRatio.forEach(projectTotal -> { |
|
|
|
if (r.getGridId().equals(projectTotal.getGridId())){ |
|
|
|
r.setProjectTotal(projectTotal.getProjectTotal()); |
|
|
|
r.setIssueToProjectRatio(projectTotal.getIssueToProjectRatio()); |
|
|
|
} |
|
|
|
}); |
|
|
|
} |
|
|
|
// 网格总项目数
|
|
|
|
if (!CollectionUtils.isEmpty(gridProjectTotalList)){ |
|
|
|
gridProjectTotalList.forEach(projectTotal -> { |
|
|
|
if (r.getGridId().equals(projectTotal.getGridId())) { |
|
|
|
r.setProjectTotal(projectTotal.getProjectTotal()); |
|
|
|
} |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
// 3. 网格办结项目数
|
|
|
|
if (!CollectionUtils.isEmpty(gridProjectClosedTotalList)){ |
|
|
|
gridProjectClosedTotalList.forEach(closed -> { |
|
|
@ -539,22 +548,22 @@ public class CalGridIndexServiceImpl implements CalGridIndexService { |
|
|
|
|
|
|
|
/** |
|
|
|
* @Description |
|
|
|
* @param gridIssueTotalList |
|
|
|
* @param gridProjectTotalList |
|
|
|
* @param gridIssueTotalList 网格下已转项目的议题 |
|
|
|
* @param gridIssueAllTotalList 网格下所有议题 |
|
|
|
* @author zxc |
|
|
|
* @date 2020/9/19 2:53 下午 |
|
|
|
*/ |
|
|
|
public List<GridProjectCountResultDTO> getGridIssueShiftProjectRatio(List<GridIssueCountResultDTO> gridIssueTotalList,List<GridProjectCountResultDTO> gridProjectTotalList){ |
|
|
|
if (!CollectionUtils.isEmpty(gridIssueTotalList) && !CollectionUtils.isEmpty(gridProjectTotalList)) { |
|
|
|
gridProjectTotalList.forEach(project -> { |
|
|
|
public List<GridIssueCountResultDTO> getGridIssueShiftProjectRatio(List<GridIssueCountResultDTO> gridIssueTotalList,List<GridIssueCountResultDTO> gridIssueAllTotalList){ |
|
|
|
if (!CollectionUtils.isEmpty(gridIssueTotalList) && !CollectionUtils.isEmpty(gridIssueAllTotalList)) { |
|
|
|
gridIssueAllTotalList.forEach(allIssue -> { |
|
|
|
gridIssueTotalList.forEach(issue -> { |
|
|
|
if (project.getGridId().equals(issue.getGridId())) { |
|
|
|
project.setIssueToProjectRatio(getRound(new BigDecimal(project.getProjectTotal()).divide(new BigDecimal(issue.getIssueTotal()),NumConstant.EIGHT,BigDecimal.ROUND_HALF_UP).multiply(NumConstant.ONE_HUNDRED_DECIMAL))); |
|
|
|
if (allIssue.getGridId().equals(issue.getGridId())) { |
|
|
|
allIssue.setIssueToProjectRatio(getRound(new BigDecimal(allIssue.getIssueTotal()).divide(new BigDecimal(issue.getIssueTotal()),NumConstant.EIGHT,BigDecimal.ROUND_HALF_UP).multiply(NumConstant.ONE_HUNDRED_DECIMAL))); |
|
|
|
} |
|
|
|
}); |
|
|
|
}); |
|
|
|
} |
|
|
|
return gridProjectTotalList; |
|
|
|
return gridIssueAllTotalList; |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|