From cd68c2d412a88e75d525fa098f1b6fa6acab4ed1 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 11 Jan 2023 16:16:55 +0800 Subject: [PATCH] =?UTF-8?q?getEpidemicPreventionList=E5=B1=85=E6=B0=91?= =?UTF-8?q?=E9=98=B2=E7=96=AB=E4=BF=A1=E6=81=AF=E5=88=97=E8=A1=A8=EF=BC=8C?= =?UTF-8?q?=E7=96=AB=E8=8B=97=E6=8E=A5=E7=A7=8D=E9=92=88=E5=88=BA=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E3=80=82=20count(distinct=20v.INOCULATE=5FTIME=20)+?= =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E7=BB=84=E7=BB=87=E5=88=A0=E9=99=A4=E5=B1=85?= =?UTF-8?q?=E6=B0=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../form/InternalDelIcResiUserFormDTO.java | 33 +++++++++++++++++++ .../controller/IcResiUserController.java | 25 ++++++++++++++ .../com/epmet/service/IcResiUserService.java | 6 ++++ .../service/impl/IcResiUserServiceImpl.java | 32 ++++++++++++++++++ .../main/resources/mapper/IcResiUserDao.xml | 2 +- 5 files changed, 97 insertions(+), 1 deletion(-) create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/InternalDelIcResiUserFormDTO.java diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/InternalDelIcResiUserFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/InternalDelIcResiUserFormDTO.java new file mode 100644 index 0000000000..6573b9f511 --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/InternalDelIcResiUserFormDTO.java @@ -0,0 +1,33 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.enums.IcFormCodeEnum; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.util.List; + +/** + * @Description + * @Author yzm + * @Date 2023/1/11 15:26 + */ +@Data +public class InternalDelIcResiUserFormDTO { + + public interface DefaultGroup { + } + + private List icResiUserIds; + + private String formCode = IcFormCodeEnum.RESI_BASE_INFO.getCode(); + + @NotBlank(message = "token获取的customerId不能为空", groups = DefaultGroup.class) + private String customerId; + + @NotBlank(message = "token获取的userId不能为空", groups = DefaultGroup.class) + private String currentStaffId; + + @NotBlank(message = "agencyId不能为空", groups = DefaultGroup.class) + private String agencyId; +} + diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java index e38645b163..440a440fd4 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java @@ -225,7 +225,32 @@ public class IcResiUserController implements ResultDataResolver { return new Result(); } + /** + * 该接口供开发人员,手动调用 + * 项目上经常要求删除某个社区的人房数据, 索性写一个接口。供开发人员调用 + * @param tokenDto + * @param formDTO + * @return + */ + @NoRepeatSubmit + @PostMapping("delete-interal") + public Result deleteInternal(@LoginUser TokenDto tokenDto, @RequestBody InternalDelIcResiUserFormDTO formDTO) { + formDTO.setCustomerId(tokenDto.getCustomerId()); + formDTO.setCurrentStaffId(tokenDto.getUserId()); + ValidatorUtils.validateEntity(formDTO, InternalDelIcResiUserFormDTO.DefaultGroup.class); + icResiUserService.deleteInternal(formDTO); + //推送MQ事件 + IcResiUserAddMQMsg mqMsg = new IcResiUserAddMQMsg(); + mqMsg.setCustomerId(tokenDto.getCustomerId()); + // mqMsg.setIcResiUser(userId); + SystemMsgFormDTO form = new SystemMsgFormDTO(); + form.setMessageType(SystemMessageType.IC_RESI_USER_DEL); + form.setContent(mqMsg); + epmetMessageOpenFeignClient.sendSystemMsgByMQ(form); + log.error(String.format("!!!!!当前组织下的居民已删除agencyId:%s",formDTO.getAgencyId())); + return new Result(); + } /** * @Author sun * @Description 党建互联平台--保存居民信息 diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java index f346f2c3b1..c29d0cb69d 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/IcResiUserService.java @@ -53,6 +53,12 @@ public interface IcResiUserService extends BaseService { */ void delete(DelIcResiUserFormDTO formDTO); + /** + * 开发人员掉员工此接口 + * @param formDTO + */ + void deleteInternal(InternalDelIcResiUserFormDTO formDTO); + /** * @Author sun * @Description 党建互联平台--保存居民信息 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 a9a98a0a3e..50d5025c4e 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 @@ -213,6 +213,38 @@ public class IcResiUserServiceImpl extends BaseServiceImpl resiWrapper=new LambdaQueryWrapper<>(); + resiWrapper.eq(IcResiUserEntity::getAgencyId,formDTO.getAgencyId()); + resiWrapper.select(IcResiUserEntity::getId); + List resiIds=icResiUserDao.selectList(resiWrapper); + for(IcResiUserEntity entity:resiIds){ + baseDao.updateToDel(entity.getId(),formDTO.getCurrentStaffId()); + CustomerFormQueryDTO queryDTO = ConvertUtils.sourceToTarget(formDTO, CustomerFormQueryDTO.class); + Result> subTableRes = operCustomizeOpenFeignClient.queryIcResiSubTables(queryDTO); + if (subTableRes.success() && !CollectionUtils.isEmpty(subTableRes.getData())) { + for (String subTalbeName : subTableRes.getData()) { + baseDao.updateSubTableToDel(subTalbeName, entity.getId(),formDTO.getCurrentStaffId()); + } + } + //删除ic_user_transfer_record、ic_user_change_record、ic_user_change_detailed + icUserTransferRecordService.deleteByIcResiUserId(entity.getId(),formDTO.getCurrentStaffId()); + icUserChangeRecordService.deleteByIcResiUserId(entity.getId(),formDTO.getCurrentStaffId()); + icUserChangeDetailedService.deleteByIcResiUserId(entity.getId(),formDTO.getCurrentStaffId()); + } + } + } + + /** * @Author sun * @Description 党建互联平台--保存居民信息 diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml index 6ff29a354a..47bb9cd511 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml @@ -861,7 +861,7 @@ FROM ic_resi_user a LEFT JOIN ( - SELECT ID_CARD, count(distinct v.INOCULATE_TIME ) AS count + SELECT ID_CARD, count(distinct INOCULATE_TIME ) AS count FROM ic_vaccine WHERE DEL_FLAG = '0' AND CUSTOMER_ID = #{customerId}