diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java index b66f734cdf..429852ff04 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/IcResiUserConfirmSubmitDTO.java @@ -42,13 +42,33 @@ public class IcResiUserConfirmSubmitDTO implements Serializable { */ private String gridId; + /** + * 所属小区ID + */ + private String villageId; + + /** + * 所属楼宇Id + */ + private String buildId; + + /** + * 单元id + */ + private String unitId; + + /** + * 所属家庭Id + */ + private String homeId; + /** * 姓 */ private String surname; /** - * 名 + * 姓名 */ private String name; diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java index a1d0ffc813..f54d4d6a03 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/MyHomeController.java @@ -14,6 +14,7 @@ import com.epmet.dto.form.RegisterAndBindFormDTO; import com.epmet.dto.result.HomeInfoResultDTO; import com.epmet.dto.result.HomeUserBriefResultDTO; import com.epmet.service.IcResiUserConfirmService; +import com.epmet.service.IcResiUserService; import com.epmet.service.MyHomeService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -37,6 +38,9 @@ public class MyHomeController { @Autowired private IcResiUserConfirmService icResiUserConfirmService; + @Autowired + private IcResiUserService icResiUserService; + @PostMapping("memberList/{houseCode}") public Result> selectListHomeMember(@PathVariable("houseCode") String houseCode, @LoginUser TokenDto tokenDto) { @@ -44,51 +48,81 @@ public class MyHomeController { } +// /** +// * @describe: 新增家庭成员 +// * @author wangtong +// * @date 2022/6/1 15:50 +// * @params [dto] +// * @return com.epmet.commons.tools.utils.Result +// */ +// @PostMapping("addMember") +// public Result addMember(@RequestBody IcResiUserConfirmSubmitDTO dto){ +// //效验数据 +// ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); +// dto.setSubmitType(HomeMemberOperationEnum.ADD.getCode()); +// return icResiUserConfirmService.addMember(dto); +// } +// +// /** +// * @describe: 修改家庭成员 +// * @author wangtong +// * @date 2022/6/1 15:27 +// * @params [dto] +// * @return com.epmet.commons.tools.utils.Result +// */ +// @PostMapping("editMember") +// public Result save(@RequestBody IcResiUserConfirmSubmitDTO dto){ +// //效验数据 +// ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); +// dto.setSubmitType(HomeMemberOperationEnum.UPDATE.getCode()); +// return icResiUserConfirmService.editMember(dto); +// } +// /** - * @describe: 新增家庭成员 + * @describe: 删除家庭成员 * @author wangtong - * @date 2022/6/1 15:50 + * @date 2022/6/1 16:10 * @params [dto] * @return com.epmet.commons.tools.utils.Result */ - @PostMapping("addMember") - public Result addMember(@RequestBody IcResiUserConfirmSubmitDTO dto){ + @PostMapping("delMember") + public Result delMember(@RequestBody IcResiUserConfirmSubmitDTO dto){ //效验数据 ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); - dto.setSubmitType(HomeMemberOperationEnum.ADD.getCode()); - return icResiUserConfirmService.addMember(dto); + dto.setSubmitType(HomeMemberOperationEnum.DELETE.getCode()); + return icResiUserConfirmService.delMember(dto); } /** - * @describe: 修改家庭成员 - * @author wangtong - * @date 2022/6/1 15:27 - * @params [dto] - * @return com.epmet.commons.tools.utils.Result - */ - @PostMapping("editMember") - public Result save(@RequestBody IcResiUserConfirmSubmitDTO dto){ + * @describe: 新增家庭成员 + * @author wangtong + * @date 2022/6/1 15:50 + * @params [dto] + * @return com.epmet.commons.tools.utils.Result + */ + @PostMapping("addMember") + public Result addMember(@RequestBody IcResiUserConfirmSubmitDTO dto){ //效验数据 ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); - dto.setSubmitType(HomeMemberOperationEnum.UPDATE.getCode()); - return icResiUserConfirmService.editMember(dto); + return icResiUserService.addMember(dto); } /** - * @describe: 删除家庭成员 - * @author wangtong - * @date 2022/6/1 16:10 - * @params [dto] - * @return com.epmet.commons.tools.utils.Result - */ - @PostMapping("delMember") - public Result delMember(@RequestBody IcResiUserConfirmSubmitDTO dto){ + * @describe: 修改家庭成员 + * @author wangtong + * @date 2022/6/1 15:27 + * @params [dto] + * @return com.epmet.commons.tools.utils.Result + */ + @PostMapping("editMember") + public Result editMember(@RequestBody IcResiUserConfirmSubmitDTO dto){ //效验数据 ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); - dto.setSubmitType(HomeMemberOperationEnum.DELETE.getCode()); - return icResiUserConfirmService.delMember(dto); + return icResiUserService.editMember(dto); } + + /** * @describe: 查询家庭成员信息 * @author wangtong 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 561ddf9e2b..4452769f21 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 @@ -21,6 +21,7 @@ import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.dto.result.OptionDataResultDTO; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.Result; import com.epmet.dto.IcResiUserDTO; import com.epmet.dto.form.*; import com.epmet.dto.result.*; @@ -374,4 +375,22 @@ public interface IcResiUserService extends BaseService { * @Date 2022/5/20 9:59 */ IcResiUserInfoDTO getUserByIdCard(IcResiUserDTO formDTO); + + /** + * @describe: 新增家庭成员 + * @author wangtong + * @date 2022/6/6 10:36 + * @params [dto] + * @return com.epmet.commons.tools.utils.Result + */ + Result addMember(IcResiUserConfirmSubmitDTO dto); + + /** + * @describe: 修改家庭成员 + * @author wangtong + * @date 2022/6/6 10:36 + * @params [dto] + * @return com.epmet.commons.tools.utils.Result + */ + Result editMember(IcResiUserConfirmSubmitDTO dto); } 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 665653b1d8..873c90c39a 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 @@ -2261,6 +2261,70 @@ public class IcResiUserServiceImpl extends BaseServiceImpl wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(IcResiUserEntity::getHomeId, user.getHomeId()); + wrapper.eq(IcResiUserEntity::getYhzgx, RelationshipEnum.SELF.getCode()); + List entityList = baseDao.selectList(wrapper); + if (CollectionUtils.isNotEmpty(entityList)) { + String errorMsg = "房屋下已存在户主"; + throw new EpmetException(EpmetErrorCode.ORG_ADD_FAILED.getCode(), errorMsg, errorMsg); + } + } + + + dto.setCustomerId(user.getCustomerId()); + dto.setAgencyId(user.getAgencyId()); + dto.setPids(user.getPids()); + dto.setGridId(user.getGridId()); + dto.setVillageId(user.getVillageId()); + dto.setBuildId(user.getBuildId()); + dto.setUnitId(user.getUnitId()); + dto.setHomeId(user.getHomeId()); + + IcResiUserEntity entity = ConvertUtils.sourceToTarget(dto, IcResiUserEntity.class); + insert(entity); + + return new Result().ok("新增成功"); + } + + @Override + public Result editMember(IcResiUserConfirmSubmitDTO dto) { + IcResiUserEntity user = icResiUserDao.selectById(dto.getIcResiUserId()); + + IcResiUserDTO userDTO = baseDao.getResiUserByIdCard(dto.getIdCard(), user.getCustomerId()); + if (null != userDTO && null != userDTO.getIdCard()) { + String errorMsg = "修改居民信息失败,身份证号已存在!"; + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), errorMsg, errorMsg); + } + //这个房屋下已经设置了户主后,再次选择户主时提示提示“房屋下已存在户主” PS.户主指与户主关系是本人的用户 + if (RelationshipEnum.SELF.getCode().equals(dto.getYhzgx())) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(IcResiUserEntity::getHomeId, user.getHomeId()); + wrapper.eq(IcResiUserEntity::getYhzgx, RelationshipEnum.SELF.getCode()); + List entityList = baseDao.selectList(wrapper); + if (CollectionUtils.isNotEmpty(entityList)) { + String errorMsg = "房屋下已存在户主"; + throw new EpmetException(EpmetErrorCode.ORG_ADD_FAILED.getCode(), errorMsg, errorMsg); + } + } + + IcResiUserEntity entity = ConvertUtils.sourceToTarget(dto, IcResiUserEntity.class); + entity.setId(dto.getIcResiUserId()); + updateById(entity); + return new Result().ok("修改成功"); + } + /** * desc:根据字段值获取 options * @param customerId diff --git a/epmet-user/epmet-user-server/src/main/resources/db/migration/V0.0.52__ic_resi_user_confirm.sql b/epmet-user/epmet-user-server/src/main/resources/db/migration/V0.0.52__ic_resi_user_confirm.sql index 02d603bb55..5be9280308 100644 --- a/epmet-user/epmet-user-server/src/main/resources/db/migration/V0.0.52__ic_resi_user_confirm.sql +++ b/epmet-user/epmet-user-server/src/main/resources/db/migration/V0.0.52__ic_resi_user_confirm.sql @@ -5,8 +5,8 @@ CREATE TABLE `ic_resi_user_confirm` `AGENCY_ID` varchar(64) NOT NULL COMMENT '组织Id', `PIDS` varchar(255) NOT NULL COMMENT '组织的pids', `GRID_ID` varchar(64) NOT NULL COMMENT '网格ID', - `SURNAME` varchar(64) NOT NULL COMMENT '姓', - `NAME` varchar(64) NOT NULL COMMENT '名', + `SURNAME` varchar(64) COMMENT '姓', + `NAME` varchar(64) COMMENT '名', `MOBILE` varchar(15) DEFAULT NULL COMMENT '手机号', `GENDER` char(2) DEFAULT NULL COMMENT '性别', `ID_CARD` varchar(18) NOT NULL COMMENT '身份证号', @@ -36,4 +36,4 @@ CREATE TABLE `ic_resi_user_confirm` `OPERATION_DESCRIBE` varchar(255) DEFAULT NULL COMMENT '操作说明', PRIMARY KEY (`ID`) ) ENGINE = InnoDB - DEFAULT CHARSET = utf8mb4 COMMENT ='居民信息审核表'; \ No newline at end of file + DEFAULT CHARSET = utf8mb4 COMMENT ='居民信息审核表';