Browse Source

基层治理-红点修改

dev_shibei_match
yinzuomei 5 years ago
parent
commit
4af252cd09
  1. 26
      epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/RedDotDetialDTO.java
  2. 1
      epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/RedDotResultDTO.java
  3. 3
      epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/RemindController.java
  4. 10
      epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/RemindService.java
  5. 141
      epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/RemindServiceImpl.java
  6. 9
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java
  7. 23
      epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java
  8. 44
      epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml
  9. 9
      epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/service/impl/StaffAgencyServiceImpl.java
  10. 10
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/dao/ResiGroupDao.java
  11. 31
      epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java
  12. 44
      epmet-module/resi-group/resi-group-server/src/main/resources/mapper/group/ResiGroupDao.xml
  13. 11
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/PartymemberInfoDao.java
  14. 7
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java
  15. 21
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartymemberInfoServiceImpl.java
  16. 11
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/dao/ResiWarmheartedApplyDao.java
  17. 19
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java
  18. 19
      epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartymemberInfoDao.xml
  19. 18
      epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/warmhearted/ResiWarmheartedApplyDao.xml

26
epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/RedDotDetialDTO.java

@ -0,0 +1,26 @@
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
/**
* 描述一下
*
* @author yinzuomei@elink-cn.com
* @date 2020/12/25 13:46
*/
@Data
public class RedDotDetialDTO implements Serializable {
private static final long serialVersionUID = 115845734341321201L;
private String key;
private Long count;
public RedDotDetialDTO() {
}
public RedDotDetialDTO(String key, Long count) {
this.key = key;
this.count = count;
}
}

1
epmet-module/gov-grid/gov-grid-client/src/main/java/com/epmet/dto/result/RedDotResultDTO.java

@ -24,5 +24,6 @@ public class RedDotResultDTO implements Serializable {
* 需要显示的功能key群组管理work_grassroots_group居民管理work_grassroots_resi党员认证work_grassroots_partyauth议题管理work_grassroots_issue
*/
private List<String> functionList;
private List<RedDotDetialDTO> details;
}

3
epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/RemindController.java

@ -32,7 +32,8 @@ public class RemindController {
public Result<RedDotResultDTO> queryGridRedDot(@LoginUser TokenDto tokenDto, @RequestBody RedDotFormDTO formDTO){
formDTO.setStaffId(tokenDto.getUserId());
ValidatorUtils.validateEntity(formDTO);
RedDotResultDTO redDotResultDTO=remindService.queryGridRedDot(formDTO);
// RedDotResultDTO redDotResultDTO=remindService.queryGridRedDot(formDTO);
RedDotResultDTO redDotResultDTO=remindService.queryGridRedDotV2(formDTO);
return new Result<RedDotResultDTO>().ok(redDotResultDTO);
}

10
epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/RemindService.java

@ -18,7 +18,17 @@ public interface RemindService {
* @Description 根据网格id查询基层治理下网格各功能菜单是否显示红点以及除当前网格外其他网格是否有待办事项
* @Date 2020/5/13 14:34
**/
@Deprecated
RedDotResultDTO queryGridRedDot(RedDotFormDTO formDTO);
TestResultDTO1 test(TestFormDTO1 testFormDTO1);
/**
* @return com.epmet.dto.result.RedDotResultDTO
* @param formDTO
* @author yinzuomei
* @description 根据网格id查询基层治理下网格各功能菜单是否显示红点以及除当前网格外其他网格是否有待办事项
* @Date 2020/12/25 10:49
**/
RedDotResultDTO queryGridRedDotV2(RedDotFormDTO formDTO);
}

141
epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/RemindServiceImpl.java

@ -6,19 +6,19 @@ import com.epmet.constant.WorkGrassRootsFunctionConstant;
import com.epmet.controller.TestFormDTO1;
import com.epmet.controller.TestResultDTO1;
import com.epmet.dto.form.RedDotFormDTO;
import com.epmet.dto.result.CustomerGridByUserIdResultDTO;
import com.epmet.dto.result.GridAuditingBadgeCountResultDTO;
import com.epmet.dto.result.GridProcessingCountResultDTO;
import com.epmet.dto.result.RedDotResultDTO;
import com.epmet.dto.result.*;
import com.epmet.feign.*;
import com.epmet.service.RemindService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
/**
* @Description 基层治理待办事项提醒
@ -48,10 +48,16 @@ public class RemindServiceImpl implements RemindService {
public RedDotResultDTO queryGridRedDot(RedDotFormDTO formDTO) {
RedDotResultDTO redDotResultDTO = new RedDotResultDTO();
redDotResultDTO.setOtherGridRedDot(false);
//当前基层治理以下图标需要显示红点提醒
//1、群组管理(待审核的小组申请、变更小组申请)
//2、居民管理(待审核的热心居民申请)
//3、党员认证(待审核的认证党员申请)
//4、议题管理(待审核的议题、表决中的议题)
//5、徽章审核(待审核的徽章)
redDotResultDTO.setFunctionList(getRedDotFunctionList(formDTO.getGridId()));
Result<List<CustomerGridByUserIdResultDTO>> govOrgResult = govOrgFeignClient.getMyGrids(formDTO.getStaffId());
if (!govOrgResult.success()) {
logger.error(String.format("调用gov-org-server服务查询工作人员网格列表失败返回结果", govOrgResult.toString()));
logger.warn(String.format("调用gov-org-server服务查询工作人员网格列表失败返回结果", govOrgResult.toString()));
}else{
List<CustomerGridByUserIdResultDTO> gridList = govOrgResult.getData();
logger.info("我的网格列表"+gridList.size());
@ -76,18 +82,23 @@ public class RemindServiceImpl implements RemindService {
List<String> functionList = new ArrayList<>();
List<String> gridIdList = new ArrayList<>();
gridIdList.add(gridId);
//1、群组管理(待审核的小组申请、变更小组申请)
if (this.getWorkGrassRootsGroup(gridIdList)) {
functionList.add(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_GROUP);
}
//2、居民管理(待审核的热心居民申请)
if (this.getWorkGrassRootsResi(gridIdList)) {
functionList.add(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_RESI);
}
//3、党员认证(待审核的认证党员申请)
if (this.getWorkGrassRootsPartyAuth(gridIdList)) {
functionList.add(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_PARTYAUTH);
}
//4、议题管理(待审核的议题、表决中的议题)
if (this.getWorkGrassRootsIssue(gridIdList)) {
functionList.add(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_ISSUE);
}
//5、徽章审核(待审核的徽章)
if(this.getWorkGrassRootsBadge(gridIdList)){
functionList.add(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_BADGE);
}
@ -108,7 +119,7 @@ public class RemindServiceImpl implements RemindService {
}
}
}else{
logger.error(String.format("查询群组管理待办事项数失败,%s",groupProcessingCountResult.getMsg()));
logger.warn(String.format("查询群组管理待办事项数失败,%s",groupProcessingCountResult.getMsg()));
}
return false;
}
@ -126,7 +137,7 @@ public class RemindServiceImpl implements RemindService {
}
}
} else {
logger.error(String.format("查询网格内待审核热心居民数失败,%s",resiGroupProcessingCountResult.getMsg()));
logger.warn(String.format("查询网格内待审核热心居民数失败,%s",resiGroupProcessingCountResult.getMsg()));
}
return false;
}
@ -144,7 +155,7 @@ public class RemindServiceImpl implements RemindService {
}
}
}else{
logger.error(String.format("查询网格内待审核党员总数失败,%s",partyMemberProcessingCountResult.getMsg()));
logger.warn(String.format("查询网格内待审核党员总数失败,%s",partyMemberProcessingCountResult.getMsg()));
}
return false;
}
@ -162,7 +173,7 @@ public class RemindServiceImpl implements RemindService {
}
}
}else{
logger.error("查询网格表决中议题总数失败,%s",issueResult.getMsg());
logger.warn("查询网格表决中议题总数失败,%s",issueResult.getMsg());
}
return false;
}
@ -179,7 +190,7 @@ public class RemindServiceImpl implements RemindService {
}
}
}else{
logger.error(String.format("查询网格待审核徽章申请失败,%s",badgeResult.getMsg()));
logger.warn(String.format("查询网格待审核徽章申请失败,%s",badgeResult.getMsg()));
}
return false;
}
@ -192,5 +203,115 @@ public class RemindServiceImpl implements RemindService {
}
return new TestResultDTO1();
}
/**
* @param formDTO
* @return com.epmet.dto.result.RedDotResultDTO
* @author yinzuomei
* @description 根据网格id查询基层治理下网格各功能菜单是否显示红点以及除当前网格外其他网格是否有待办事项
* @Date 2020/12/25 10:49
**/
@Override
public RedDotResultDTO queryGridRedDotV2(RedDotFormDTO formDTO) {
RedDotResultDTO redDotResultDTO = new RedDotResultDTO();
redDotResultDTO.setOtherGridRedDot(false);
redDotResultDTO.setFunctionList(Collections.EMPTY_LIST);
Result<List<CustomerGridByUserIdResultDTO>> govOrgResult = govOrgFeignClient.getMyGrids(formDTO.getStaffId());
if (govOrgResult.success() && !CollectionUtils.isEmpty(govOrgResult.getData())) {
List<String> functionList = new ArrayList<>();
List<RedDotDetialDTO> details = new ArrayList<>();
List<String> gridIdList = govOrgResult.getData().stream().map(CustomerGridByUserIdResultDTO::getGridId).collect(Collectors.toList());
//1、群组管理(待审核的小组申请、变更小组申请)
Result<List<GridProcessingCountResultDTO>> groupResult = resiGroupFeignClient.queryGroupProcessingCount(gridIdList);
if (groupResult.success() && !CollectionUtils.isEmpty(groupResult.getData())) {
groupResult.getData().forEach(groupDto -> {
//当前网格
if (formDTO.getGridId().equals(groupDto.getGridId()) && groupDto.getCount() > 0) {
functionList.add(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_GROUP);
details.add(new RedDotDetialDTO(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_GROUP, groupDto.getCount()));
}
//其他网格
if (!formDTO.getGridId().equals(groupDto.getGridId()) && groupDto.getCount() > 0) {
redDotResultDTO.setOtherGridRedDot(true);
}
});
}
//2、居民管理(待审核的热心居民申请)
Result<List<GridProcessingCountResultDTO>> resiResult = resiPartymemberFeignClient.queryResiProcessingCount(gridIdList);
if (resiResult.success() && !CollectionUtils.isEmpty(resiResult.getData())) {
resiResult.getData().forEach(resiDto -> {
//当前网格
if (formDTO.getGridId().equals(resiDto.getGridId()) && resiDto.getCount() > 0) {
functionList.add(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_RESI);
details.add(new RedDotDetialDTO(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_RESI, resiDto.getCount()));
}
//其他网格
if (!formDTO.getGridId().equals(resiDto.getGridId()) && resiDto.getCount() > 0) {
redDotResultDTO.setOtherGridRedDot(true);
}
});
}
//3、党员认证(待审核的认证党员申请)
Result<List<GridProcessingCountResultDTO>> partyResult = resiPartymemberFeignClient.queryPartyMemberProcessingCount(gridIdList);
if (partyResult.success() && !CollectionUtils.isEmpty(partyResult.getData())) {
partyResult.getData().forEach(partyDto -> {
//当前网格
if (formDTO.getGridId().equals(partyDto.getGridId()) && partyDto.getCount() > 0) {
functionList.add(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_PARTYAUTH);
details.add(new RedDotDetialDTO(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_PARTYAUTH, partyDto.getCount()));
}
//其他网格
if (!formDTO.getGridId().equals(partyDto.getGridId()) && partyDto.getCount() > 0) {
redDotResultDTO.setOtherGridRedDot(true);
}
});
}
//4、议题管理(待审核的议题、表决中的议题)
Result<List<GridProcessingCountResultDTO>> issueResult = govIssueFeignClient.queryVotingIssueCount(gridIdList);
if (issueResult.success() && !CollectionUtils.isEmpty(issueResult.getData())) {
issueResult.getData().forEach(issueDto -> {
//当前网格
if (formDTO.getGridId().equals(issueDto.getGridId()) && issueDto.getCount() > 0) {
functionList.add(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_ISSUE);
details.add(new RedDotDetialDTO(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_ISSUE, issueDto.getCount()));
}
//其他网格
if (!formDTO.getGridId().equals(issueDto.getGridId()) && issueDto.getCount() > 0) {
redDotResultDTO.setOtherGridRedDot(true);
}
});
}
//5、徽章审核(待审核的徽章)
Result<List<GridAuditingBadgeCountResultDTO>> badgeResult = epmetUserOpenFeignClient.queryGridAuditingBadgeCount(gridIdList);
if (badgeResult.success() && !CollectionUtils.isEmpty(badgeResult.getData())) {
badgeResult.getData().forEach(badgeDto -> {
//当前网格
if (formDTO.getGridId().equals(badgeDto.getGridId()) && badgeDto.getCount() > 0) {
functionList.add(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_BADGE);
details.add(new RedDotDetialDTO(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_BADGE, badgeDto.getCount()));
}
//其他网格
if (!formDTO.getGridId().equals(badgeDto.getGridId()) && badgeDto.getCount() > 0) {
redDotResultDTO.setOtherGridRedDot(true);
}
});
}
redDotResultDTO.setFunctionList(functionList);
redDotResultDTO.setDetails(details);
} else {
logger.warn(String.format("基层治理红点查询,获取工作人员所属网格失败,当前staffId=%s", formDTO.getStaffId()));
}
return redDotResultDTO;
}
}

9
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java

@ -207,4 +207,13 @@ public interface IssueDao extends BaseDao<IssueEntity> {
* @return java.util.List<com.epmet.entity.IssueEntity>
*/
List<GroupClosedListResultDTO> selectClosedListByTopic(AllIssueFormDTO formDTO);
/**
* @return java.util.List<com.epmet.dto.result.GridVotingIssueCountResultDTO>
* @param gridIdList
* @author yinzuomei
* @description 返回各个网格内待审核+表决中议题总数
* @Date 2020/12/25 14:12
**/
List<GridVotingIssueCountResultDTO> selectIssueRedDot(@Param("gridIdList") List<String> gridIdList);
}

23
epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java

@ -196,19 +196,10 @@ public class IssueServiceImpl extends BaseServiceImpl<IssueDao, IssueEntity> imp
@Override
public List<GridVotingIssueCountResultDTO> queryVotingIssueCount(List<String> gridIdList) {
List<GridVotingIssueCountResultDTO> list = new ArrayList<>();
for (String gridId : gridIdList) {
GridVotingIssueCountResultDTO gridVotingIssueCountResultDTO = new GridVotingIssueCountResultDTO();
gridVotingIssueCountResultDTO.setGridId(gridId);
Integer auditingCount = govIssueRedis.queryVotingIssueCount(gridId);
if (null == auditingCount) {
gridVotingIssueCountResultDTO.setCount(0);
} else {
gridVotingIssueCountResultDTO.setCount(auditingCount);
}
list.add(gridVotingIssueCountResultDTO);
}
return list;
if(CollectionUtils.isEmpty(gridIdList)){
return Collections.EMPTY_LIST;
}
return baseDao.selectIssueRedDot(gridIdList);
}
@Override
@ -293,8 +284,6 @@ public class IssueServiceImpl extends BaseServiceImpl<IssueDao, IssueEntity> imp
voteInitCache.setIssueId(issueDTO.getId());
voteInitCache.setShouldVoteCount(issueShiftedFromTopicFormDTO.getVotableCount());
issueVoteDetailRedis.set(voteInitCache);
//4.该网格下表决中议题总数量+1
govIssueRedis.addWorkGrassrootsIssueRedDotValue(issueShiftedFromTopicFormDTO.getGridId());
if(StringUtils.isNotBlank(issueShiftedFromTopicFormDTO.getIssueId())) issueDTO.setId(issueShiftedFromTopicFormDTO.getIssueId());
return issueDTO.getId();
@ -692,8 +681,6 @@ public class IssueServiceImpl extends BaseServiceImpl<IssueDao, IssueEntity> imp
logger.error("议题关闭,推送微信订阅消息失败!");
}
//5:缓存中网格下表决中的议题总数减1
govIssueRedis.subtractWorkGrassrootsIssueRedDotValue(entity.getGridId());
try {
issueVoteStatisticalService.syncVotingCacheToDbByParams(formDTO.getIssueId(),entity.getGridId(),null);
}catch (RenException e){
@ -870,8 +857,6 @@ public class IssueServiceImpl extends BaseServiceImpl<IssueDao, IssueEntity> imp
logger.error("议题转项目,推送微信订阅消息失败!");
}
//6:缓存中网格下表决中的议题总数减1
govIssueRedis.subtractWorkGrassrootsIssueRedDotValue(entity.getGridId());
try{
issueVoteStatisticalService.syncVotingCacheToDbByParams(formDTO.getIssueId(),entity.getGridId(),null);
}catch(RenException e){

44
epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml

@ -513,4 +513,48 @@
</foreach>
ORDER BY CREATED_TIME DESC
</select>
<select id="selectIssueRedDot" parameterType="map" resultType="com.epmet.dto.result.GridVotingIssueCountResultDTO">
SELECT
temp.gridId,
sum( total ) AS count
FROM
(
SELECT
i.GRID_ID AS gridId,
count(*) AS total
FROM
issue i
WHERE
i.DEL_FLAG = '0'
AND i.ISSUE_STATUS = 'voting'
<if test="gridIdList!=null and gridIdList.size()!=0">
AND i.GRID_ID in
<foreach collection="gridIdList" item="gridId" open="(" close=")" separator=",">
#{gridId}
</foreach>
</if>
GROUP BY
i.GRID_ID
UNION ALL
SELECT
ia.GRID_ID AS gridId,
count(*) AS total
FROM
issue_application ia
WHERE
ia.DEL_FLAG = '0'
AND ia.APPLY_STATUS = 'under_auditing'
<if test="gridIdList!=null and gridIdList.size()!=0">
AND ia.GRID_ID in
<foreach collection="gridIdList" item="gridId" open="(" close=")" separator=",">
#{gridId}
</foreach>
</if>
GROUP BY
ia.GRID_ID
) temp
GROUP BY
temp.gridId
</select>
</mapper>

9
epmet-module/gov-mine/gov-mine-server/src/main/java/com/epmet/service/impl/StaffAgencyServiceImpl.java

@ -20,7 +20,6 @@ package com.epmet.service.impl;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.constant.StaffAgencyConstant;
import com.epmet.dto.form.LatestGridFormDTO;
import com.epmet.dto.form.StaffGridVisitedFormDTO;
import com.epmet.dto.form.SwitchGridFormDTO;
@ -91,19 +90,19 @@ public class StaffAgencyServiceImpl implements StaffAgencyService {
for (StaffGridResultDTO staffGridInfo : gridList) {
if (this.checkGroupProcessing(staffGridInfo.getGridId(), groupProcessingList)) {
staffGridInfo.setRedDot(true);
break;
continue;
}
if (this.checkResiProcessing(staffGridInfo.getGridId(), resiProcessingList)) {
staffGridInfo.setRedDot(true);
break;
continue;
}
if (this.checkPartyMemberProcessing(staffGridInfo.getGridId(), partyMemberProcessingList)) {
staffGridInfo.setRedDot(true);
break;
continue;
}
if (this.checkIssueProcessing(staffGridInfo.getGridId(), issueProcessingList)) {
staffGridInfo.setRedDot(true);
break;
continue;
}
}
return gridList;

10
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/dao/ResiGroupDao.java

@ -19,6 +19,7 @@ package com.epmet.modules.group.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.modules.group.entity.ResiGroupEntity;
import com.epmet.resi.group.dto.group.GroupProcessingCountResultDTO;
import com.epmet.resi.group.dto.group.ResiGroupDTO;
import com.epmet.resi.group.dto.group.form.*;
import com.epmet.resi.group.dto.group.result.*;
@ -226,4 +227,13 @@ public interface ResiGroupDao extends BaseDao<ResiGroupEntity> {
* @Date 2020/11/23 10:07
**/
List<ResiGroupDTO> selectListByIds(@Param("groupIds") List<String> groupIds);
/**
* @return java.util.List<com.epmet.resi.group.dto.group.GroupProcessingCountResultDTO>
* @param gridIdList
* @author yinzuomei
* @description 根据网格id查询返回每个网格的待审核小组总数+变更小组信息申请数
* @Date 2020/12/25 13:18
**/
List<GroupProcessingCountResultDTO> queryGroupProcessingCount(@Param("gridIdList") List<String> gridIdList);
}

31
epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java

@ -28,10 +28,6 @@ import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.user.LoginUserUtil;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.scan.param.ImgScanParamDTO;
import com.epmet.commons.tools.scan.param.ImgTaskDTO;
import com.epmet.commons.tools.scan.param.TextScanParamDTO;
@ -75,8 +71,8 @@ import com.epmet.resi.group.dto.group.result.*;
import com.epmet.resi.group.dto.member.GroupMemeberOperationDTO;
import com.epmet.resi.group.dto.member.ResiGroupMemberDTO;
import com.epmet.resi.group.dto.member.ResiGroupMemberInfoRedisDTO;
import com.github.pagehelper.PageHelper;
import com.epmet.resi.group.dto.member.form.EditAuditSwitchFormDTO;
import com.github.pagehelper.PageHelper;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -461,8 +457,6 @@ public class ResiGroupServiceImpl extends BaseServiceImpl<ResiGroupDao, ResiGrou
resiGroupStatisticalService.save(resiGroupStatisticalDTO);
//发送消息:创建小组
sendMsgResi2Gov(UserMessageConstant.CREATE_GROUP_APPLYING_MSG_TITLE,msg,applyCreateGroupFormDTO.getGridId(),applyCreateGroupFormDTO.getUserId(),applyCreateGroupFormDTO.getCustomerId());
//更新政府端:工作-基层治理-群组管理reddot
resiGroupRedis.addWorkGrassrootsGroupRedDotValue(applyCreateGroupFormDTO.getGridId());
}
@ -642,8 +636,6 @@ public class ResiGroupServiceImpl extends BaseServiceImpl<ResiGroupDao, ResiGrou
List<WxSubscribeMessageFormDTO> msgList = new ArrayList<>();
msgList.add(wxSubscribeMessageFormDTO);
epmetMessageOpenFeignClient.sendWxSubscribeMessage(msgList);
//更新政府端:工作-基层治理-党员认证reddot
resiGroupRedis.subtractWorkGrassrootsPartyAuthRedDotValue(resiGroupDTO.getGridId());
return new Result();
}
@ -702,8 +694,6 @@ public class ResiGroupServiceImpl extends BaseServiceImpl<ResiGroupDao, ResiGrou
msgList.add(wxSubscribeMessageFormDTO);
epmetMessageOpenFeignClient.sendWxSubscribeMessage(msgList);
//更新政府端:工作-基层治理-党员认证reddot
resiGroupRedis.subtractWorkGrassrootsPartyAuthRedDotValue(resiGroupDTO.getGridId());
return new Result();
}
@ -908,21 +898,10 @@ public class ResiGroupServiceImpl extends BaseServiceImpl<ResiGroupDao, ResiGrou
@Override
public List<GroupProcessingCountResultDTO> queryGroupProcessingCount(List<String> gridIdList) {
List<GroupProcessingCountResultDTO> list=new ArrayList<>();
for(String gridId:gridIdList){
GroupProcessingCountResultDTO resultDTO=new GroupProcessingCountResultDTO();
resultDTO.setGridId(gridId);
Integer auditingCreateGroupCount=Optional.ofNullable(resiGroupRedis.getWorkGrassrootsGroupRedDotValue(gridId)).orElse(NumConstant.ZERO);
Integer auditingGroupEditRecordCount=Optional.ofNullable(groupEditSubmitRecordDao.selectCountAuditingRec(gridId)).orElse(NumConstant.ZERO);
Integer auditingCount=auditingCreateGroupCount+auditingGroupEditRecordCount;
if (null == auditingCount) {
resultDTO.setCount(0);
} else {
resultDTO.setCount(auditingCount);
}
list.add(resultDTO);
if(CollectionUtils.isEmpty(gridIdList)){
return Collections.EMPTY_LIST;
}
return list;
return baseDao.queryGroupProcessingCount(gridIdList);
}
@ -1230,7 +1209,6 @@ public class ResiGroupServiceImpl extends BaseServiceImpl<ResiGroupDao, ResiGrou
throw new RenException(EpmetErrorCode.GROUP_EDIT_ERROR.getCode(), EpmetErrorCode.GROUP_EDIT_ERROR.getMsg());
}
resiGroupRedis.addWorkGrassrootsGroupRedDotValue(group.getGridId());
}
@ -1417,7 +1395,6 @@ public class ResiGroupServiceImpl extends BaseServiceImpl<ResiGroupDao, ResiGrou
_update.setId(param.getGroupId());
baseDao.updateById(_update);
}
resiGroupRedis.subtractWorkGrassrootsPartyAuthRedDotValue(edit.getGridId());
resiGroupRedis.delGroup(param.getGroupId());
}

44
epmet-module/resi-group/resi-group-server/src/main/resources/mapper/group/ResiGroupDao.xml

@ -470,4 +470,48 @@
</foreach>
</if>
</select>
<!-- 根据网格id查询,返回每个网格的待审核小组总数+变更小组信息申请数 -->
<select id="queryGroupProcessingCount" parameterType="map" resultType="com.epmet.resi.group.dto.group.GroupProcessingCountResultDTO">
SELECT
temp.gridId,
sum( total ) AS count
FROM
(
SELECT
rg.GRID_ID AS gridId,
count(*) AS total
FROM
resi_group rg
WHERE
rg.DEL_FLAG = '0'
AND rg.STATE = 'under_auditting'
<if test="gridIdList!=null and gridIdList.size()!=0">
AND rg.GRID_ID IN
<foreach collection="gridIdList" item="gridId" open="(" close=")" separator=",">
#{gridId}
</foreach>
</if>
GROUP BY
rg.GRID_ID
UNION ALL
SELECT
m.GRID_ID AS gridId,
count( 1 ) AS total
FROM
group_edit_submit_record m
WHERE
m.DEL_FLAG = '0'
AND m.AUDIT_STATUS = 'under_auditing'
<if test="gridIdList!=null and gridIdList.size()!=0">
AND m.GRID_ID IN
<foreach collection="gridIdList" item="gridId" open="(" close=")" separator=",">
#{gridId}
</foreach>
</if>
group by m.GRID_ID
) temp
GROUP BY
temp.gridId
</select>
</mapper>

11
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/dao/PartymemberInfoDao.java

@ -24,7 +24,9 @@ import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO;
import com.epmet.resi.partymember.dto.partymember.form.CertifiedDetailFormDTO;
import com.epmet.resi.partymember.dto.partymember.form.CertifiedFormDTO;
import com.epmet.resi.partymember.dto.partymember.result.CertifiedDetailResultDTO;
import com.epmet.resi.partymember.dto.partymember.result.PartyAuthProcessingCountResultDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -75,4 +77,13 @@ public interface PartymemberInfoDao extends BaseDao<PartymemberInfoEntity> {
* @Date 2020/7/22 12:19
**/
PartymemberInfoDTO queryPartymemberInfoByUserId(String userId);
/**
* @return java.util.List<com.epmet.resi.partymember.dto.partymember.result.PartyAuthProcessingCountResultDTO>
* @param gridIdList
* @author yinzuomei
* @description 返回各个网格内待审核的党员数
* @Date 2020/12/25 14:02
**/
List<PartyAuthProcessingCountResultDTO> selectCountAuditting(@Param("gridIdList") List<String> gridIdList);
}

7
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java

@ -25,7 +25,6 @@ import com.epmet.modules.partymember.redis.PartymemberInfoRedis;
import com.epmet.modules.partymember.service.*;
import com.epmet.modules.warmhearted.constant.ResiWarmheartedConstant;
import com.epmet.modules.warmhearted.constant.ResiWarmheartedVisitConstant;
import com.epmet.redis.ResiPartyMemberRedis;
import com.epmet.resi.mine.dto.from.PartyMemberInitFromDTO;
import com.epmet.resi.mine.dto.from.VerificationCodeFromDTO;
import com.epmet.resi.mine.dto.result.PartyMemberInitResultDTO;
@ -81,8 +80,6 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService
@Autowired
private GovOrgFeignClient govOrgFeignClient;
@Autowired
private ResiPartyMemberRedis resiPartyMemberRedis;
@Autowired
private ResiGroupFeignClient resiGroupFeignClient;
@Autowired
private PartymemberAuthRecordService partymemberAuthRecordService;
@ -311,8 +308,6 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService
}
auditMessageToGov(ConvertUtils.sourceToTarget(partyMemberInfo, PartymemberInfoEntity.class), PartyMemberMessageConstant.MEMBER_APPLY_MSG);
//更新政府端:工作-基层治理-党员认证reddot
resiPartyMemberRedis.addWorkGrassrootsPartyAuthRedDotValue(infoDTO.getGridId());
return new Result();
}
@ -358,8 +353,6 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService
} else {
auditMessageToResi(partyMemberInfoEntity, PartyMemberMessageConstant.AUDIT_REJECT_MSG);
}
//更新政府端:工作-基层治理-党员认证reddot
resiPartyMemberRedis.subtractWorkGrassrootsPartyAuthRedDotValue(manualEntity.getGridId());
return new Result();
}

21
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartymemberInfoServiceImpl.java

@ -45,11 +45,9 @@ import org.apache.commons.lang3.StringUtils;
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.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
* 党员认证信息表
@ -204,19 +202,10 @@ public class PartymemberInfoServiceImpl extends BaseServiceImpl<PartymemberInfoD
@Override
public List<PartyAuthProcessingCountResultDTO> queryPartyMemberProcessingCount(List<String> gridIdList) {
List<PartyAuthProcessingCountResultDTO> list = new ArrayList<>();
for (String gridId : gridIdList) {
PartyAuthProcessingCountResultDTO partyAuthProcessingCountResultDTO = new PartyAuthProcessingCountResultDTO();
partyAuthProcessingCountResultDTO.setGridId(gridId);
Integer auditingPartyMember = resiPartyMemberRedis.queryPartyAuthProcessingCount(gridId);
if (null == auditingPartyMember) {
partyAuthProcessingCountResultDTO.setCount(0);
} else {
partyAuthProcessingCountResultDTO.setCount(auditingPartyMember);
}
list.add(partyAuthProcessingCountResultDTO);
if(CollectionUtils.isEmpty(gridIdList)){
return Collections.EMPTY_LIST;
}
return list;
return baseDao.selectCountAuditting(gridIdList);
}
/**

11
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/dao/ResiWarmheartedApplyDao.java

@ -23,8 +23,10 @@ import com.epmet.resi.partymember.dto.warmhearted.ResiWarmheartedApplyDTO;
import com.epmet.resi.partymember.dto.warmhearted.form.ResiWarmAuditFormDTO;
import com.epmet.resi.partymember.dto.warmhearted.form.ResiWarmheartedAuditedFromDTO;
import com.epmet.resi.partymember.dto.warmhearted.form.ResiWarmheartedFormDTO;
import com.epmet.resi.partymember.dto.warmhearted.result.ResiProcessingCountResultDTO;
import com.epmet.resi.partymember.dto.warmhearted.result.ResiWarmAuditResultDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -52,4 +54,13 @@ public interface ResiWarmheartedApplyDao extends BaseDao<ResiWarmheartedApplyEnt
* @return
*/
List<ResiWarmAuditResultDTO> selectResiWarmAuditList(ResiWarmAuditFormDTO formDTO);
/**
* @return java.util.List<com.epmet.resi.partymember.dto.warmhearted.result.ResiProcessingCountResultDTO>
* @param gridIdList
* @author yinzuomei
* @description 根据网格id,返回各个网格内待审核的热心居民申请总数
* @Date 2020/12/25 13:54
**/
List<ResiProcessingCountResultDTO> selectCountAuditting(@Param("gridIdList") List<String> gridIdList);
}

19
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java

@ -27,7 +27,6 @@ import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.constant.PartyMemberConstant;
@ -51,7 +50,6 @@ import com.epmet.modules.warmhearted.dao.ResiWarmheartedApplyDao;
import com.epmet.modules.warmhearted.entity.ResiWarmheartedApplyEntity;
import com.epmet.modules.warmhearted.service.ResiWarmheartedApplyService;
import com.epmet.modules.warmhearted.service.ResiWarmheartedVisitService;
import com.epmet.redis.ResiPartyMemberRedis;
import com.epmet.resi.partymember.dto.ResiIdentityFormDTO;
import com.epmet.resi.partymember.dto.warmhearted.ResiWarmheartedApplyDTO;
import com.epmet.resi.partymember.dto.warmhearted.form.*;
@ -65,6 +63,7 @@ import org.slf4j.LoggerFactory;
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.util.*;
import java.util.stream.Collectors;
@ -92,8 +91,6 @@ public class ResiWarmheartedApplyServiceImpl extends BaseServiceImpl<ResiWarmhea
@Autowired
private GovOrgFeignClient govOrgFeignClient;
@Autowired
private ResiPartyMemberRedis resiPartyMemberRedis;
@Autowired
private ResiGroupFeignClient resiGroupFeignClient;
@Override
@ -216,8 +213,6 @@ public class ResiWarmheartedApplyServiceImpl extends BaseServiceImpl<ResiWarmhea
}
result.setCode(NumConstant.ZERO);
result.setMsg(ResiWarmheartedVisitConstant.RESI_WARM_SUBMIT);
//更新政府端:工作-基层治理-居民管理reddot
resiPartyMemberRedis.addWorkGrassrootsResiRedDotValue(formDTO.getGridId());
}
return result;
}
@ -419,8 +414,6 @@ public class ResiWarmheartedApplyServiceImpl extends BaseServiceImpl<ResiWarmhea
result = epmetUserFeignClient.saveUserRole(dto);
//3:为申请人发送审核通过消息提示
result = auditMessage(entity, ResiWarmUserMessageConstant.AUDIT_APPROVE_MSG);
//4:更新政府端:工作-基层治理-居民管理reddot
resiPartyMemberRedis.subtractWorkGrassrootsResiRedDotValue(entity.getGridId());
//5:更新这个人注册热心居民的网格下的所在的组的热心居民数信息
ResiIdentityFormDTO identityParam = new ResiIdentityFormDTO();
identityParam.setUserId(entity.getUserId());
@ -495,8 +488,6 @@ public class ResiWarmheartedApplyServiceImpl extends BaseServiceImpl<ResiWarmhea
//2:为申请人发送审核驳回消息提示
//查询申请信息
auditMessage(entity, ResiWarmUserMessageConstant.AUDIT_REJECT_MSG);
//3:更新政府端:工作-基层治理-居民管理reddot
resiPartyMemberRedis.subtractWorkGrassrootsResiRedDotValue(entity.getGridId());
return result;
}
@ -541,7 +532,8 @@ public class ResiWarmheartedApplyServiceImpl extends BaseServiceImpl<ResiWarmhea
@Override
public List<ResiProcessingCountResultDTO> queryResiProcessingCount(List<String> gridIdList) {
List<ResiProcessingCountResultDTO> list = new ArrayList<>();
//代码废弃
/*List<ResiProcessingCountResultDTO> list = new ArrayList<>();
for (String gridId : gridIdList) {
ResiProcessingCountResultDTO resiProcessingCountResultDTO = new ResiProcessingCountResultDTO();
resiProcessingCountResultDTO.setGridId(gridId);
@ -552,7 +544,10 @@ public class ResiWarmheartedApplyServiceImpl extends BaseServiceImpl<ResiWarmhea
resiProcessingCountResultDTO.setCount(auditingResi);
}
list.add(resiProcessingCountResultDTO);
}*/
if(CollectionUtils.isEmpty(gridIdList)){
return Collections.EMPTY_LIST;
}
return list;
return baseDao.selectCountAuditting(gridIdList);
}
}

19
epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/partymember/PartymemberInfoDao.xml

@ -115,4 +115,23 @@
order by pi.CREATED_TIME desc
limit 1
</select>
<!-- 返回各个网格内待审核的党员数 -->
<select id="selectCountAuditting" parameterType="map" resultType="com.epmet.resi.partymember.dto.partymember.result.PartyAuthProcessingCountResultDTO">
SELECT
pi.GRID_ID AS gridId,
count(*) AS count
FROM
partymember_info pi
WHERE
pi.DEL_FLAG = '0'
AND pi.CONFIRM_RESULT = 'auto_confirm_failed'
<if test="gridIdList!=null and gridIdList.size()!=0">
AND pi.GRID_ID IN
<foreach collection="gridIdList" item="gridId" open="(" close=")" separator=",">
#{gridId}
</foreach>
</if>
group by pi.GRID_ID
</select>
</mapper>

18
epmet-module/resi-partymember/resi-partymember-server/src/main/resources/mapper/warmhearted/ResiWarmheartedApplyDao.xml

@ -100,4 +100,22 @@
LIMIT #{pageNo}, #{pageSize}
</select>
<!-- 根据网格id,返回各个网格内待审核的热心居民申请总数 -->
<select id="selectCountAuditting" parameterType="map" resultType="com.epmet.resi.partymember.dto.warmhearted.result.ResiProcessingCountResultDTO">
SELECT
m.GRID_ID AS gridId,
count(*) AS count
FROM
resi_warmhearted_apply m
WHERE
m.DEL_FLAG = '0'
AND m.AUDIT_STATUS = 'under_auditting'
<if test="gridIdList!=null and gridIdList.size()!=0">
AND m.GRID_ID IN
<foreach collection="gridIdList" item="gridId" open="(" close=")" separator=",">
#{gridId}
</foreach>
</if>
group by m.GRID_ID
</select>
</mapper>
Loading…
Cancel
Save