From d865c6abb5a68431326ffe4374d02a2c63b9a6a3 Mon Sep 17 00:00:00 2001 From: wangchao Date: Wed, 27 May 2020 11:57:09 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E8=BF=9B=E5=85=A5=E7=BD=91=E6=A0=BC?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/CustomerServiceImpl.java | 1 + .../service/impl/UserAccessServiceImpl.java | 9 ++-- .../result/UserInfoOnEnterGridResultDTO.java | 5 ++ .../com/epmet/feign/OperCrmFeignClient.java | 5 ++ .../fallback/OperCrmFeignClientFallBack.java | 5 ++ .../impl/RegisterRelationServiceImpl.java | 47 +++++++++++++++---- .../java/com/epmet/util/ModuleConstant.java | 9 ++++ 7 files changed, 66 insertions(+), 15 deletions(-) diff --git a/epmet-module/oper-crm/oper-crm-server/src/main/java/com/epmet/service/impl/CustomerServiceImpl.java b/epmet-module/oper-crm/oper-crm-server/src/main/java/com/epmet/service/impl/CustomerServiceImpl.java index 9cbe1bee51..4331a01de9 100644 --- a/epmet-module/oper-crm/oper-crm-server/src/main/java/com/epmet/service/impl/CustomerServiceImpl.java +++ b/epmet-module/oper-crm/oper-crm-server/src/main/java/com/epmet/service/impl/CustomerServiceImpl.java @@ -31,6 +31,7 @@ import com.epmet.constant.UserWorkType; import com.epmet.dao.CustomerDao; import com.epmet.dto.CustomerAgencyDTO; import com.epmet.dto.CustomerDTO; +import com.epmet.dto.CustomerHomeDTO; import com.epmet.dto.GovStaffRoleDTO; import com.epmet.dto.form.*; import com.epmet.dto.result.*; diff --git a/epmet-module/resi-guide/resi-guide-server/src/main/java/com/epmet/service/impl/UserAccessServiceImpl.java b/epmet-module/resi-guide/resi-guide-server/src/main/java/com/epmet/service/impl/UserAccessServiceImpl.java index 25a13a456b..3aea2fc5ee 100644 --- a/epmet-module/resi-guide/resi-guide-server/src/main/java/com/epmet/service/impl/UserAccessServiceImpl.java +++ b/epmet-module/resi-guide/resi-guide-server/src/main/java/com/epmet/service/impl/UserAccessServiceImpl.java @@ -1,12 +1,11 @@ package com.epmet.service.impl; -import com.epmet.commons.tools.constant.NumConstant; + import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.constant.StrangerResiGuideConstant; import com.epmet.dto.form.EnterGridFormDTO; import com.epmet.dto.form.UserEnterGridFormDTO; -import com.epmet.dto.form.VisitedFormDTO; import com.epmet.dto.result.UserInfoOnEnterGridResultDTO; import com.epmet.feign.EpmetUserFeignClient; import com.epmet.service.UserAccessService; @@ -41,7 +40,7 @@ public class UserAccessServiceImpl implements UserAccessService { epmetUserFeignClient.getUserInfoAndRoles(userInfoParams); if(userInfoResult.success()){ //2:调用epmet-user服务查询数据 新建网格记录数据 - VisitedFormDTO visitedFormDTO = new VisitedFormDTO(); + /*VisitedFormDTO visitedFormDTO = new VisitedFormDTO(); visitedFormDTO.setGridId(userInfoParams.getGridId()); visitedFormDTO.setCustomerId(userInfoParams.getCustomerId()); visitedFormDTO.setUserId(userInfoParams.getUserId()); @@ -53,10 +52,10 @@ public class UserAccessServiceImpl implements UserAccessService { Result re = epmetUserFeignClient.saveVisitedRecord(visitedFormDTO); if (!re.success()) { log.warn(StrangerResiGuideConstant.EPMET_USER_EXCEPTION); - } + }*/ }else{ //getUserInfoAndRoles调用失败 - + log.warn(StrangerResiGuideConstant.EPMET_USER_EXCEPTION); } return userInfoResult; diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserInfoOnEnterGridResultDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserInfoOnEnterGridResultDTO.java index 4f4d31bdb5..3779e68a24 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserInfoOnEnterGridResultDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserInfoOnEnterGridResultDTO.java @@ -20,6 +20,11 @@ public class UserInfoOnEnterGridResultDTO implements Serializable{ * */ private String currentCustomerId; + /** + * 当前客户名称 + * */ + //private String currentCustomerName; + /** * 当前网格Id * */ diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/feign/OperCrmFeignClient.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/feign/OperCrmFeignClient.java index 9cd6369f4f..a1fd14d99e 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/feign/OperCrmFeignClient.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/feign/OperCrmFeignClient.java @@ -5,6 +5,8 @@ import com.epmet.commons.tools.utils.Result; import com.epmet.dto.CustomerDTO; import com.epmet.feign.fallback.OperCrmFeignClientFallBack; import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -22,4 +24,7 @@ public interface OperCrmFeignClient { */ @PostMapping("/oper/crm/customer/getcostomerInfo") Result getCustomerInfo(@RequestBody CustomerDTO dto); + + @GetMapping("/oper/crm/customer/{id}") + Result get(@PathVariable("id") String id); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/feign/fallback/OperCrmFeignClientFallBack.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/feign/fallback/OperCrmFeignClientFallBack.java index d40619a04c..c6c0d6542c 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/feign/fallback/OperCrmFeignClientFallBack.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/feign/fallback/OperCrmFeignClientFallBack.java @@ -18,4 +18,9 @@ public class OperCrmFeignClientFallBack implements OperCrmFeignClient { public Result getCustomerInfo(CustomerDTO dto) { return ModuleUtils.feignConError(ServiceConstant.OPER_CRM_SERVER, "getCustomerInfo", dto); } + + @Override + public Result get(String id) { + return ModuleUtils.feignConError(ServiceConstant.OPER_CRM_SERVER, "get", id); + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RegisterRelationServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RegisterRelationServiceImpl.java index e91d320413..fd543a4d02 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RegisterRelationServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RegisterRelationServiceImpl.java @@ -19,7 +19,6 @@ package com.epmet.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.page.PageData; @@ -28,24 +27,20 @@ import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.utils.Result; import com.epmet.constant.UserCustomerConstant; import com.epmet.dao.*; -import com.epmet.dto.CustomerGridDTO; -import com.epmet.dto.RegisterRelationDTO; -import com.epmet.dto.UserResiInfoDTO; -import com.epmet.dto.UserResiRegisterVisitDTO; -import com.epmet.dto.form.CustomerGridFormDTO; -import com.epmet.dto.form.EnterGridFormDTO; -import com.epmet.dto.form.UserResiInfoFormDTO; -import com.epmet.dto.form.UserRoleFormDTO; +import com.epmet.dto.*; +import com.epmet.dto.form.*; import com.epmet.dto.result.UserInfoOnEnterGridResultDTO; import com.epmet.dto.result.UserResiInfoResultDTO; import com.epmet.dto.result.UserRoleResultDTO; import com.epmet.entity.RegisterRelationEntity; import com.epmet.entity.UserCustomerEntity; -import com.epmet.entity.UserResiInfoEntity; import com.epmet.entity.UserWechatEntity; import com.epmet.feign.GovOrgFeignClient; +import com.epmet.feign.OperCrmFeignClient; import com.epmet.redis.RegisterRelationRedis; +import com.epmet.service.GridVisitedService; import com.epmet.service.RegisterRelationService; +import com.epmet.util.ModuleConstant; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -90,6 +85,12 @@ public class RegisterRelationServiceImpl extends BaseServiceImpl page(Map params) { @@ -276,7 +277,33 @@ public class RegisterRelationServiceImpl extends BaseServiceImpl customerResult = + operCrmFeignClient.get(enterGridFormDTO.getCustomerId()); + if(customerResult.success() && null != customerResult.getData() && StringUtils.isNotBlank(customerResult.getData().getCustomerName())){ + resultObj.setCurrentCustomerName(customerResult.getData().getCustomerName()); + }else{ + log.warn(ModuleConstant.CUSTOMER_INFO_NOT_FOUND); + }*/ + result.setData(resultObj); + + VisitedFormDTO visitedFormDTO = new VisitedFormDTO(); + visitedFormDTO.setGridId(enterGridFormDTO.getGridId()); + visitedFormDTO.setCustomerId(enterGridFormDTO.getCustomerId()); + visitedFormDTO.setUserId(enterGridFormDTO.getUserId()); + UserResiInfoFormDTO userResiParam = new UserResiInfoFormDTO(); + userResiParam.setUserId(enterGridFormDTO.getUserId()); + UserResiInfoResultDTO resiResult = + userResiInfoDao.selectUserResiInfoDTO(userResiParam); + if(null == resiResult){ + visitedFormDTO.setIsReg(NumConstant.ZERO_STR); + }else{ + visitedFormDTO.setIsReg(NumConstant.ONE_STR); + } + if(!gridVisitedService.saveVisitedRecord(visitedFormDTO).success()){ + log.warn(ModuleConstant.SAVE_VISITED_RECORD_FAILURE); + } + return result; } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/util/ModuleConstant.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/util/ModuleConstant.java index 4887b0a2f2..7bd388d54a 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/util/ModuleConstant.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/util/ModuleConstant.java @@ -10,4 +10,13 @@ public interface ModuleConstant { * */ String EMPTY_STR = ""; + /** + * 保存用户访问记录失败 + * */ + String SAVE_VISITED_RECORD_FAILURE = "保存用户访问记录失败"; + + /** + * 未检索到客户信息 + * */ + String CUSTOMER_INFO_NOT_FOUND = "未检索到客户信息"; } From 6b80bbaffb1d4fb49807275ad74b72adf469fdbf Mon Sep 17 00:00:00 2001 From: wangchao Date: Wed, 27 May 2020 18:07:56 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E6=88=90=E5=91=98=E5=8A=A0=E7=BB=84?= =?UTF-8?q?=E4=B9=8B=E5=90=8E=EF=BC=8C=E5=85=9A=E5=91=98=E6=95=B0=EF=BC=8C?= =?UTF-8?q?=E7=83=AD=E5=BF=83=E5=B1=85=E6=B0=91=E6=95=B0=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../form/ResiRolesOfGroupMemberFormDTO.java | 37 ++++++++++++ .../dto/member/form/ResiIdentityFormDTO.java | 45 +++++++++++++++ .../group/controller/ResiGroupController.java | 17 ++++++ .../group/dao/ResiGroupStatisticalDao.java | 12 ++++ .../modules/group/redis/ResiGroupRedis.java | 33 +++++++++++ .../service/ResiGroupStatisticalService.java | 10 ++++ .../impl/ResiGroupStatisticalServiceImpl.java | 57 +++++++++++++++++++ .../member/dao/ResiGroupMemberDao.java | 11 ++++ .../epmet/modules/utils/ModuleConstant.java | 4 ++ .../mapper/group/ResiGroupStatisticalDao.xml | 37 ++++++++++++ .../mapper/member/ResiGroupMemberDao.xml | 19 +++++++ .../partymember/dto/ResiIdentityFormDTO.java | 47 +++++++++++++++ .../modules/feign/ResiGroupFeignClient.java | 29 ++++++++++ .../ResiGroupFeignClientFallBack.java | 30 ++++++++++ .../impl/PartyMemberConfirmServiceImpl.java | 14 +++++ .../impl/ResiWarmheartedApplyServiceImpl.java | 11 ++++ 16 files changed, 413 insertions(+) create mode 100644 epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/form/ResiRolesOfGroupMemberFormDTO.java create mode 100644 epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/form/ResiIdentityFormDTO.java create mode 100644 epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/ResiIdentityFormDTO.java create mode 100644 epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/ResiGroupFeignClient.java create mode 100644 epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/fallback/ResiGroupFeignClientFallBack.java diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/form/ResiRolesOfGroupMemberFormDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/form/ResiRolesOfGroupMemberFormDTO.java new file mode 100644 index 0000000000..ee2d684b6b --- /dev/null +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/form/ResiRolesOfGroupMemberFormDTO.java @@ -0,0 +1,37 @@ +package com.epmet.resi.group.dto.group.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description + * @ClassName ResiRolesOfGroupMemberFormDTO + * @Auth wangc + * @Date 2020-05-26 14:27 + */ +@Data +public class ResiRolesOfGroupMemberFormDTO implements Serializable { + private static final long serialVersionUID = 881671287108605309L; + + /** + * 组Id + * */ + private String groupId; + + + /** + * 热心居民标识 1:是 0:不是 网格级别 + * */ + private String warmFlag; + + /** + * 党员标识 1: 是 0:不是 + * */ + private String partyFlag; + + /** + * 修改人Id + * */ + private String updatedBy; +} diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/form/ResiIdentityFormDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/form/ResiIdentityFormDTO.java new file mode 100644 index 0000000000..4be22d07e6 --- /dev/null +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/form/ResiIdentityFormDTO.java @@ -0,0 +1,45 @@ +package com.epmet.resi.group.dto.member.form; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description partymember服务调用传参,用户认证[党员、热心居民]成功后,更新组的缓存统计信息及组统计信息 + * @ClassName ResiIdentityFormDTO + * @Auth wangc + * @Date 2020-05-26 13:55 + */ +@Data +public class ResiIdentityFormDTO implements Serializable { + private static final long serialVersionUID = -6822310777491335787L; + /** + * 用户Id + * */ + private String userId; + + /** + * 网格Id + * */ + private String gridId; + + /** + * 客户Id + * */ + private String customerId; + + /** + * 热心居民标识 1:是 0:不是 网格级别 + * */ + private String warmFlag; + + /** + * 党员标识 1: 是 0:不是 + * */ + private String partyFlag; + + /** + * 操作人的Id + * */ + private String operatorId; +} diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java index 270df47002..afdce31da0 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java @@ -23,9 +23,11 @@ import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.modules.group.service.ResiGroupService; +import com.epmet.modules.group.service.ResiGroupStatisticalService; import com.epmet.resi.group.dto.group.GroupProcessingCountResultDTO; import com.epmet.resi.group.dto.group.form.*; import com.epmet.resi.group.dto.group.result.*; +import com.epmet.resi.group.dto.member.form.ResiIdentityFormDTO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -43,6 +45,8 @@ import java.util.List; public class ResiGroupController { @Autowired private ResiGroupService resiGroupService; + @Autowired + private ResiGroupStatisticalService resiGroupStatisticalService; /** * @param tokenDto @@ -342,4 +346,17 @@ public class ResiGroupController { public Result> recommendedList(@RequestBody RecommendedListFormDTO formDTO) { return new Result>().ok(resiGroupService.recommendedList(formDTO)); } + + /** + * @Description partymember服务审核通过热心居民、党员申请之后,需要遍历这个人所在的组进行组的缓存与数据库的更新 + * @param resiIdentityFormDTO + * @return + * @author wangc + * @date 2020.05.26 14:12 + **/ + @PostMapping("updatewhenauditedresirole") + public Result updateWhenAuditedResiRole(@RequestBody ResiIdentityFormDTO resiIdentityFormDTO){ + resiGroupStatisticalService.updateWhenAuditedResiRole(resiIdentityFormDTO); + return new Result(); + } } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/dao/ResiGroupStatisticalDao.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/dao/ResiGroupStatisticalDao.java index 589cfaeb27..dd75c99b96 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/dao/ResiGroupStatisticalDao.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/dao/ResiGroupStatisticalDao.java @@ -19,9 +19,12 @@ package com.epmet.modules.group.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.modules.group.entity.ResiGroupStatisticalEntity; +import com.epmet.resi.group.dto.group.form.ResiRolesOfGroupMemberFormDTO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** * 群组统计信息表 * @@ -47,4 +50,13 @@ public interface ResiGroupStatisticalDao extends BaseDao list); } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/redis/ResiGroupRedis.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/redis/ResiGroupRedis.java index f5d0541ba8..e2d19f2a03 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/redis/ResiGroupRedis.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/redis/ResiGroupRedis.java @@ -24,11 +24,13 @@ import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.modules.constant.ResiGroupRedisKeys; import com.epmet.modules.group.service.ResiGroupService; import com.epmet.modules.group.service.ResiGroupStatisticalService; +import com.epmet.modules.utils.ModuleConstant; import com.epmet.resi.group.constant.TopicConstant; import com.epmet.resi.group.dto.group.ResiGroupDTO; import com.epmet.resi.group.dto.group.ResiGroupInfoRedisDTO; import com.epmet.resi.group.dto.group.ResiGroupStatisticalDTO; import com.epmet.resi.group.dto.group.ResiGroupStatisticalInfoRedisDTO; +import com.epmet.resi.group.dto.group.form.ResiRolesOfGroupMemberFormDTO; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -209,4 +211,35 @@ public class ResiGroupRedis { } return auditingGroupCount; } + + /** + * @Description 增加群缓存信息中的热心居民数和党员数 + * @param list List + * @return + * @author wangc + * @date 2020.05.26 15:53 + **/ + public void increaseRolesCount(List list){ + list.forEach(o -> { + ResiGroupInfoRedisDTO cache = get(o.getGroupId()); + if(null != cache && null != cache.getGroupStatisticalInfo()){ + if(StringUtils.equals(NumConstant.ONE_STR,o.getPartyFlag())){ + cache.getGroupStatisticalInfo().setTotalPartyMembers( + null == cache.getGroupStatisticalInfo().getTotalPartyMembers() ? NumConstant.ONE : + cache.getGroupStatisticalInfo().getTotalPartyMembers() + NumConstant.ONE + ); + }else if(StringUtils.equals(NumConstant.ONE_STR,o.getWarmFlag())){ + cache.getGroupStatisticalInfo().setTotalEarnestMembers( + null == cache.getGroupStatisticalInfo().getTotalEarnestMembers() ? NumConstant.ONE : + cache.getGroupStatisticalInfo().getTotalEarnestMembers() + NumConstant.ONE + ); + } + cache.setGroupId(o.getGroupId()); + set(cache); + logger.debug(String.format(ModuleConstant.UPDATE_GROUP_CACHE_SUCCESSFULLY_LOG_TEMPLATE,o.getGroupId())); + }else { + logger.warn(String.format(ModuleConstant.NO_GROUP_CACHE_LOG_TEMPLATE, o.getGroupId())); + } + }); + } } \ No newline at end of file diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/ResiGroupStatisticalService.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/ResiGroupStatisticalService.java index 160c9eea05..a27e5d9531 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/ResiGroupStatisticalService.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/ResiGroupStatisticalService.java @@ -24,6 +24,7 @@ import com.epmet.modules.group.entity.ResiGroupStatisticalEntity; import com.epmet.modules.member.entity.ResiGroupMemberEntity; import com.epmet.resi.group.dto.group.ResiGroupStatisticalDTO; import com.epmet.resi.group.dto.member.form.RemoveMemberFormDTO; +import com.epmet.resi.group.dto.member.form.ResiIdentityFormDTO; import java.util.List; import java.util.Map; @@ -103,4 +104,13 @@ public interface ResiGroupStatisticalService extends BaseService page(Map params) { @@ -168,4 +179,50 @@ public class ResiGroupStatisticalServiceImpl extends BaseServiceImpl groupIds = + resiGroupMemberDao.getGroupIdByUserIdAndGridId(resiIdentityFormDTO.getGridId(), + resiIdentityFormDTO.getUserId(), + StringUtils.equals(NumConstant.ONE_STR,resiIdentityFormDTO.getWarmFlag()) ? NumConstant.ONE_STR : NumConstant.THREE_STR + ); + if(null != groupIds && groupIds.size() > NumConstant.ZERO){ + List params = groupIds.stream().map(groupId -> { + ResiRolesOfGroupMemberFormDTO param = new ResiRolesOfGroupMemberFormDTO(); + param.setGroupId(groupId); + if(StringUtils.equals(NumConstant.ONE_STR,resiIdentityFormDTO.getWarmFlag())){ + param.setWarmFlag(NumConstant.ONE_STR); + }else{ + param.setPartyFlag(NumConstant.ONE_STR); + } + param.setUpdatedBy(resiIdentityFormDTO.getOperatorId()); + return param; + }).collect(Collectors.toList()); + baseDao.incryResiRoleMembersBatch(params); + resiGroupRedis.increaseRolesCount(params); + } + + return; + } + + + } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/dao/ResiGroupMemberDao.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/dao/ResiGroupMemberDao.java index 57916ee6de..7e13eba2b4 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/dao/ResiGroupMemberDao.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/dao/ResiGroupMemberDao.java @@ -108,4 +108,15 @@ public interface ResiGroupMemberDao extends BaseDao { Integer getMembersCountInGrid(@Param("gridId")String gridId); List getMembersCountInGrids(@Param("gridIds")List gridIds); + + /** + * @Description 根据用户Id和网格Id查询这个人所在的指定网格下所有的组Id + * @param gridId + * @param userId + * @param roleFlag 1:热心居民 其他:党员 + * @return List 组Id + * @author wangc + * @date 2020.05.26 14:22 + **/ + List getGroupIdByUserIdAndGridId(@Param("gridId")String gridId,@Param("userId")String userId,@Param("roleFlag")String roleFlag); } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java index f077980f7f..8fd8c6954f 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java @@ -313,4 +313,8 @@ public interface ModuleConstant extends Constant { String GROUP_STATUS_UNDER_AUDITTING = "under_auditting"; String ALREADY_SHIFT_ISSUE = "话题已转议题,请勿重复操作"; + + String NO_GROUP_CACHE_LOG_TEMPLATE = "没有相应的组缓存信息,组Id:【%s】"; + + String UPDATE_GROUP_CACHE_SUCCESSFULLY_LOG_TEMPLATE = "更新组缓存信息成功,组Id:【%s】"; } diff --git a/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/group/ResiGroupStatisticalDao.xml b/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/group/ResiGroupStatisticalDao.xml index 995c637bb1..488f5a5bd7 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/group/ResiGroupStatisticalDao.xml +++ b/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/group/ResiGroupStatisticalDao.xml @@ -37,4 +37,41 @@ AND DEL_FLAG = '0' + + + update resi_group_statistical + + + + + when RESI_GROUP_ID=#{i.groupId} then TOTAL_PARTY_MEMBERS +1 + + + + + + + when RESI_GROUP_ID=#{i.groupId} then TOTAL_EARNEST_MEMEBERS + 1 + + + + + + + + when RESI_GROUP_ID=#{i.groupId} then #{i.updatedBy} + + + + updated_time = now() + + where + DEL_FLAG = '0' + + + RESI_GROUP_ID=#{i.groupId} + + + + diff --git a/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/member/ResiGroupMemberDao.xml b/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/member/ResiGroupMemberDao.xml index ae8b7d8f14..407e42879f 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/member/ResiGroupMemberDao.xml +++ b/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/member/ResiGroupMemberDao.xml @@ -134,4 +134,23 @@ GROUP BY groupp.GRID_ID + + + diff --git a/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/ResiIdentityFormDTO.java b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/ResiIdentityFormDTO.java new file mode 100644 index 0000000000..6709cc435d --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-client/src/main/java/com/epmet/resi/partymember/dto/ResiIdentityFormDTO.java @@ -0,0 +1,47 @@ +package com.epmet.resi.partymember.dto; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 调用resi_group服务,用户认证[党员、热心居民]成功后,更新组的缓存统计信息及组统计信息 + * @ClassName ResiIdentityFormDTO + * @Auth wangc + * @Date 2020-05-26 13:55 + */ +@Data +public class ResiIdentityFormDTO implements Serializable { + private static final long serialVersionUID = -6822310777491335787L; + /** + * 用户Id + * */ + @NotBlank(message = "用户Id不能为空") + private String userId; + + /** + * 网格Id + * */ + private String gridId; + + /** + * 客户Id + * */ + private String customerId; + + /** + * 热心居民标识 1:是 0:不是 网格级别 + * */ + private String warmFlag; + + /** + * 党员标识 1: 是 0:不是 + * */ + private String partyFlag; + + /** + * 操作人的Id + * */ + private String operatorId; +} diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/ResiGroupFeignClient.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/ResiGroupFeignClient.java new file mode 100644 index 0000000000..bbe89c5f91 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/ResiGroupFeignClient.java @@ -0,0 +1,29 @@ +package com.epmet.modules.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.modules.feign.fallback.GovOrgFeignClientFallBack; +import com.epmet.resi.partymember.dto.ResiIdentityFormDTO; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * @Description Feign调用resi-group模块 + * @ClassName ResiGroupFeignClient + * @Author wangc + */ + +@FeignClient(name = ServiceConstant.RESI_GROUP_SERVER, fallback = GovOrgFeignClientFallBack.class) +public interface ResiGroupFeignClient { + + /** + * @Description partymember服务审核通过热心居民、党员申请之后,需要遍历这个人所在的组进行组的缓存与数据库的更新 + * @param resiIdentityFormDTO + * @return + * @author wangc + * @date 2020.05.26 14:12 + **/ + @PostMapping("/resi/group/group/updatewhenauditedresirole") + Result updateWhenAuditedResiRole(@RequestBody ResiIdentityFormDTO resiIdentityFormDTO); +} diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/fallback/ResiGroupFeignClientFallBack.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/fallback/ResiGroupFeignClientFallBack.java new file mode 100644 index 0000000000..d3d098b764 --- /dev/null +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/feign/fallback/ResiGroupFeignClientFallBack.java @@ -0,0 +1,30 @@ +package com.epmet.modules.feign.fallback; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.ModuleUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.modules.feign.ResiGroupFeignClient; +import com.epmet.resi.partymember.dto.ResiIdentityFormDTO; +import org.springframework.stereotype.Component; + + +/** + * @Description + * @ClassName ResiGroupFeignClientFallBack + * @Auth wangc + * @Date 2020-05-26 16:04 + */ +@Component +public class ResiGroupFeignClientFallBack implements ResiGroupFeignClient { + /** + * @Description partymember服务审核通过热心居民、党员申请之后,需要遍历这个人所在的组进行组的缓存与数据库的更新 + * @param resiIdentityFormDTO + * @return + * @author wangc + * @date 2020.05.26 14:12 + **/ + @Override + public Result updateWhenAuditedResiRole(ResiIdentityFormDTO resiIdentityFormDTO) { + return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "updateWhenAuditedResiRole",resiIdentityFormDTO); + } +} diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java index 837efc5901..c4c661debf 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java @@ -25,6 +25,7 @@ import com.epmet.dto.result.UserResiInfoResultDTO; import com.epmet.modules.feign.EpmetMessageFeignClient; import com.epmet.modules.feign.EpmetUserFeignClient; import com.epmet.modules.feign.GovOrgFeignClient; +import com.epmet.modules.feign.ResiGroupFeignClient; import com.epmet.modules.partymember.entity.*; import com.epmet.modules.partymember.redis.PartymemberInfoRedis; import com.epmet.modules.partymember.service.*; @@ -35,6 +36,7 @@ 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; +import com.epmet.resi.partymember.dto.ResiIdentityFormDTO; import com.epmet.resi.partymember.dto.partymember.PartymemberConfirmAutoDTO; import com.epmet.resi.partymember.dto.partymember.PartymemberConfirmManualDTO; import com.epmet.resi.partymember.dto.partymember.PartymemberInfoDTO; @@ -89,6 +91,8 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService private GovOrgFeignClient govOrgFeignClient; @Autowired private ResiPartyMemberRedis resiPartyMemberRedis; + @Autowired + private ResiGroupFeignClient resiGroupFeignClient; @Override @Transactional(rollbackFor = Exception.class) public Result init(PartyMemberInitFromDTO fromDto) { @@ -231,6 +235,11 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService epmetUserFeignClient.saveUserRole(userRole); //存入党员注册关系表 用于统计客户网格的认证党员数 saveRegisterRelation(partyMemberInfoDTO); + + ResiIdentityFormDTO identityParam = new ResiIdentityFormDTO(); + identityParam.setUserId(partyMemberInfoDTO.getUserId()); + identityParam.setPartyFlag(NumConstant.ONE_STR); + resiGroupFeignClient.updateWhenAuditedResiRole(identityParam); } //将自动认证结果存入党员认证自动审核表 @@ -312,6 +321,11 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService saveRegisterRelation(ConvertUtils.sourceToTarget(partyMemberInfoEntity, PartymemberInfoDTO.class)); auditMessageToResi(partyMemberInfoEntity, PartyMemberMessageConstant.AUDIT_APPROVE_MSG); + + ResiIdentityFormDTO identityParam = new ResiIdentityFormDTO(); + identityParam.setUserId(partyMemberInfoEntity.getUserId()); + identityParam.setPartyFlag(NumConstant.ONE_STR); + resiGroupFeignClient.updateWhenAuditedResiRole(identityParam); } else { auditMessageToResi(partyMemberInfoEntity, PartyMemberMessageConstant.AUDIT_REJECT_MSG); } diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java index fe5b9ab1bc..c00077dd1f 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java @@ -27,6 +27,7 @@ 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; @@ -41,6 +42,7 @@ import com.epmet.dto.result.UserResiInfoResultDTO; import com.epmet.modules.feign.EpmetMessageFeignClient; import com.epmet.modules.feign.EpmetUserFeignClient; import com.epmet.modules.feign.GovOrgFeignClient; +import com.epmet.modules.feign.ResiGroupFeignClient; import com.epmet.modules.warmhearted.constant.ResiWarmUserMessageConstant; import com.epmet.modules.warmhearted.constant.ResiWarmheartedConstant; import com.epmet.modules.warmhearted.constant.ResiWarmheartedVisitConstant; @@ -49,6 +51,7 @@ 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.*; import com.epmet.resi.partymember.dto.warmhearted.result.ResiProcessingCountResultDTO; @@ -90,6 +93,8 @@ public class ResiWarmheartedApplyServiceImpl extends BaseServiceImpl page(Map params) { @@ -401,6 +406,12 @@ public class ResiWarmheartedApplyServiceImpl extends BaseServiceImpl Date: Thu, 28 May 2020 10:16:43 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E8=BF=90=E8=90=A5=E7=AB=AF-=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E5=AE=A2=E6=88=B7=E9=A6=96=E9=A1=B5=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E8=AE=BE=E8=AE=A1=E7=A8=BF=E6=8E=A5=E5=8F=A3=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E9=A1=B9=E8=AF=B4=E6=98=8E=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dto/result/CommonComponentDesignResultDTO.java | 5 +++++ .../src/main/resources/mapper/CustomerHomeDetailDao.xml | 1 + 2 files changed, 6 insertions(+) diff --git a/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/CommonComponentDesignResultDTO.java b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/CommonComponentDesignResultDTO.java index bd65f9fe44..4d2c85f985 100644 --- a/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/CommonComponentDesignResultDTO.java +++ b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/CommonComponentDesignResultDTO.java @@ -47,4 +47,9 @@ public class CommonComponentDesignResultDTO implements Serializable { */ private int displayOrder; + /** + * 配置项说明 + */ + private String configurationDescription; + } diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/CustomerHomeDetailDao.xml b/epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/CustomerHomeDetailDao.xml index f32a0c63be..f27f4d16b0 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/CustomerHomeDetailDao.xml +++ b/epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/CustomerHomeDetailDao.xml @@ -35,6 +35,7 @@ chd.COMPONENT_ID, hc.COMPONENT_NAME, hc.COMPONENT_FRONT_ID, + hc.CONFIGURATION_DESCRIPTION, chd.REGION, chd.CONFIGURATION, chd.DEMO_DATA,