From 547f9da83d6a29fed3a1e32f2cd8fd14dba3c81b Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 17 May 2023 13:13:31 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=EF=BC=8C=E7=BC=96=E8=BE=91?= =?UTF-8?q?=EF=BC=8C=E5=88=A0=E9=99=A4=E5=B1=85=E6=B0=91=EF=BC=8C=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E6=88=BF=E5=B1=8B=E6=98=AF=E5=90=A6=E6=98=AF=E5=85=9A?= =?UTF-8?q?=E5=91=98=E4=B8=AD=E5=BF=83=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ConfigPartyCenterHouseFormDTO.java | 18 +++++++++ .../epmet/feign/GovOrgOpenFeignClient.java | 10 +++++ .../GovOrgOpenFeignClientFallback.java | 12 ++++++ .../epmet/controller/IcHouseController.java | 10 +++++ .../com/epmet/service/IcHouseService.java | 7 ++++ .../service/impl/IcHouseServiceImpl.java | 19 ++++++++- .../impl/IcResiUserImportServiceImpl.java | 40 ++++++++++++++++++- .../service/impl/IcResiUserServiceImpl.java | 27 ++++++++----- 8 files changed, 130 insertions(+), 13 deletions(-) create mode 100644 epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/ConfigPartyCenterHouseFormDTO.java diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/ConfigPartyCenterHouseFormDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/ConfigPartyCenterHouseFormDTO.java new file mode 100644 index 0000000000..faa711dc25 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/lingshan/ConfigPartyCenterHouseFormDTO.java @@ -0,0 +1,18 @@ +package com.epmet.dto.result.lingshan; + +import lombok.Data; + +/** + * @Description + * @Author yzm + * @Date 2023/5/17 12:45 + */ +@Data +public class ConfigPartyCenterHouseFormDTO { + private String houseId; + /** + * 灵山项目:是否党员中心户:1是;0不是 + */ + private String partyCenterHouseFlag; +} + diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java index 6712f7247e..3f76336879 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java @@ -6,6 +6,7 @@ import com.epmet.commons.tools.utils.Result; import com.epmet.dto.*; import com.epmet.dto.form.*; import com.epmet.dto.result.*; +import com.epmet.dto.result.lingshan.ConfigPartyCenterHouseFormDTO; import com.epmet.feign.fallback.GovOrgOpenFeignClientFallbackFactory; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.http.MediaType; @@ -782,4 +783,13 @@ public interface GovOrgOpenFeignClient { Result> lingshanPartyServiceCenterList( @RequestParam(value = "objType", required = false) String objType, @RequestParam(value = "orgId", required = false) String orgId); + + /** + * 灵山项目:新增居民/修改居民/删除居民/导入居民时,重新更新房屋是否是党员中心户 + * + * @param formDTO + * @return + */ + @PostMapping("/gov/org/ichouse/updatePartyCenterHouse") + Result updatePartyCenterHouse(@RequestBody ConfigPartyCenterHouseFormDTO formDTO); } diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java index 040c046b85..5d8c8ebf4b 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java @@ -7,6 +7,7 @@ import com.epmet.commons.tools.utils.Result; import com.epmet.dto.*; import com.epmet.dto.form.*; import com.epmet.dto.result.*; +import com.epmet.dto.result.lingshan.ConfigPartyCenterHouseFormDTO; import com.epmet.feign.GovOrgOpenFeignClient; import java.util.List; @@ -483,4 +484,15 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient { public Result> lingshanPartyServiceCenterList(String objType, String orgId) { return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "lingshanPartyServiceCenterList", objType, orgId); } + + /** + * 灵山项目:新增居民/修改居民/删除居民/导入居民时,重新更新房屋是否是党员中心户 + * + * @param formDTO + * @return + */ + @Override + public Result updatePartyCenterHouse(ConfigPartyCenterHouseFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "updatePartyCenterHouse", formDTO); + } } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcHouseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcHouseController.java index e0ffaeb3e7..ae3393cf17 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcHouseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcHouseController.java @@ -218,4 +218,14 @@ public class IcHouseController { return new Result>().ok(icHouseService.getOrgTreeData(formDTO.getGridId())); } + /** + * 灵山项目:新增居民/修改居民/删除居民/导入居民时,重新更新房屋是否是党员中心户 + * @param formDTO + * @return + */ + @PostMapping("updatePartyCenterHouse") + public Result updatePartyCenterHouse(@RequestBody ConfigPartyCenterHouseFormDTO formDTO){ + icHouseService.updatePartyCenterHouse(formDTO.getHouseId(),formDTO.getPartyCenterHouseFlag()); + return new Result(); + } } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcHouseService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcHouseService.java index 476ce0419a..cec8ca1349 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcHouseService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcHouseService.java @@ -176,4 +176,11 @@ public interface IcHouseService extends BaseService { * @return */ List getOrgTreeData(String gridId); + + /** + * 更新房屋是否是党员中心户 + * @param houseId + * @param partyCenterHouseFlag + */ + void updatePartyCenterHouse(String houseId, String partyCenterHouseFlag); } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseServiceImpl.java index 0a9da1c2b6..34cebde341 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcHouseServiceImpl.java @@ -1,6 +1,7 @@ package com.epmet.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.NumConstant; @@ -452,8 +453,6 @@ public class IcHouseServiceImpl extends BaseServiceImpl queryWrapper=new LambdaQueryWrapper<>(); - queryWrapper.eq(LingshanPartyCenterHouseLianhuEntity::getPartyCenterHouseId,partyCenterHouseId); partyCenterHouseLianhuDao.deleteByPartyCenterHouseId(partyCenterHouseId); // 后插入 lianHuHouseList.forEach(lianHuHouse->{ @@ -534,6 +533,22 @@ public class IcHouseServiceImpl extends BaseServiceImpl update = new LambdaUpdateWrapper<>(); + update.set(IcHouseEntity::getPartyCenterHouseFlag, partyCenterHouseFlag).eq(IcHouseEntity::getId, houseId); + baseDao.update(null, update); + if(NumConstant.ZERO_STR.equals(partyCenterHouseFlag)){ + //房屋如果不是党员中心户,自动删除绑定的联户 + partyCenterHouseLianhuDao.deleteByPartyCenterHouseId(houseId); + } + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserImportServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserImportServiceImpl.java index e0b5c91837..32b893b28b 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserImportServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserImportServiceImpl.java @@ -6,7 +6,6 @@ import cn.afterturn.easypoi.excel.entity.ExportParams; import cn.hutool.core.bean.BeanUtil; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.EasyExcelFactory; -import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.epmet.bean.ResiImportCategoryData; @@ -14,6 +13,7 @@ import com.epmet.bean.ResiImportChangedData; import com.epmet.bean.ResiImportResiCategoryChangedCache; import com.epmet.commons.rocketmq.messages.PartymemberSyncMQMsg; import com.epmet.commons.tools.constant.AppClientConstant; +import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.constant.StrConstant; import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; @@ -41,6 +41,7 @@ import com.epmet.dto.form.HouseFormDTO; import com.epmet.dto.form.IcResiUserOrgMsgFormDTO; import com.epmet.dto.form.ImportTaskCommonFormDTO; import com.epmet.dto.result.*; +import com.epmet.dto.result.lingshan.ConfigPartyCenterHouseFormDTO; import com.epmet.entity.*; import com.epmet.enums.IcResiUserTableEnum; import com.epmet.excel.handler.IcResiImportDynamicExcelListener; @@ -61,6 +62,7 @@ import org.apache.commons.lang3.StringUtils; import org.apache.http.entity.ContentType; import org.apache.poi.ss.usermodel.Workbook; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import org.springframework.web.multipart.commons.CommonsMultipartFile; @@ -2299,4 +2301,40 @@ public class IcResiUserImportServiceImpl implements IcResiUserImportService, Res importTaskId, processStatus, operatorId, resultDesc, resultDescPath); } } + + /** + * 灵山需求 + * @param houseId :房屋id + */ + @Async + public void syncHousePartyCenterHouse(String houseId,String resiUserId) { + if(StringUtils.isBlank(houseId)){ + IcResiUserEntity entity=icResiUserDao.selectById(resiUserId); + houseId=entity.getHomeId(); + } + // 查询房屋里的所有人 + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(IcResiUserEntity::getHomeId, houseId) + .eq(IcResiUserEntity::getStatus, NumConstant.ZERO_STR) + .select(IcResiUserEntity::getId); + List resiList = icResiUserDao.selectList(wrapper); + + //默认该房屋不是党员中心户 + ConfigPartyCenterHouseFormDTO configPartyCenterHouseFormDTO=new ConfigPartyCenterHouseFormDTO(); + configPartyCenterHouseFormDTO.setHouseId(houseId); + configPartyCenterHouseFormDTO.setPartyCenterHouseFlag(NumConstant.ZERO_STR); + + if(CollectionUtils.isNotEmpty(resiList)){ + List resiIds = resiList.stream().map(IcResiUserEntity::getId).collect(Collectors.toList()); + // 是否有党员中心户 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper(); + queryWrapper.in(IcPartyMemberEntity::getIcResiUser, resiIds) + .eq(IcPartyMemberEntity::getIsDyzxh, NumConstant.ONE_STR); + List dyzxhList = icPartyMemberDao.selectList(queryWrapper); + if (CollectionUtils.isNotEmpty(dyzxhList)) { + configPartyCenterHouseFormDTO.setPartyCenterHouseFlag(NumConstant.ONE_STR); + } + } + govOrgOpenFeignClient.updatePartyCenterHouse(configPartyCenterHouseFormDTO); + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java index ae2b92dcd5..2dd0e033a4 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java @@ -61,6 +61,7 @@ import com.epmet.dto.form.demand.UserDemandNameQueryFormDTO; import com.epmet.dto.result.*; import com.epmet.dto.result.demand.IcResiDemandDictDTO; import com.epmet.dto.result.demand.OptionDTO; +import com.epmet.dto.result.lingshan.ConfigPartyCenterHouseFormDTO; import com.epmet.dto.result.resi.IcResiNonDynamicResultDTO; import com.epmet.entity.*; import com.epmet.enums.RenHuConditionEnum; @@ -132,8 +133,8 @@ public class IcResiUserServiceImpl extends BaseServiceImpl> subTableRes = operCustomizeOpenFeignClient.queryIcResiSubTables(queryDTO); @@ -217,6 +219,8 @@ public class IcResiUserServiceImpl extends BaseServiceImpl resiWrapper=new LambdaQueryWrapper<>(); resiWrapper.eq(IcResiUserEntity::getAgencyId,formDTO.getAgencyId()); resiWrapper.select(IcResiUserEntity::getId); - List resiIds=icResiUserDao.selectList(resiWrapper); + List resiIds=baseDao.selectList(resiWrapper); for(IcResiUserEntity entity:resiIds){ baseDao.updateToDel(entity.getId(),formDTO.getCurrentStaffId()); CustomerFormQueryDTO queryDTO = ConvertUtils.sourceToTarget(formDTO, CustomerFormQueryDTO.class); @@ -448,7 +452,8 @@ public class IcResiUserServiceImpl extends BaseServiceImpl columns = categoryListResult.getData().stream().map(IcResiCategoryStatsConfigDTO::getColumnName).collect(Collectors.toList()); - Map hash = icResiUserDao.getCategoryListMap(columns, entity.getId()); + Map hash = baseDao.getCategoryListMap(columns, entity.getId()); //封装变更记录和变更明细数据 //变更记录 IcUserChangeRecordEntity changeRecordEntity = new IcUserChangeRecordEntity(); @@ -1685,7 +1692,7 @@ public class IcResiUserServiceImpl extends BaseServiceImpl volunteers = icResiUserDao.selectVolunteerByUserId(resiEntity.getId()); + List volunteers = baseDao.selectVolunteerByUserId(resiEntity.getId()); if (CollectionUtils.isNotEmpty(volunteers)) { String[] vCategories = volunteers.get(0).split(","); @@ -1702,7 +1709,7 @@ public class IcResiUserServiceImpl extends BaseServiceImpl resiCategoryNames = new ArrayList<>(); - Map categories = icResiUserDao.getCategoryListMap(resiCategoryColumns, resiUserId); + Map categories = baseDao.getCategoryListMap(resiCategoryColumns, resiUserId); categories.forEach((k, v) -> { if (NumConstant.ONE_STR.equals(v)) { ResiCategoryEnum enumObject = ResiCategoryEnum.getEnum(k); @@ -2832,7 +2839,7 @@ public class IcResiUserServiceImpl extends BaseServiceImpl userWrapper = new LambdaQueryWrapper<>(); userWrapper.ne(IcResiUserEntity::getId, dto.getIcResiUserId());