diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java index d9ce85cc4..68d888d0e 100644 --- a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java @@ -70,6 +70,7 @@ public class SysDeptServiceImpl extends BaseServiceImpl wrapper = new QueryWrapper<>(); wrapper.eq("PID", pid) .ne("TYPE_KEY", "district_dept") + .ne("TYPE_KEY", "street_dept") .select(FieldConstant.ID, FieldConstant.NAME) .orderByAsc(FieldConstant.NAME); List entities = this.baseDao.selectList(wrapper); diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java index fab609dca..b5aeff34d 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java @@ -3,6 +3,7 @@ package com.elink.esua.epdc.feign; import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.UserDTO; +import com.elink.esua.epdc.dto.epdc.form.EpdcUserRegistFormDTO; import com.elink.esua.epdc.dto.epdc.result.EpdcUserInfoResultDTO; import com.elink.esua.epdc.feign.fallback.UserFeignClientFallback; import org.springframework.cloud.openfeign.FeignClient; @@ -55,6 +56,17 @@ public interface UserFeignClient { @PostMapping(value = "app-user/epdc-app/user/regist", consumes = MediaType.APPLICATION_JSON_VALUE) Result userRegist(@RequestBody UserDTO userDto); + /** + * 验证用户提交的注册信息 + * + * @param formDto + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author work@yujt.net.cn + * @date 2019/9/21 11:07 + */ + @GetMapping(value = "app-user/epdc-app/user/verify", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE) + Result verifyUserRegisterData(EpdcUserRegistFormDTO formDto); + /** * 移动端获取用户信息 * diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClientFallback.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClientFallback.java index 1baa3e19a..05a91417e 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClientFallback.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClientFallback.java @@ -4,6 +4,7 @@ import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; import com.elink.esua.epdc.commons.tools.utils.ModuleUtils; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.UserDTO; +import com.elink.esua.epdc.dto.epdc.form.EpdcUserRegistFormDTO; import com.elink.esua.epdc.dto.epdc.result.EpdcUserInfoResultDTO; import com.elink.esua.epdc.feign.UserFeignClient; import org.springframework.stereotype.Component; @@ -31,6 +32,11 @@ public class UserFeignClientFallback implements UserFeignClient { return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "userRegist", userDto); } + @Override + public Result verifyUserRegisterData(EpdcUserRegistFormDTO formDto) { + return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "verifyUserRegisterData", formDto); + } + @Override public Result getInfoById(String id) { return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "getInfoById", id); 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 5f202ec78..8e61a8133 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 @@ -100,7 +100,7 @@ public class AppUserServiceImpl implements AppUserService { // 查询当前微信是否已注册用户 Result userInfoResult = userFeignClient.getUserInfoByUnionId(unionId); if (!userInfoResult.success()) { - return new Result().error("查询用户信息失败"); + return new Result().error(userInfoResult.getMsg()); } return this.getTokenByUserDto(userInfoResult.getData()); } @@ -117,7 +117,7 @@ public class AppUserServiceImpl implements AppUserService { // 查询当前微信是否已注册用户 Result userInfoResult = userFeignClient.getUserInfoByOpenId(openId); if (!userInfoResult.success()) { - return new Result().error("查询用户信息失败"); + return new Result().error(userInfoResult.getMsg()); } return this.getTokenByUserDto(userInfoResult.getData()); } @@ -176,15 +176,14 @@ public class AppUserServiceImpl implements AppUserService { } - @Override public Result maUserRegist(EpdcUserRegistFormDTO formDto) { - this.checkFields(formDto); + this.verifyUserRegisterData(formDto); WxMaJscode2SessionResult wxMaUser = this.getWxMaUser(formDto.getWxCode()); - UserDTO userDto = this.packageUserDto(formDto, null, wxMaUser); + // IP地址 HttpServletRequest request = HttpContextUtils.getHttpServletRequest(); userDto.setLastLoginIp(IpUtils.getIpAddr(request)); @@ -195,11 +194,11 @@ public class AppUserServiceImpl implements AppUserService { @Override public Result mpUserRegist(EpdcUserRegistFormDTO formDto) { - this.checkFields(formDto); + this.verifyUserRegisterData(formDto); WxMpUser wxMpUser = this.getWxMpUser(formDto.getWxCode()); - UserDTO userDto = this.packageUserDto(formDto, wxMpUser, null); + HttpServletRequest request = HttpContextUtils.getHttpServletRequest(); userDto.setLastLoginIp(IpUtils.getIpAddr(request)); @@ -214,12 +213,18 @@ public class AppUserServiceImpl implements AppUserService { * @author work@yujt.net.cn * @date 2019/9/20 14:40 */ - private void checkFields(EpdcUserRegistFormDTO formDto) { - // 校验身份证号码 + private void verifyUserRegisterData(EpdcUserRegistFormDTO formDto) { + // 校验身份证号码格式 String verification = IdentityNoUtils.IdentityNoVerification(formDto.getIdentityNo()); if (StringUtils.isNotBlank(verification)) { throw new RenException(verification); } + // 校验身份证号、手机号是否已被注册 + Result verifyUserRegisterData = userFeignClient.verifyUserRegisterData(formDto); + if (!verifyUserRegisterData.success()) { + throw new RenException(verifyUserRegisterData.getMsg()); + } + // 校验手机验证码 this.checkSmsCode(formDto.getMobile(), formDto.getSmsCode()); } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/EpdcAppUserController.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/EpdcAppUserController.java index f7a1892af..67d3e7316 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/EpdcAppUserController.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/EpdcAppUserController.java @@ -3,6 +3,7 @@ package com.elink.esua.epdc.controller; import com.elink.esua.epdc.commons.tools.constant.Constant; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.UserDTO; +import com.elink.esua.epdc.dto.epdc.form.EpdcUserRegistFormDTO; import com.elink.esua.epdc.dto.epdc.result.EpdcUserInfoResultDTO; import com.elink.esua.epdc.service.UserService; import org.springframework.beans.factory.annotation.Autowired; @@ -57,8 +58,8 @@ public class EpdcAppUserController { * @date 2019/9/7 14:20 */ @PostMapping("regist") - public Result userRegist(@RequestBody UserDTO userDto) { - return userService.userRegist(userDto); + public Result userRegister(@RequestBody UserDTO userDto) { + return userService.userRegister(userDto); } /*** @@ -90,4 +91,16 @@ public class EpdcAppUserController { return new Result(); } + /** + * 验证用户提交的注册信息 + * + * @param formDto + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author work@yujt.net.cn + * @date 2019/9/21 11:03 + */ + @GetMapping("verify") + public Result verifyUserRegisterData(@RequestBody EpdcUserRegistFormDTO formDto) { + return userService.verifyUserRegisterData(formDto); + } } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/UserService.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/UserService.java index a813e6bc3..a73760b89 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/UserService.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/UserService.java @@ -21,6 +21,7 @@ import com.elink.esua.epdc.commons.mybatis.service.BaseService; import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.UserDTO; +import com.elink.esua.epdc.dto.epdc.form.EpdcUserRegistFormDTO; import com.elink.esua.epdc.dto.epdc.form.EpdcUserUpdateAvatarFromDTO; import com.elink.esua.epdc.dto.epdc.form.EpdcUserUpdateMobileFromDTO; import com.elink.esua.epdc.dto.epdc.result.EpdcUserInfoResultDTO; @@ -80,7 +81,7 @@ public interface UserService extends BaseService { * @author yujintao * @date 2019/9/7 14:20 */ - Result userRegist(UserDTO userDto); + Result userRegister(UserDTO userDto); /*** * @Description 移动端查询个人信息 @@ -104,4 +105,13 @@ public interface UserService extends BaseService { */ void updateMobileOrAvatar(UserDTO userDto); + /** + * 验证用户提交的注册信息 + * + * @param formDto + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author work@yujt.net.cn + * @date 2019/9/21 11:04 + */ + Result verifyUserRegisterData(EpdcUserRegistFormDTO formDto); } \ No newline at end of file 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 2659eae2c..f68c33ab2 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 @@ -32,6 +32,7 @@ import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dao.UserDao; import com.elink.esua.epdc.dto.PartyMembersDTO; import com.elink.esua.epdc.dto.UserDTO; +import com.elink.esua.epdc.dto.epdc.form.EpdcUserRegistFormDTO; import com.elink.esua.epdc.dto.epdc.form.EpdcUserUpdateAvatarFromDTO; import com.elink.esua.epdc.dto.epdc.form.EpdcUserUpdateMobileFromDTO; import com.elink.esua.epdc.dto.epdc.result.EpdcUserInfoResultDTO; @@ -179,11 +180,7 @@ public class UserServiceImpl extends BaseServiceImpl implem .select(FieldConstant.ID, "NICKNAME", "FACE_IMG", FieldConstant.MOBILE, "REAL_NAME", FieldConstant.STATE, FieldConstant.GRID_ID, "PARTY_FLAG"); UserEntity userEntity = this.baseDao.selectOne(wrapper); - if (null != userEntity) { - UserDTO dto = ConvertUtils.sourceToTarget(userEntity, UserDTO.class); - return new Result().ok(dto); - } - return new Result(); + return new Result().ok(ConvertUtils.sourceToTarget(userEntity, UserDTO.class)); } @Override @@ -194,32 +191,11 @@ public class UserServiceImpl extends BaseServiceImpl implem .select(FieldConstant.ID, "NICKNAME", "FACE_IMG", FieldConstant.MOBILE, "REAL_NAME", FieldConstant.STATE, FieldConstant.GRID_ID, "PARTY_FLAG"); UserEntity userEntity = this.baseDao.selectOne(wrapper); - if (null != userEntity) { - UserDTO dto = ConvertUtils.sourceToTarget(userEntity, UserDTO.class); - return new Result().ok(dto); - } - return new Result(); + return new Result().ok(ConvertUtils.sourceToTarget(userEntity, UserDTO.class)); } @Override - public Result userRegist(UserDTO userDto) { - // 手机号查重 - QueryWrapper wrapper = new QueryWrapper<>(); - wrapper.eq(FieldConstant.MOBILE, userDto.getMobile()) - .ne(FieldConstant.STATE, AppUserAuditStateEnum.AUDIT_FAILURE.value()); - Integer count = this.baseDao.selectCount(wrapper); - if (count > NumConstant.ZERO) { - return new Result().error("注册失败,手机号已被注册"); - } - // 身份证号查重 - wrapper = new QueryWrapper<>(); - wrapper.eq("IDENTITY_NO", userDto.getIdentityNo()) - .ne(FieldConstant.STATE, AppUserAuditStateEnum.AUDIT_FAILURE.value()); - count = this.baseDao.selectCount(wrapper); - if (count > NumConstant.ZERO) { - return new Result().error("注册失败,身份证号已被注册"); - } - + public Result userRegister(UserDTO userDto) { this.save(userDto); return new Result().ok("注册成功"); } @@ -246,4 +222,25 @@ public class UserServiceImpl extends BaseServiceImpl implem baseDao.updateById(userEntity); } + + @Override + public Result verifyUserRegisterData(EpdcUserRegistFormDTO formDto) { + // 手机号查重 + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(FieldConstant.MOBILE, formDto.getMobile()) + .ne(FieldConstant.STATE, AppUserAuditStateEnum.AUDIT_FAILURE.value()); + Integer count = this.baseDao.selectCount(wrapper); + if (count > NumConstant.ZERO) { + return new Result().error("手机号已被注册"); + } + // 身份证号查重 + wrapper = new QueryWrapper<>(); + wrapper.eq("IDENTITY_NO", formDto.getIdentityNo()) + .ne(FieldConstant.STATE, AppUserAuditStateEnum.AUDIT_FAILURE.value()); + count = this.baseDao.selectCount(wrapper); + if (count > NumConstant.ZERO) { + return new Result().error("身份证号已被注册"); + } + return new Result(); + } } \ No newline at end of file