diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginIssueMainDailyDao.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginIssueMainDailyDao.java index 6ad257a55c..79a1487328 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginIssueMainDailyDao.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginIssueMainDailyDao.java @@ -123,13 +123,11 @@ public interface FactOriginIssueMainDailyDao extends BaseDao partyMemberUserIds, @Param("gridId")String gridId, @Param("agencyId")String agencyId); @@ -153,4 +151,36 @@ public interface FactOriginIssueMainDailyDao extends BaseDao partyMemberUserIds, @Param("gridId")String gridId, @Param("agencyId")String agencyId); @@ -106,4 +104,16 @@ public interface FactOriginTopicMainDailyDao extends BaseDao partyMemberUserIds,String gridId,String agencyId); + int getParyPublishIssueTotal(String customerId,String gridId,String agencyId); /** * @return java.lang.Integer @@ -59,4 +56,34 @@ public interface FactOriginIssueMainDailyService extends BaseService partyMemberUserIds,String gridId,String agencyId); + int calPublishedByPartyTopicCount(String customerId,String gridId,String agencyId); /** * @return int * @param customerId @@ -80,5 +79,15 @@ public interface FactOriginTopicMainDailyService extends BaseService partyMemberUserIds,String gridId,String agencyId) { - if(CollectionUtils.isEmpty(partyMemberUserIds)){ - return NumConstant.ZERO; - } - return baseDao.getParyPublishIssueTotal(customerId,partyMemberUserIds,gridId,agencyId); + public int getParyPublishIssueTotal(String customerId,String gridId,String agencyId) { + return baseDao.getParyPublishIssueTotal(customerId,gridId,agencyId); } /** @@ -83,4 +75,43 @@ public class FactOriginIssueMainDailyServiceImpl extends BaseServiceImpl partyMemberUserIds,String gridId,String agencyId) { - if(CollectionUtils.isEmpty(partyMemberUserIds)){ - return NumConstant.ZERO; - } - return baseDao.selectPublishedByPartyTopicCount(customerId,partyMemberUserIds,gridId,agencyId); + public int calPublishedByPartyTopicCount(String customerId,String gridId,String agencyId) { + return baseDao.selectPublishedByPartyTopicCount(customerId,gridId,agencyId); } /** @@ -304,4 +300,17 @@ public class FactOriginTopicMainDailyServiceImpl extends BaseServiceImpl partyMemberUserIds = dimCustomerPartymemberService.getPartyMemberUserIds(customerId, "grid", gridId); - - //3、党员发布话题: - entity.setTopicTotal(getTopicTotal(customerId, partyMemberUserIds, gridId, null)); + entity.setTopicTotal(getTopicTotal(customerId, gridId, null)); //4、党员发布话题占比: 网格内注册党员发布的话题总数占 网格内话题总数的 比率 if (entity.getTopicTotal() == NumConstant.ZERO) { entity.setTopicRatio(BigDecimal.ZERO); @@ -82,7 +75,7 @@ public class PioneerDataExtractServiceImpl implements PioneerDataExtractService int gridIssueTotal = getGridOrCommunityIssueTotal(customerId, gridId, null); if (gridIssueTotal != NumConstant.ZERO) { //5、党员发布议题 - entity.setPublishIssueTotal(getParyPublishIssueTotal(customerId, partyMemberUserIds, gridId, null)); + entity.setPublishIssueTotal(getParyPublishIssueTotal(customerId, gridId, null)); //6、党员发布议题占比 : 占网格内所有议题的比率 if (entity.getPublishIssueTotal() == NumConstant.ZERO) { entity.setPublishIssueRatio(BigDecimal.ZERO); @@ -124,12 +117,9 @@ public class PioneerDataExtractServiceImpl implements PioneerDataExtractService //2、党员参与议事占比 todo entity.setIssueRatio(BigDecimal.ZERO); - //社区内的党员集合 - List partyMemberUserIds = dimCustomerPartymemberService.getPartyMemberUserIds(customerId, "community", communityId); - //3、党员发布话题: - entity.setTopicTotal(getTopicTotal(customerId, partyMemberUserIds, null, communityId)); + entity.setTopicTotal(getTopicTotal(customerId, null, communityId)); //4、党员发布话题占比: 社区内注册党员发布的话题总数占 社区内话题总数的 比率 if (entity.getTopicTotal() == NumConstant.ZERO) { entity.setTopicRatio(BigDecimal.ZERO); @@ -143,7 +133,7 @@ public class PioneerDataExtractServiceImpl implements PioneerDataExtractService int communityIssueTotal = getGridOrCommunityIssueTotal(customerId, null, communityId); if (communityIssueTotal != NumConstant.ZERO) { //5、党员发布议题 - entity.setPublishIssueTotal(getParyPublishIssueTotal(customerId, partyMemberUserIds, null, communityId)); + entity.setPublishIssueTotal(getParyPublishIssueTotal(customerId, null, communityId)); //6、党员发布议题占比 : 占社区内所有议题的比率 if (entity.getPublishIssueTotal() == NumConstant.ZERO) { entity.setPublishIssueRatio(BigDecimal.ZERO); @@ -173,7 +163,7 @@ public class PioneerDataExtractServiceImpl implements PioneerDataExtractService @Override public void extractExceptCommunityPioneerData(String customerId, String dateId) { - //查询客户下所有的社区,初始数据值为0 + //查询客户下所有的组织(社区除外),初始数据值为0 List agencyList = screenPioneerDataService.initPioneerDataList(customerId, "agency"); if (CollectionUtils.isEmpty(agencyList)) { return; @@ -190,18 +180,16 @@ public class PioneerDataExtractServiceImpl implements PioneerDataExtractService } else { entity.setAgencyPath(entity.getAgencyPids().concat(StrConstant.COLON).concat(entity.getOrgId())); } - //组织内党员集合 - List partyMemberUserIds = dimCustomerPartymemberService.getPartyMemberUserIds(customerId, "agency", entity.getAgencyPath()); //3、党员发布话题: - entity.setTopicTotal(getAgencyPartyTopicTotal(customerId, partyMemberUserIds, entity.getAgencyPath())); + entity.setTopicTotal(getAgencyTopicTotal(customerId, entity.getAgencyPath(),NumConstant.ONE_STR)); //4、党员发布话题占比: 组织内注册党员发布的话题总数占 组织内话题总数的 比率 if (entity.getTopicTotal() == NumConstant.ZERO) { entity.setTopicRatio(BigDecimal.ZERO); } else { //当前组织内所有话题总数 - int agencyTopicTotal = getAgencyTopicTotal(customerId, entity.getAgencyPath()); + int agencyTopicTotal = getAgencyTopicTotal(customerId, entity.getAgencyPath(),null); entity.setTopicRatio(agencyTopicTotal == NumConstant.ZERO ? BigDecimal.ZERO : new BigDecimal(entity.getTopicTotal() / agencyTopicTotal).setScale(NumConstant.SIX, RoundingMode.HALF_UP)); } @@ -209,7 +197,7 @@ public class PioneerDataExtractServiceImpl implements PioneerDataExtractService int agencyIssueTotal = getAgencyIssueTotal(customerId, entity.getAgencyPath()); if (agencyIssueTotal != NumConstant.ZERO) { //5、党员发布议题 - entity.setPublishIssueTotal(getAgencyParyPublishIssueTotal(customerId, partyMemberUserIds, entity.getAgencyPath())); + entity.setPublishIssueTotal(getAgencyParyPublishIssueTotal(customerId, entity.getAgencyPath())); //6、党员发布议题占比 : 占社区内所有议题的比率 if (entity.getPublishIssueTotal() == NumConstant.ZERO) { entity.setPublishIssueRatio(BigDecimal.ZERO); @@ -237,117 +225,97 @@ public class PioneerDataExtractServiceImpl implements PioneerDataExtractService } - private int getAgencyClosedProjectTotal(String customerId, String agencyPath, String resolved) { - //todo - return 0; + //组织下:已解决项目 or 已结案项目总数 + private int getAgencyClosedProjectTotal(String customerId, String agencyPath, String closedStatus) { + return factOriginProjectMainDailyService.getAgencyClosedProjectTotal(customerId,agencyPath,closedStatus); } + //组织下:议题转项目数 private Integer getAgencyShiftProjectTotal(String customerId, String agencyPath) { - //todo - return 0; + return factOriginIssueMainDailyService.getAgencyShiftProjectTotal(customerId,agencyPath); } - private Integer getAgencyParyPublishIssueTotal(String customerId, List partyMemberUserIds, String agencyPath) { - //todo - return 0; + //组织内: 党员发布议题 + private Integer getAgencyParyPublishIssueTotal(String customerId, String agencyPath) { + return factOriginIssueMainDailyService.getAgencyParyPublishIssueTotal(customerId,agencyPath); } + //组织内:所有议题总数 private int getAgencyIssueTotal(String customerId, String agencyPath) { - //todo - return 0; + return factOriginIssueMainDailyService.getAgencyIssueTotal(customerId,agencyPath); } - private int getAgencyTopicTotal(String customerId, String agencyPath) { - //todo - return 0; - } - private Integer getAgencyPartyTopicTotal(String customerId, List partyMemberUserIds, String agencyPath) { - //todo - return 0; + //在当前组织下,话题总数(createTopicUserIsParty=1时查询党员发布的话题总数) + private Integer getAgencyTopicTotal(String customerId, String agencyPath,String createTopicUserIsParty) { + return factOriginTopicMainDailyService.getAgencyPartyTopicTotal(customerId,agencyPath,createTopicUserIsParty); } /** - * @param customerId - * @param gridId - * @param communityId + * @param customerId 客户id + * @param gridId 网格id + * @param communityId 社区的agencyId * @param closedStatus 结案状态:已解决 resolved,未解决 unresolved - * @return java.lang.Integer - * @author yinzuomei - * @description 网格内已解决项目 - * @Date 2020/9/23 16:24 + * @description 网格或者社区下: 已解决项目 **/ private Integer getGridOrCommunityClosedProjectTotal(String customerId, String gridId, String communityId, String closedStatus) { return factOriginProjectMainDailyService.getGridOrCommunityClosedProjectTotal(customerId, gridId, communityId, closedStatus); } /** - * @param customerId - * @param partyMemberUserIds * @return int - * @author yinzuomei - * @description 党员发布的话题总数 - * @Date 2020/9/23 13:44 + * @param customerId 客户id + * @param gridId 网格id + * @param agencyId 社区的agencyId + * @description 网格或者社区下: 党员发布的话题总数 **/ - private int getTopicTotal(String customerId, List partyMemberUserIds, String gridId, String agencyId) { - if (CollectionUtils.isEmpty(partyMemberUserIds)) { - //如果网格内没有党员,直接返回0 - return NumConstant.ZERO; - } - return factOriginTopicMainDailyService.calPublishedByPartyTopicCount(customerId, partyMemberUserIds, gridId, agencyId); + private int getTopicTotal(String customerId, String gridId, String agencyId) { + return factOriginTopicMainDailyService.calPublishedByPartyTopicCount(customerId, gridId, agencyId); } /** - * @param customerId - * @param partyMemberUserIds - * @return java.lang.Integer - * @author yinzuomei - * @description 党员发布的议题总数 - * @Date 2020/9/23 14:39 + * @return int + * @param customerId 客户id + * @param gridId 网格id + * @param communityId 社区的agencyId + * @description 网格或者社区下 :话题总数 **/ - private int getParyPublishIssueTotal(String customerId, List partyMemberUserIds, String gridId, String agencyId) { - if (CollectionUtils.isEmpty(partyMemberUserIds)) { - return NumConstant.ZERO; - } - return factOriginIssueMainDailyService.getParyPublishIssueTotal(customerId, partyMemberUserIds, gridId, agencyId); + private int getGridOrCommunityTopicTotal(String customerId, String gridId, String communityId) { + return factOriginTopicMainDailyService.calGridOrCommunityTopicTotal(customerId, gridId, communityId); } /** - * @param customerId - * @param gridId - * @return java.lang.Integer - * @author yinzuomei - * @description 网格内议题转项目数 - * @Date 2020/9/23 15:38 + * @return int + * @param customerId 客户id + * @param gridId 网格id + * @param agencyId 社区的agencyId + * @description 网格或者社区下: 党员发布的议题总数 **/ - private Integer getGridOrCommunityShiftProjectTotal(String customerId, String gridId, String communityId) { - return factOriginIssueMainDailyService.getGridOrCommunityShiftProjectTotal(customerId, gridId, communityId); + private int getParyPublishIssueTotal(String customerId, String gridId, String agencyId) { + return factOriginIssueMainDailyService.getParyPublishIssueTotal(customerId, gridId, agencyId); } - /** - * @param customerId - * @param communityId * @return int - * @author yinzuomei - * @description - * @Date 2020/9/24 10:44 + * @param customerId 客户id + * @param gridId 网格id + * @param communityId 社区的agencyId + * @description 网格或者社区下 :议题总数 **/ private int getGridOrCommunityIssueTotal(String customerId, String gridId, String communityId) { return factOriginIssueMainDailyService.getGridOrCommunityIssueTotal(customerId, gridId, communityId); } /** - * @param customerId - * @param communityId - * @return int - * @author yinzuomei - * @description 当前社区内所有话题总数 - * @Date 2020/9/24 10:32 + * @return java.lang.Integer + * @param customerId 客户id + * @param gridId 网格id + * @param communityId 社区的agencyId + * @description 网格或者社区下: 议题转项目数 **/ - private int getGridOrCommunityTopicTotal(String customerId, String gridId, String communityId) { - return factOriginTopicMainDailyService.calGridOrCommunityTopicTotal(customerId, gridId, communityId); + private Integer getGridOrCommunityShiftProjectTotal(String customerId, String gridId, String communityId) { + return factOriginIssueMainDailyService.getGridOrCommunityShiftProjectTotal(customerId, gridId, communityId); } } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/DimCustomerPartymemberService.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/DimCustomerPartymemberService.java index d7410071ff..d231065d66 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/DimCustomerPartymemberService.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/DimCustomerPartymemberService.java @@ -126,7 +126,7 @@ public interface DimCustomerPartymemberService extends BaseService - + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml index 987eeed62b..6129ab0f2f 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml @@ -163,4 +163,19 @@ and t1.CLOSED_STATUS=#{closedStatus} + + + \ No newline at end of file diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginTopicMainDailyDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginTopicMainDailyDao.xml index 53d917949a..31b2bc1772 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginTopicMainDailyDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginTopicMainDailyDao.xml @@ -106,16 +106,13 @@ WHERE T1.DEL_FLAG = '0' AND T1.CUSTOMER_ID = #{customerId} + AND m.CREATE_TOPIC_USER_IS_PARTY='1' AND T1.GRID_ID=#{gridId} AND T1.AGENCY_ID=#{agencyId} - AND - - T1.CREATE_TOPIC_USER_ID=#{userId} - + SELECT + count( 1 ) AS total + FROM + fact_origin_topic_main_daily m + WHERE + m.DEL_FLAG = '0' + + AND m.CREATE_TOPIC_USER_IS_PARTY = #{createTopicUserIsParty} + + AND m.CUSTOMER_ID = #{customerId} + AND m.PIDS LIKE CONCAT(#{agencyPath},'%') + \ No newline at end of file