Browse Source

网格相关 党建能力

master
zxc 5 years ago
parent
commit
0006311ce2
  1. 15
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/form/GridIssueCountResultDTO.java
  2. 15
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/result/GridUserCountResultDTO.java
  3. 25
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/result/PartyCreateGroupCountResultDTO.java
  4. 25
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/result/PublishCountResultDTO.java
  5. 25
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/result/ShiftProjectCountResultDTO.java
  6. 20
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DemoController.java
  7. 15
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginGroupMainDailyDao.java
  8. 11
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginIssueMainDailyDao.java
  9. 4
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginProjectOrgPeriodDailyDao.java
  10. 17
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/indexcoll/FactIndexGovrnAblityGridMonthlyDao.java
  11. 10
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/stats/FactArticlePublishedGridDailyDao.java
  12. 33
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/FactIndexGovernAbilityGridMonthlyService.java
  13. 31
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/FactIndexPartyAbilityGridMonthlyService.java
  14. 11
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/FactIndexServiceAbilityGridMonthlyService.java
  15. 14
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/GroupExtractService.java
  16. 11
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/IssueExtractService.java
  17. 152
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/CalGridIndexServiceImpl.java
  18. 37
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/FactIndexGovernAbilityGridMonthlyServiceImpl.java
  19. 37
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/FactIndexPartyAbilityGridMonthlyServiceImpl.java
  20. 20
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/FactIndexServiceAbilityGridMonthlyServiceImpl.java
  21. 19
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/GroupExtractServiceImpl.java
  22. 13
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/IssueExtractServiceImpl.java
  23. 4
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcoll/impl/IndexCollCommunityServiceImpl.java
  24. 10
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/FactArticlePublishedGridDailyService.java
  25. 13
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactArticlePublishedGridDailyServiceImpl.java
  26. 38
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginGroupMainDailyDao.xml
  27. 19
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginIssueMainDailyDao.xml
  28. 60
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/indexcoll/FactIndexGovrnAblityGridMonthlyDao.xml
  29. 12
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactArticlePublishedGridDailyDao.xml
  30. 5
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/user/FactRegUserGridMonthlyDao.xml

15
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/form/GridIssueCountResultDTO.java

@ -27,19 +27,4 @@ public class GridIssueCountResultDTO implements Serializable {
* 网格ID
*/
private String gridId;
/**
* 月份ID
*/
private String monthId;
/**
* 季度ID
*/
private String quarterId;
/**
* 年度ID
*/
private String yearId;
}

15
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/result/GridUserCountResultDTO.java

@ -27,19 +27,4 @@ public class GridUserCountResultDTO implements Serializable {
* 网格ID
*/
private String gridId;
/**
* 月份ID
*/
private String monthId;
/**
* 季度ID
*/
private String quarterId;
/**
* 年度ID
*/
private String yearId;
}

25
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/result/PartyCreateGroupCountResultDTO.java

@ -0,0 +1,25 @@
package com.epmet.dto.extract.result;
import lombok.Data;
import java.io.Serializable;
/**
* @Author zxc
* @DateTime 2020/9/19 3:30 下午
*/
@Data
public class PartyCreateGroupCountResultDTO implements Serializable {
private static final long serialVersionUID = -4193777575465275095L;
/**
* 网格ID
*/
private String gridId;
/**
* 建群党员数
*/
private Integer partyCreateGroupCount;
}

25
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/result/PublishCountResultDTO.java

@ -0,0 +1,25 @@
package com.epmet.dto.extract.result;
import lombok.Data;
import java.io.Serializable;
/**
* @Author zxc
* @DateTime 2020/9/19 2:41 下午
*/
@Data
public class PublishCountResultDTO implements Serializable {
private static final long serialVersionUID = -955208044108055887L;
/**
* 网格ID
*/
private String gridId;
/**
* 发文数量
*/
private Integer publishCount;
}

25
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/extract/result/ShiftProjectCountResultDTO.java

@ -0,0 +1,25 @@
package com.epmet.dto.extract.result;
import lombok.Data;
import java.io.Serializable;
/**
* @Author zxc
* @DateTime 2020/9/19 2:23 下午
*/
@Data
public class ShiftProjectCountResultDTO implements Serializable {
private static final long serialVersionUID = -262809191405218048L;
/**
* 网格ID
*/
private String gridId;
/**
* 网格 党员/群众 人均提出的议题转项目数
*/
private Integer shiftProjectCount;
}

20
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/DemoController.java

@ -26,6 +26,7 @@ import com.epmet.entity.stats.DimAgencyEntity;
import com.epmet.entity.stats.DimCustomerEntity;
import com.epmet.entity.stats.DimDateEntity;
import com.epmet.service.StatsDemoService;
import com.epmet.service.evaluationindex.extract.CalGridIndexService;
import com.epmet.service.evaluationindex.extract.FactOriginTopicMainDailyService;
import com.epmet.service.evaluationindex.indexcal.*;
import com.epmet.service.stats.DimAgencyService;
@ -533,4 +534,23 @@ public class DemoController {
partymemberService.statsPartyMember(customerIdAndDateIdFormDTO);
return new Result();
}
@Autowired
private CalGridIndexService calGridIndexService;
@PostMapping("gridparty")
public void gridParty(){
// String customerId = "3ef7e4bb195eb9e622d68b52509aa940";
String customerId = "epmettest";
String monthId = "202008";
calGridIndexService.calGridIndexPartyAbility(customerId,monthId);
}
@PostMapping("gridgovern")
public void gridGovern(){
// String customerId = "3ef7e4bb195eb9e622d68b52509aa940";
String customerId = "epmettest";
String monthId = "202008";
calGridIndexService.calGridIndexGovernAbility(customerId,monthId);
}
}

15
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginGroupMainDailyDao.java

@ -18,8 +18,12 @@
package com.epmet.dao.evaluationindex.extract;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.extract.result.PartyCreateGroupCountResultDTO;
import com.epmet.entity.evaluationindex.extract.FactOriginGroupMainDailyEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 业务数据抽取-小组相关
@ -29,5 +33,14 @@ import org.apache.ibatis.annotations.Mapper;
*/
@Mapper
public interface FactOriginGroupMainDailyDao extends BaseDao<FactOriginGroupMainDailyEntity> {
/**
* @Description 查询建群党员数
* @param customerId
* @param monthId
* @author zxc
* @date 2020/9/19 3:49 下午
*/
List<PartyCreateGroupCountResultDTO> selectPartyCreateGroupCount(@Param("customerId") String customerId,@Param("monthId") String monthId);
}

11
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginIssueMainDailyDao.java

@ -21,6 +21,7 @@ import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.extract.form.GridIssueCountResultDTO;
import com.epmet.dto.extract.form.IssueMainDailyFormDTO;
import com.epmet.dto.extract.result.GridProjectCountResultDTO;
import com.epmet.dto.extract.result.ShiftProjectCountResultDTO;
import com.epmet.entity.evaluationindex.extract.FactOriginIssueMainDailyEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -91,4 +92,14 @@ public interface FactOriginIssueMainDailyDao extends BaseDao<FactOriginIssueMain
* @Date 2020/9/18 14:11
**/
List<Map<String, Integer>> selectShiftProjectCount(@Param("customerId") String customerId,@Param("monthId") String monthId);
/**
* @Description 查询网格 党员/群众 人均提出的议题转项目数
* @param customerId
* @param monthId
* @param isParty
* @author zxc
* @date 2020/9/19 2:26 下午
*/
List<ShiftProjectCountResultDTO> selectShiftProjectCountPlus(@Param("customerId") String customerId,@Param("monthId") String monthId,@Param("isParty") Integer isParty);
}

4
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginProjectOrgPeriodDailyDao.java

@ -60,8 +60,8 @@ public interface FactOriginProjectOrgPeriodDailyDao extends BaseDao<FactOriginPr
* @param orgType
* @return java.util.List<com.epmet.dto.extract.result.OrgStatisticsResultDTO>
*/
List<OrgStatisticsResultDTO> selectResponsiveness(@Param("monthId") String monthId, @Param("level")String level,
@Param("orgType")String orgType);
// List<OrgStatisticsResultDTO> selectResponsiveness(@Param("monthId") String monthId, @Param("level")String level,
// @Param("orgType")String orgType);
void deleteByProjectId(@Param("list") List<String> list);
/**

17
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/indexcoll/FactIndexGovrnAblityGridMonthlyDao.java

@ -118,4 +118,21 @@ public interface FactIndexGovrnAblityGridMonthlyDao extends BaseDao<FactIndexGov
* @date 2020/9/19 10:50 上午
*/
List<PartyAbilityGridMonthlyFormDTO> selectAllGridInfoToParty(String customerId);
/**
* @Description 批量插入治理能力
* @param lists
* @author zxc
* @date 2020/9/19 4:28 下午
*/
void insertGovernAbilityRecord(@Param("lists") List<GovernAbilityGridMonthlyFormDTO> lists);
/**
* @Description 删除治理能力旧纪录
* @param customerId
* @param monthId
* @author zxc
* @date 2020/9/19 4:31 下午
*/
void deleteOldGovernAbilityRecord(@Param("customerId")String customerId,@Param("monthId")String monthId);
}

10
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/stats/FactArticlePublishedGridDailyDao.java

@ -18,6 +18,7 @@
package com.epmet.dao.stats;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.extract.result.PublishCountResultDTO;
import com.epmet.entity.stats.FactArticlePublishedAgencyDailyEntity;
import com.epmet.entity.stats.FactArticlePublishedGridDailyEntity;
import org.apache.ibatis.annotations.Mapper;
@ -51,4 +52,13 @@ public interface FactArticlePublishedGridDailyDao extends BaseDao<FactArticlePub
* @return
*/
int deleteByDateId(@Param("customerId") String customerId, @Param("dateId") String dateId);
/**
* @Description 查询网格下的文章发文数量
* @param customerId
* @param monthId
* @author zxc
* @date 2020/9/19 2:44 下午
*/
List<PublishCountResultDTO> selectArticlePublishCount(@Param("customerId")String customerId,@Param("monthId") String monthId);
}

33
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/FactIndexGovernAbilityGridMonthlyService.java

@ -0,0 +1,33 @@
package com.epmet.service.evaluationindex.extract;
import com.epmet.dto.extract.form.GovernAbilityGridMonthlyFormDTO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 治理能力-网格相关事实表
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-19
*/
public interface FactIndexGovernAbilityGridMonthlyService{
/**
* @Description 批量插入治理能力
* @param lists
* @author zxc
* @date 2020/9/19 4:28 下午
*/
void insertGovernAbilityRecord(@Param("lists") List<GovernAbilityGridMonthlyFormDTO> lists);
/**
* @Description 删除治理能力旧纪录
* @param customerId
* @param monthId
* @author zxc
* @date 2020/9/19 4:31 下午
*/
void deleteOldGovernAbilityRecord(@Param("customerId")String customerId,@Param("monthId")String monthId);
}

31
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/FactIndexPartyAbilityGridMonthlyService.java

@ -0,0 +1,31 @@
package com.epmet.service.evaluationindex.extract;
import com.epmet.dto.extract.form.PartyAbilityGridMonthlyFormDTO;
import java.util.List;
/**
* 党建能力-网格相关事实表
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-19
*/
public interface FactIndexPartyAbilityGridMonthlyService{
/**
* @Description 网格党建能力插入
* @param lists
* @author zxc
* @date 2020/9/19 10:32 上午
*/
void insertPartyAbility(List<PartyAbilityGridMonthlyFormDTO> lists);
/**
* @Description 删除旧的党建能力记录
* @param customerId
* @param monthId
* @author zxc
* @date 2020/9/19 10:45 上午
*/
void deleteOldPartyAbility(String customerId,String monthId);
}

11
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/FactIndexServiceAbilityGridMonthlyService.java

@ -0,0 +1,11 @@
package com.epmet.service.evaluationindex.extract;
/**
* 服务能力-网格相关事实表
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-19
*/
public interface FactIndexServiceAbilityGridMonthlyService{
}

14
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/GroupExtractService.java

@ -1,9 +1,23 @@
package com.epmet.service.evaluationindex.extract;
import com.epmet.dto.extract.result.PartyCreateGroupCountResultDTO;
import java.util.List;
/**
* @Desc 业务数据抽取 - 组相关
* @Author wangc
* @DateTime 2020/9/14 5:07 下午
*/
public interface GroupExtractService {
/**
* @Description 查询建群党员数
* @param customerId
* @param monthId
* @author zxc
* @date 2020/9/19 3:49 下午
*/
List<PartyCreateGroupCountResultDTO> selectPartyCreateGroupCount(String customerId,String monthId);
}

11
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/IssueExtractService.java

@ -3,6 +3,7 @@ package com.epmet.service.evaluationindex.extract;
import com.epmet.dto.extract.form.ExtractFormDTO;
import com.epmet.dto.extract.form.GridIssueCountResultDTO;
import com.epmet.dto.extract.result.GridProjectCountResultDTO;
import com.epmet.dto.extract.result.ShiftProjectCountResultDTO;
import java.util.List;
@ -69,4 +70,14 @@ public interface IssueExtractService {
* @Date 2020/9/18 14:11
**/
List<Map<String, Integer>> selectShiftProjectCount(String customerId, String monthId);
/**
* @Description 查询网格 党员/群众 人均提出的议题转项目数
* @param customerId
* @param monthId
* @param isParty
* @author zxc
* @date 2020/9/19 2:26 下午
*/
List<ShiftProjectCountResultDTO> selectShiftProjectCountPlus(String customerId, String monthId,Integer isParty);
}

152
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/CalGridIndexServiceImpl.java

@ -1,9 +1,8 @@
package com.epmet.service.evaluationindex.extract.impl;
import com.epmet.commons.dynamic.datasource.annotation.DataSource;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.constant.DataSourceConstant;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.constant.ExtractConstant;
import com.epmet.constant.ProjectEvaluateConstant;
import com.epmet.dao.evaluationindex.indexcoll.FactIndexGovrnAblityGridMonthlyDao;
@ -13,11 +12,13 @@ import com.epmet.dto.extract.form.GridIssueCountResultDTO;
import com.epmet.dto.extract.form.PartyAbilityGridMonthlyFormDTO;
import com.epmet.dto.extract.result.*;
import com.epmet.service.evaluationindex.extract.*;
import com.epmet.service.stats.FactArticlePublishedGridDailyService;
import com.epmet.service.stats.user.FactRegUserGridMonthlyService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.math.BigDecimal;
@ -33,15 +34,17 @@ import java.util.stream.Collectors;
*/
@Service
@Slf4j
@DataSource(DataSourceConstant.EVALUATION_INDEX)
//@DataSource(DataSourceConstant.EVALUATION_INDEX)
public class CalGridIndexServiceImpl implements CalGridIndexService {
@Autowired
private IssueExtractService issueExtractService;
@Autowired
private FactIndexGovrnAblityGridMonthlyDao governAbilityDao;
private FactIndexGovernAbilityGridMonthlyService governAbilityGridMonthlyService;
@Autowired
private FactIndexPartyAbilityGridMonthlyService partyAbilityGridMonthlyService;
@Autowired
private FactIndexPartyAblityGridMonthlyDao partyAbilityGridDao;
private FactIndexGovrnAblityGridMonthlyDao governAbilityDao;
@Autowired
private FactOriginProjectMainDailyService projectMainService;
@Autowired
@ -50,6 +53,10 @@ public class CalGridIndexServiceImpl implements CalGridIndexService {
private FactRegUserGridMonthlyService userGridMonthlyService;
@Autowired
private FactOriginTopicMainDailyService topicMainService;
@Autowired
private FactArticlePublishedGridDailyService articlePublishedGridDailyService;
@Autowired
private GroupExtractService groupExtractService;
/**
* @Description 计算网格指标党建能力
@ -70,11 +77,24 @@ public class CalGridIndexServiceImpl implements CalGridIndexService {
List<CreateTopicCountResultDTO> partyCreateTopicCountList = topicMainService.selectCreateTopicCount(customerId, monthId, NumConstant.ONE);
// 网格群众人均提出话题数
List<CreateTopicCountResultDTO> massCreateTopicCountList = topicMainService.selectCreateTopicCount(customerId, monthId, NumConstant.ZERO);
// 网格党员人均提出的议题转项目数
List<ShiftProjectCountResultDTO> partyShiftProjectCountList = issueExtractService.selectShiftProjectCountPlus(customerId, monthId, NumConstant.ONE);
// 网格群众人均提出的议题转项目数
List<ShiftProjectCountResultDTO> massShiftProjectCountList = issueExtractService.selectShiftProjectCountPlus(customerId, monthId, NumConstant.ZERO);
// 网格的发文数量
List<PublishCountResultDTO> publishCountList = articlePublishedGridDailyService.selectArticlePublishCount(customerId, monthId);
// 网格议题转项目率
List<GridIssueCountResultDTO> gridIssueTotalList = issueExtractService.selectIssueTotal(customerId, monthId);
List<GridProjectCountResultDTO> gridProjectTotalList = issueExtractService.selectGridProjectCount(customerId, monthId, ExtractConstant.SHIFT_PROJECT);
List<GridProjectCountResultDTO> gridIssueShiftProjectRatio = getGridIssueShiftProjectRatio(gridIssueTotalList, gridProjectTotalList);
// 建群党员数
List<PartyCreateGroupCountResultDTO> partyCreateGroupCountList = groupExtractService.selectPartyCreateGroupCount(customerId, monthId);
String quarterId = DateUtils.getQuarterId(monthId);
String yearId = DateUtils.getYearId(monthId);
result.forEach(r -> {
r.setMonthId(monthId);
r.setQuarterId(quarterId);
r.setYearId(yearId);
// 1. 网格群众用户数 , 网格党员用户数
if (!CollectionUtils.isEmpty(gridUserCountList)){
gridUserCountList.forEach(count -> {
@ -99,9 +119,48 @@ public class CalGridIndexServiceImpl implements CalGridIndexService {
}
});
}
// 4. 网格党员人均提出的议题转项目数
if (!CollectionUtils.isEmpty(partyShiftProjectCountList)){
partyShiftProjectCountList.forEach(party -> {
if (r.getGridId().equals(party.getGridId())){
r.setPartyAvgShiftProjectCount(party.getShiftProjectCount());
}
});
}
// 5. 网格群众人均提出的议题转项目数
if (!CollectionUtils.isEmpty(massShiftProjectCountList)){
massShiftProjectCountList.forEach(mass -> {
if (r.getGridId().equals(mass.getGridId())){
r.setPartyAvgShiftProjectCount(mass.getShiftProjectCount());
}
});
}
// 6. 网格的发文数量
if (!CollectionUtils.isEmpty(publishCountList)){
publishCountList.forEach(publish -> {
if (r.getGridId().equals(publish.getGridId())){
r.setPublishArticleCount(publish.getPublishCount());
}
});
}
// 7. 网格议题转项目率
if (!CollectionUtils.isEmpty(gridIssueShiftProjectRatio)){
gridIssueShiftProjectRatio.forEach(ratio -> {
if (r.getGridId().equals(ratio.getGridId())){
r.setIssueToProjectRatio(ratio.getIssueToProjectRatio());
}
});
}
// 8. 建群党员数
if (!CollectionUtils.isEmpty(partyCreateGroupCountList)){
partyCreateGroupCountList.forEach(party -> {
if (r.getGridId().equals(party.getGridId())){
r.setCreateGroupPartyCount(party.getPartyCreateGroupCount());
}
});
}
});
delAndInsertPartyAbility(result,customerId,monthId);
return true;
}
@ -124,15 +183,7 @@ public class CalGridIndexServiceImpl implements CalGridIndexService {
//网格总项目数
List<GridProjectCountResultDTO> gridProjectTotalList = issueExtractService.selectGridProjectCount(customerId, monthId, ExtractConstant.SHIFT_PROJECT);
//网格议题转项目率
if (!CollectionUtils.isEmpty(gridIssueTotalList) && !CollectionUtils.isEmpty(gridProjectTotalList)) {
gridProjectTotalList.forEach(project -> {
gridIssueTotalList.forEach(issue -> {
if (project.getGridId().equals(issue.getGridId())) {
project.setIssueToProjectRatio(getRound(new BigDecimal(project.getProjectTotal() / issue.getIssueTotal())));
}
});
});
}
List<GridProjectCountResultDTO> gridIssueShiftProjectRatio = getGridIssueShiftProjectRatio(gridIssueTotalList, gridProjectTotalList);
//网格自治项目数 从议题创建到项目关闭,包括处理人,自始至终没有出过议题所属网格
List<AutoNoMyResultDTO> projectAutoNoMyList = projectLogService.selectProjectAutoNoMy(customerId, monthId);
Map<String,Integer> autoMap = new HashMap<>(16);
@ -160,9 +211,9 @@ public class CalGridIndexServiceImpl implements CalGridIndexService {
List<GridProjectClosedTotalResultDTO> gridProjectClosedTotalList = projectMainService.selectGridClosedProject(customerId, monthId, ExtractConstant.CLOSED);
//网格吹哨部门准确率 【没被退回的项目数/项目总数 】
List<NotReturnProjectResultDTO> notReturnProjectList = projectLogService.selectNotReturnProject(customerId, monthId, ExtractConstant.RETURN_ACTION_CODE, ExtractConstant.GRID_ORG_TYPE);
if (!CollectionUtils.isEmpty(gridProjectTotalList) && !CollectionUtils.isEmpty(notReturnProjectList)){
if (!CollectionUtils.isEmpty(gridIssueShiftProjectRatio) && !CollectionUtils.isEmpty(notReturnProjectList)){
notReturnProjectList.forEach(not -> {
gridProjectTotalList.forEach(total -> {
gridIssueShiftProjectRatio.forEach(total -> {
if (not.getGridId().equals(total.getGridId())){
not.setTransferRightRatio(getRound(new BigDecimal(not.getNotReturnProject()/total.getProjectTotal())));
}
@ -202,8 +253,12 @@ public class CalGridIndexServiceImpl implements CalGridIndexService {
resultSatisfactionScore.put(gridId,getRound(new BigDecimal(allScore.get()/scoreMap.size())));
});
}
String quarterId = DateUtils.getQuarterId(monthId);
String yearId = DateUtils.getYearId(monthId);
result.forEach(r -> {
r.setMonthId(monthId);
r.setQuarterId(quarterId);
r.setYearId(yearId);
// 1. 网格总议题数目,网格人均议题数目
if (!CollectionUtils.isEmpty(gridIssueTotalList)) {
gridIssueTotalList.forEach(total -> {
@ -214,7 +269,7 @@ public class CalGridIndexServiceImpl implements CalGridIndexService {
}
// 2. 网格总项目数,网格议题转项目率
if (!CollectionUtils.isEmpty(gridIssueTotalList)){
gridProjectTotalList.forEach(projectTotal -> {
gridIssueShiftProjectRatio.forEach(projectTotal -> {
if (r.getGridId().equals(projectTotal.getGridId())){
r.setProjectTotal(projectTotal.getProjectTotal());
r.setIssueToProjectRatio(projectTotal.getIssueToProjectRatio());
@ -254,6 +309,7 @@ public class CalGridIndexServiceImpl implements CalGridIndexService {
});
}
});
delAndInsertGovernAbility(result,customerId,monthId);
return true;
}
@ -278,4 +334,52 @@ public class CalGridIndexServiceImpl implements CalGridIndexService {
public BigDecimal getRound(BigDecimal d){
return d.setScale(NumConstant.SIX, BigDecimal.ROUND_HALF_UP);
}
/**
* @Description
* @param gridIssueTotalList
* @param gridProjectTotalList
* @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 -> {
gridIssueTotalList.forEach(issue -> {
if (project.getGridId().equals(issue.getGridId())) {
project.setIssueToProjectRatio(getRound(new BigDecimal(project.getProjectTotal() / issue.getIssueTotal())));
}
});
});
}
return gridProjectTotalList;
}
/**
* @Description 删除并插入党建能力的记录
* @param result
* @author zxc
* @date 2020/9/19 4:06 下午
*/
@Transactional(rollbackFor = Exception.class)
public void delAndInsertPartyAbility(List<PartyAbilityGridMonthlyFormDTO> result,String customerId,String monthId){
if (!CollectionUtils.isEmpty(result)){
partyAbilityGridMonthlyService.deleteOldPartyAbility(customerId, monthId);
partyAbilityGridMonthlyService.insertPartyAbility(result);
}
}
/**
* @Description 删除并插入治理能力的记录
* @param result
* @author zxc
* @date 2020/9/19 4:06 下午
*/
@Transactional(rollbackFor = Exception.class)
public void delAndInsertGovernAbility(List<GovernAbilityGridMonthlyFormDTO> result,String customerId,String monthId){
if (!CollectionUtils.isEmpty(result)){
governAbilityGridMonthlyService.deleteOldGovernAbilityRecord(customerId, monthId);
governAbilityGridMonthlyService.insertGovernAbilityRecord(result);
}
}
}

37
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/FactIndexGovernAbilityGridMonthlyServiceImpl.java

@ -0,0 +1,37 @@
package com.epmet.service.evaluationindex.extract.impl;
import com.epmet.commons.dynamic.datasource.annotation.DataSource;
import com.epmet.constant.DataSourceConstant;
import com.epmet.dao.evaluationindex.indexcoll.FactIndexGovrnAblityGridMonthlyDao;
import com.epmet.dto.extract.form.GovernAbilityGridMonthlyFormDTO;
import com.epmet.service.evaluationindex.extract.FactIndexGovernAbilityGridMonthlyService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 治理能力-网格相关事实表
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-19
*/
@Service
@Slf4j
@DataSource(DataSourceConstant.EVALUATION_INDEX)
public class FactIndexGovernAbilityGridMonthlyServiceImpl implements FactIndexGovernAbilityGridMonthlyService {
@Autowired
private FactIndexGovrnAblityGridMonthlyDao governAbilityDao;
@Override
public void insertGovernAbilityRecord(List<GovernAbilityGridMonthlyFormDTO> lists) {
governAbilityDao.insertGovernAbilityRecord(lists);
}
@Override
public void deleteOldGovernAbilityRecord(String customerId, String monthId) {
governAbilityDao.deleteOldGovernAbilityRecord(customerId, monthId);
}
}

37
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/FactIndexPartyAbilityGridMonthlyServiceImpl.java

@ -0,0 +1,37 @@
package com.epmet.service.evaluationindex.extract.impl;
import com.epmet.commons.dynamic.datasource.annotation.DataSource;
import com.epmet.constant.DataSourceConstant;
import com.epmet.dao.evaluationindex.indexcoll.FactIndexPartyAblityGridMonthlyDao;
import com.epmet.dto.extract.form.PartyAbilityGridMonthlyFormDTO;
import com.epmet.service.evaluationindex.extract.FactIndexPartyAbilityGridMonthlyService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 党建能力-网格相关事实表
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-19
*/
@Service
@Slf4j
@DataSource(DataSourceConstant.EVALUATION_INDEX)
public class FactIndexPartyAbilityGridMonthlyServiceImpl implements FactIndexPartyAbilityGridMonthlyService {
@Autowired
private FactIndexPartyAblityGridMonthlyDao partyAbilityGridDao;
@Override
public void insertPartyAbility(List<PartyAbilityGridMonthlyFormDTO> lists) {
partyAbilityGridDao.insertPartyAbility(lists);
}
@Override
public void deleteOldPartyAbility(String customerId, String monthId) {
partyAbilityGridDao.deleteOldPartyAbility(customerId, monthId);
}
}

20
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/FactIndexServiceAbilityGridMonthlyServiceImpl.java

@ -0,0 +1,20 @@
package com.epmet.service.evaluationindex.extract.impl;
import com.epmet.commons.dynamic.datasource.annotation.DataSource;
import com.epmet.constant.DataSourceConstant;
import com.epmet.service.evaluationindex.extract.FactIndexServiceAbilityGridMonthlyService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
/**
* 服务能力-网格相关事实表
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2020-09-19
*/
@Service
@Slf4j
@DataSource(DataSourceConstant.EVALUATION_INDEX)
public class FactIndexServiceAbilityGridMonthlyServiceImpl implements FactIndexServiceAbilityGridMonthlyService {
}

19
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/GroupExtractServiceImpl.java

@ -1,9 +1,14 @@
package com.epmet.service.evaluationindex.extract.impl;
import com.epmet.dao.evaluationindex.extract.FactOriginGroupMainDailyDao;
import com.epmet.dto.extract.result.PartyCreateGroupCountResultDTO;
import com.epmet.service.evaluationindex.extract.GroupExtractService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @Description 业务数据抽取 - 组相关
* @ClassName GroupExtractServiceImpl
@ -14,4 +19,18 @@ import org.springframework.stereotype.Service;
@Slf4j
public class GroupExtractServiceImpl implements GroupExtractService {
@Autowired
private FactOriginGroupMainDailyDao groupMainDailyDao;
/**
* @Description 查询建群党员数
* @param customerId
* @param monthId
* @author zxc
* @date 2020/9/19 3:49 下午
*/
@Override
public List<PartyCreateGroupCountResultDTO> selectPartyCreateGroupCount(String customerId, String monthId) {
return groupMainDailyDao.selectPartyCreateGroupCount(customerId, monthId);
}
}

13
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/impl/IssueExtractServiceImpl.java

@ -293,4 +293,17 @@ public class IssueExtractServiceImpl implements IssueExtractService {
public List<Map<String, Integer>> selectShiftProjectCount(String customerId, String monthId) {
return issueMainDailyDao.selectShiftProjectCount(customerId,monthId);
}
/**
* @Description 查询网格 党员/群众 人均提出的议题转项目数
* @param customerId
* @param monthId
* @param isParty
* @author zxc
* @date 2020/9/19 2:26 下午
*/
@Override
public List<ShiftProjectCountResultDTO> selectShiftProjectCountPlus(String customerId, String monthId, Integer isParty) {
return issueMainDailyDao.selectShiftProjectCountPlus(customerId, monthId, isParty);
}
}

4
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcoll/impl/IndexCollCommunityServiceImpl.java

@ -44,8 +44,8 @@ public class IndexCollCommunityServiceImpl implements IndexCollCommunityService
//被吹哨次数统计
List<OrgStatisticsResultDTO> transferCount = factOriginProjectLogDailyService.getAgencyTransferCount(dimId.getMonthId(), "community");
//社区项目响应度
List<OrgStatisticsResultDTO> responsiveness = factOriginProjectOrgPeriodDailyDao.selectResponsiveness(dimId.getMonthId(), "community",
"agency");
// List<OrgStatisticsResultDTO> responsiveness = factOriginProjectOrgPeriodDailyDao.selectResponsiveness(dimId.getMonthId(), "community",
// "agency");
//社区超期项目率
List<OrgStatisticsResultDTO> overdueCount = factOriginProjectMainDailyService.getOverdueCount(dimId.getMonthId());
//社区办结项目满意度

10
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/FactArticlePublishedGridDailyService.java

@ -18,6 +18,7 @@
package com.epmet.service.stats;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.dto.extract.result.PublishCountResultDTO;
import com.epmet.entity.stats.FactArticlePublishedAgencyDailyEntity;
import com.epmet.entity.stats.FactArticlePublishedGridDailyEntity;
@ -55,5 +56,12 @@ public interface FactArticlePublishedGridDailyService extends BaseService<FactAr
*/
boolean deleteAndInsertBatch(String customerId, String dateId, Collection<FactArticlePublishedGridDailyEntity> values);
/**
* @Description 查询网格下的文章发文数量
* @param customerId
* @param monthId
* @author zxc
* @date 2020/9/19 2:44 下午
*/
List<PublishCountResultDTO> selectArticlePublishCount(String customerId, String monthId);
}

13
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/stats/impl/FactArticlePublishedGridDailyServiceImpl.java

@ -23,6 +23,7 @@ import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.constant.DataSourceConstant;
import com.epmet.dao.stats.FactArticlePublishedGridDailyDao;
import com.epmet.dto.extract.result.PublishCountResultDTO;
import com.epmet.entity.stats.FactArticlePublishedAgencyDailyEntity;
import com.epmet.entity.stats.FactArticlePublishedGridDailyEntity;
import com.epmet.service.stats.FactArticlePublishedGridDailyService;
@ -67,4 +68,16 @@ public class FactArticlePublishedGridDailyServiceImpl extends BaseServiceImpl<Fa
this.insertBatch(values, 100);
return true;
}
/**
* @Description 查询网格下的文章发文数量
* @param customerId
* @param monthId
* @author zxc
* @date 2020/9/19 2:44 下午
*/
@Override
public List<PublishCountResultDTO> selectArticlePublishCount(String customerId, String monthId) {
return baseDao.selectArticlePublishCount(customerId, monthId);
}
}

38
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginGroupMainDailyDao.xml

@ -3,31 +3,19 @@
<mapper namespace="com.epmet.dao.evaluationindex.extract.FactOriginGroupMainDailyDao">
<resultMap type="com.epmet.entity.evaluationindex.extract.FactOriginGroupMainDailyEntity" id="factOriginGroupMainDailyMap">
<result property="id" column="ID"/>
<result property="customerId" column="CUSTOMER_ID" />
<result property="groupState" column="GROUP_STATE"/>
<result property="gridId" column="GRID_ID"/>
<result property="agencyId" column="AGENCY_ID"/>
<result property="parentId" column="PARENT_ID"/>
<result property="pids" column="PIDS"/>
<result property="dateId" column="DATE_ID"/>
<result property="weekId" column="WEEK_ID"/>
<result property="monthId" column="MONTH_ID"/>
<result property="quarterId" column="QUARTER_ID"/>
<result property="yearId" column="YEAR_ID"/>
<result property="resiMemberCount" column="RESI_MEMBER_COUNT"/>
<result property="memberTotal" column="MEMBER_TOTAL"/>
<result property="groupOwnerId" column="GROUP_OWNER_ID"/>
<result property="isOwnerHearted" column="IS_OWNER_HEARTED"/>
<result property="isOwnerParty" column="IS_OWNER_PARTY"/>
<result property="delFlag" column="DEL_FLAG"/>
<result property="revision" column="REVISION"/>
<result property="createdBy" column="CREATED_BY"/>
<result property="createdTime" column="CREATED_TIME"/>
<result property="updatedBy" column="UPDATED_BY"/>
<result property="updatedTime" column="UPDATED_TIME"/>
</resultMap>
<!-- 查询建群党员数 -->
<select id="selectPartyCreateGroupCount" resultType="com.epmet.dto.extract.result.PartyCreateGroupCountResultDTO">
SELECT
GRID_ID,
COUNT( ID ) AS partyCreateGroupCount
FROM
fact_origin_group_main_daily
WHERE
DEL_FLAG = '0'
AND CUSTOMER_ID = #{customerId}
AND MONTH_ID = #{monthId}
GROUP BY GRID_ID
</select>
</mapper>

19
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginIssueMainDailyDao.xml

@ -72,10 +72,7 @@
SELECT
COUNT( ID ) AS issueTotal,
ROUND((COUNT(ID) / COUNT(DISTINCT(USER_ID))),0) AS avgIssueCount,
GRID_ID,
MONTH_ID,
QUARTER_ID,
YEAR_ID
GRID_ID
FROM
fact_origin_issue_main_daily
WHERE
@ -134,4 +131,18 @@
GROUP BY
T1.CREATE_TOPIC_USER_ID
</select>
<!-- 查询网格 党员/群众 人均提出的议题转项目数 -->
<select id="selectShiftProjectCountPlus" resultType="com.epmet.dto.extract.result.ShiftProjectCountResultDTO">
SELECT
ROUND((COUNT(ID) / COUNT(DISTINCT(OPERATION_USER_ID))),0) AS shiftProjectCount,
GRID_ID
FROM fact_origin_issue_log_daily
WHERE DEL_FLAG = 0
AND ACTION_CODE = 'shift_project'
AND CUSTOMER_ID = #{customerId}
AND MONTH_ID = #{monthId}
AND IS_PARTY = #{isParty}
GROUP BY GRID_ID
</select>
</mapper>

60
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/indexcoll/FactIndexGovrnAblityGridMonthlyDao.xml

@ -187,4 +187,64 @@
DEL_FLAG = 0
AND CUSTOMER_ID = #{customerId}
</select>
<!-- 批量插入治理能力 -->
<insert id="insertGovernAbilityRecord">
INSERT INTO fact_index_govrn_ablity_grid_monthly (
ID,
CUSTOMER_ID,
AGENCY_ID,
GRID_ID,
MONTH_ID,
QUARTER_ID,
YEAR_ID,
ISSUE_TOTAL,
AVG_ISSUE_COUNT,
ISSUE_TO_PROJECT_RATIO,
PROJECT_TOTAL,
SELF_SOLVE_PROJECT_COUNT,
RESOLVE_PROJECT_COUNT,
TRANSFER_RIGHT_RATIO,
SATISFACTION_RATIO,
DEL_FLAG,
REVISION,
CREATED_BY,
CREATED_TIME,
UPDATED_BY,
UPDATED_TIME
)
VALUES
<foreach collection="lists" item="item" separator=",">
(
REPLACE ( UUID(), '-', '' ),
#{item.customerId},
#{item.agencyId},
#{item.gridId},
#{item.monthId},
#{item.quarterId},
#{item.yearId},
#{item.issueTotal},
#{item.avgIssueCount},
#{item.issueToProjectRatio},
#{item.projectTotal},
#{item.selfSolveProjectCount},
#{item.resolveProjectCount},
#{item.transferRightRatio},
#{item.satisfactionRatio},
#{item.delFlag},
#{item.revision},
#{item.createdBy},
NOW(),
#{item.updatedBy},
NOW()
)
</foreach>
</insert>
<!-- 删除治理能力旧纪录 -->
<delete id="deleteOldGovernAbilityRecord">
DELETE FROM fact_index_govrn_ablity_grid_monthly
WHERE CUSTOMER_ID = #{customerId}
AND MONTH_ID = #{monthId}
</delete>
</mapper>

12
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactArticlePublishedGridDailyDao.xml

@ -41,5 +41,17 @@
DELETE FROM fact_article_published_grid_daily WHERE CUSTOMER_ID = #{customerId,jdbcType=VARCHAR} AND DATE_ID = #{dateId,jdbcType=VARCHAR}
</delete>
<!-- 查询网格下的文章发文数量 -->
<select id="selectArticlePublishCount" resultType="com.epmet.dto.extract.result.PublishCountResultDTO">
SELECT
SUM(PUBLISHED_COUNT) AS publishCount,
GRID_ID
FROM fact_article_published_grid_daily
WHERE DEL_FLAG = 0
AND CUSTOMER_ID = #{customerId}
AND MONTH_ID = #{monthId}
GROUP BY GRID_ID
</select>
</mapper>

5
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/user/FactRegUserGridMonthlyDao.xml

@ -111,10 +111,7 @@
SELECT
REG_INCR,
PARTYMEMBER_INCR,
GRID_ID,
MONTH_ID,
QUARTER_ID,
YEAR_ID
GRID_ID
FROM
fact_reg_user_grid_monthly
WHERE

Loading…
Cancel
Save