From 146da9d26c0416173d149a7d3b69067a4ebdc6e9 Mon Sep 17 00:00:00 2001 From: yinzuomei Date: Mon, 9 Dec 2019 10:47:36 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=E4=BF=A1=E6=81=AF=20?= =?UTF-8?q?=E5=B1=85=E4=BD=8F=E7=BD=91=E6=A0=BC=20=E5=A4=84=E7=90=86?= =?UTF-8?q?=E6=9C=BA=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/form/EpdcCompleteUserInfoFormDTO.java | 5 ++++ .../dto/result/EpdcCompleteUserInfoDTO.java | 14 +++++++--- .../epdc/service/impl/AppUserServiceImpl.java | 21 ++++++++++++++- .../java/com/elink/esua/epdc/dto/UserDTO.java | 23 ++++++++++++++++ .../epdc/dto/epdc/EpdcCompleteAppUserDTO.java | 4 +++ .../elink/esua/epdc/entity/UserEntity.java | 26 ++++++++++++++++++- .../impl/UserGridRelationServiceImpl.java | 9 ++++++- .../epdc/service/impl/UserServiceImpl.java | 23 ++++++++-------- 8 files changed, 106 insertions(+), 19 deletions(-) diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-client/src/main/java/com/elink/esua/epdc/dto/form/EpdcCompleteUserInfoFormDTO.java b/esua-epdc/epdc-module/epdc-api/epdc-api-client/src/main/java/com/elink/esua/epdc/dto/form/EpdcCompleteUserInfoFormDTO.java index 8d89fe03a..ca49d2f3e 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-client/src/main/java/com/elink/esua/epdc/dto/form/EpdcCompleteUserInfoFormDTO.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-client/src/main/java/com/elink/esua/epdc/dto/form/EpdcCompleteUserInfoFormDTO.java @@ -72,4 +72,9 @@ public class EpdcCompleteUserInfoFormDTO implements Serializable { * 加密算法的初始向量 */ private String iv; + + /** + * 居住网格id + */ + private Long gridId; } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-client/src/main/java/com/elink/esua/epdc/dto/result/EpdcCompleteUserInfoDTO.java b/esua-epdc/epdc-module/epdc-api/epdc-api-client/src/main/java/com/elink/esua/epdc/dto/result/EpdcCompleteUserInfoDTO.java index 31cd785e6..7fe641f40 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-client/src/main/java/com/elink/esua/epdc/dto/result/EpdcCompleteUserInfoDTO.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-client/src/main/java/com/elink/esua/epdc/dto/result/EpdcCompleteUserInfoDTO.java @@ -34,10 +34,6 @@ public class EpdcCompleteUserInfoDTO implements Serializable { */ private String realName; - /** - * 网格Id - */ - private Long gridId; /** * 所在道路 */ @@ -66,4 +62,14 @@ public class EpdcCompleteUserInfoDTO implements Serializable { * 性别 */ private String sex; + + /** + * 居住网格id + */ + private Long gridId; + + /** + * 居住网格名称 + */ + private String gridName; } diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AppUserServiceImpl.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AppUserServiceImpl.java index 2ba55265c..22aa690c6 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AppUserServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AppUserServiceImpl.java @@ -766,6 +766,7 @@ public class AppUserServiceImpl implements AppUserService { public Result completeUserInfo(TokenDto tokenDto, EpdcCompleteUserInfoFormDTO infoDto) { UserDTO userDto = ConvertUtils.sourceToTarget(infoDto, UserDTO.class); + userDto.setDeptId(Long.valueOf(infoDto.getGridId())); userDto.setId(tokenDto.getUserId()); if (StringUtils.isNotBlank(infoDto.getWxCode())) { @@ -798,7 +799,7 @@ public class AppUserServiceImpl implements AppUserService { } String userState = verifyResult.getData(); - UserGridRelationDTO userGrid = this.packageUserGridRelationInfo(tokenDto.getGridId()); + UserGridRelationDTO userGrid = this.packageUserGridRelationInfo(infoDto.getGridId()); EpdcCompleteAppUserDTO completeAppUserDto = ConvertUtils.sourceToTarget(userDto, EpdcCompleteAppUserDTO.class); completeAppUserDto = this.packageUserCompleteInfo(completeAppUserDto, userState); // 组装对象,准备保存用户信息 @@ -839,6 +840,24 @@ public class AppUserServiceImpl implements AppUserService { Result result = userFeignClient.getUserInfoById(tokenDto.getUserId()); if (result.success() && null != result.getData()) { + if (("0").equals(result.getData().getState())) { + //未完善信息获取用户当前所在的网格的后两级机构(社区-网格),返回给前端 + Result resultParentAndAllDeptDTO = adminFeignClient.getParentAndAllDept(tokenDto.getGridId()); + if (resultParentAndAllDeptDTO.success() && null != resultParentAndAllDeptDTO.getData()) { + String allDeptNames = resultParentAndAllDeptDTO.getData().getAllDeptNames(); + if (StringUtils.isNotBlank(allDeptNames)) { + String gridName = allDeptNames.substring(allDeptNames.lastIndexOf("-", allDeptNames.lastIndexOf("-") - 1) + 1); + result.getData().setGrid(gridName); + } + } + } else { + //用户已完善信息:获取用户alldeptnames 的后两级机构(社区-网格) + String allDeptNames = result.getData().getAllDeptNames(); + if (StringUtils.isNotBlank(allDeptNames)) { + String gridName = allDeptNames.substring(allDeptNames.lastIndexOf("-", allDeptNames.lastIndexOf("-") - 1) + 1); + result.getData().setGrid(gridName); + } + } EpdcCompleteUserInfoDTO dto = ConvertUtils.sourceToTarget(result.getData(), EpdcCompleteUserInfoDTO.class); dto.setGridId(tokenDto.getGridId()); return new Result().ok(dto); diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/UserDTO.java b/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/UserDTO.java index 5465194a6..ce34d84da 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/UserDTO.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/UserDTO.java @@ -328,5 +328,28 @@ public class UserDTO implements Serializable { * 认证历史-不通过次数 */ private Integer totalFailNum; + /** + * 居住网格id + */ + private Long deptId; + /** + * 父所有部门 + */ + private String parentDeptIds; + + /** + * 父所有部门 + */ + private String parentDeptNames; + + /** + * 所有部门ID + */ + private String allDeptIds; + + /** + * 所有部门名称 + */ + private String allDeptNames; } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/epdc/EpdcCompleteAppUserDTO.java b/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/epdc/EpdcCompleteAppUserDTO.java index f9a2e0cdf..fc6f1734d 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/epdc/EpdcCompleteAppUserDTO.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/epdc/EpdcCompleteAppUserDTO.java @@ -99,4 +99,8 @@ public class EpdcCompleteAppUserDTO implements Serializable { */ private String wxUnionId; + /** + * 居住网格id + */ + private Long deptId; } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/entity/UserEntity.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/entity/UserEntity.java index 51b4d8836..c1ae65855 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/entity/UserEntity.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/entity/UserEntity.java @@ -229,4 +229,28 @@ public class UserEntity extends BaseEpdcEntity { */ private String remark; -} \ No newline at end of file + /** + * 居住网格id + */ + private Long deptId; + + /** + * 父所有部门 + */ + private String parentDeptIds; + + /** + * 父所有部门 + */ + private String parentDeptNames; + + /** + * 所有部门ID + */ + private String allDeptIds; + + /** + * 所有部门名称 + */ + private String allDeptNames; +} diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserGridRelationServiceImpl.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserGridRelationServiceImpl.java index 34f4768f3..7ddb09848 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserGridRelationServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserGridRelationServiceImpl.java @@ -136,8 +136,15 @@ public class UserGridRelationServiceImpl extends BaseServiceImpl> listUserGridForApi(String userId) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq(UserFieldConsant.USER_ID, userId) - .orderByDesc(UserFieldConsant.SWITCHED_TIME); + .orderByDesc(UserFieldConsant.SWITCHED_TIME); List entityList = this.baseDao.selectList(queryWrapper); + for (UserGridRelationEntity userGridRelationEntity : entityList) { + String allDeptNames = userGridRelationEntity.getAllDeptNames(); + if (StringUtils.isNotBlank(allDeptNames)) { + String gridName = allDeptNames.substring(allDeptNames.lastIndexOf("-", allDeptNames.lastIndexOf("-") - 1) + 1); + userGridRelationEntity.setGrid(gridName); + } + } List dtoList = ConvertUtils.sourceToTarget(entityList, EpdcUserGridResultDTO.class); return new Result>().ok(dtoList); } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java index c488b016c..adba69d00 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java @@ -505,24 +505,17 @@ public class UserServiceImpl extends BaseServiceImpl implem // 身份证号 String identityNo = userDto.getIdentityNo(); + + Result parentAndAllDeptDTOResult = adminFeignClient.getParentAndAllDept(String.valueOf(userGridRelation.getGridId())); + if (!parentAndAllDeptDTOResult.success()) { + return new Result().error(parentAndAllDeptDTOResult.getMsg()); + } if (YesOrNoEnum.YES.value().equals(userDto.getPartyFlag())) { PartyMembersEntity partyMembersEntity = new PartyMembersEntity(); - - Result parentAndAllDeptDTOResult = adminFeignClient.getParentAndAllDept(String.valueOf(userGridRelation.getGridId())); - if (!parentAndAllDeptDTOResult.success()) { - return new Result().error(parentAndAllDeptDTOResult.getMsg()); - } partyMembersEntity.setAllDeptNames(parentAndAllDeptDTOResult.getData().getAllDeptNames()); partyMembersEntity.setAllDeptIds(parentAndAllDeptDTOResult.getData().getAllDeptIds()); partyMembersEntity.setParentDeptNames(parentAndAllDeptDTOResult.getData().getParentDeptNames()); partyMembersEntity.setParentDeptIds(parentAndAllDeptDTOResult.getData().getParentDeptIds()); - -// //修改数据库结构 -// partyMembersEntity.setAllDeptNames(userGridRelation.getStreet() + "-" + userGridRelation.getCommunity() + "-" + userGridRelation.getGrid()); -// partyMembersEntity.setAllDeptIds(userGridRelation.getStreetId() + "," + userGridRelation.getCommunityId() + "," + userGridRelation.getGridId()); -// partyMembersEntity.setParentDeptNames(userGridRelation.getStreet() + "-" + userGridRelation.getCommunity()); -// partyMembersEntity.setParentDeptIds(userGridRelation.getStreetId() + "," + userGridRelation.getCommunityId()); - partyMembersEntity.setGridId(userGridRelation.getGridId()); partyMembersEntity.setGridName(userGridRelation.getGrid()); partyMembersEntity.setRegistFlag(YesOrNoEnum.YES.value()); @@ -579,6 +572,12 @@ public class UserServiceImpl extends BaseServiceImpl implem userDto.setLastName(lastName); userDto.setNickname(nicknamePrefix.concat(lastName).concat(UserSexEnum.FEMALE.sex().equals(userDto.getSex()) ? "女士" : "先生")); + //保存用户居住地所在网格,及其他冗余字段。 + userDto.setAllDeptIds(parentAndAllDeptDTOResult.getData().getAllDeptIds()); + userDto.setAllDeptNames(parentAndAllDeptDTOResult.getData().getAllDeptNames()); + userDto.setParentDeptIds(parentAndAllDeptDTOResult.getData().getParentDeptIds()); + userDto.setParentDeptNames(parentAndAllDeptDTOResult.getData().getParentDeptNames()); + UserEntity userEntity = ConvertUtils.sourceToTarget(userDto, UserEntity.class); boolean updateUser = this.updateById(userEntity); if (!updateUser) {