From d0d3c95fafe27ca639104b6604e42354c99f56fa Mon Sep 17 00:00:00 2001 From: gongbiao Date: Fri, 14 Sep 2018 17:29:28 +0800 Subject: [PATCH] =?UTF-8?q?[=E8=B4=A6=E6=88=B7=E7=AE=A1=E7=90=86][?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E7=AE=A1=E7=90=86][=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E4=B8=9A=E5=8A=A1=E9=80=BB=E8=BE=91,=E5=8A=A0=E6=89=8B?= =?UTF-8?q?=E6=9C=BA=E5=8F=B7=EF=BC=8C=E7=94=A8=E6=88=B7=E5=90=8D=E3=80=81?= =?UTF-8?q?=E6=89=8B=E6=9C=BA=E5=8F=B7=E5=94=AF=E4=B8=80]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/MallUserInfoController.java | 37 +++++++++++-------- .../java/com/simple/common/ErrorCode.java | 2 + .../com/simple/domain/po/MallUserInfo.java | 15 +++++++- .../com/simple/mapper/MallUserInfoMapper.java | 7 +++- .../simple/service/MallUserInfoService.java | 9 +++-- .../service/impl/MallUserInfoServiceImpl.java | 23 ++++++++++-- .../resources/mapper/MallUserInfoMapper.xml | 21 ++++++++++- 7 files changed, 86 insertions(+), 28 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/simple/controller/MallUserInfoController.java b/mallinkAdmin/src/main/java/com/simple/controller/MallUserInfoController.java index 25952ef1a..32a80ba9e 100644 --- a/mallinkAdmin/src/main/java/com/simple/controller/MallUserInfoController.java +++ b/mallinkAdmin/src/main/java/com/simple/controller/MallUserInfoController.java @@ -1,6 +1,7 @@ package com.simple.controller; import com.github.pagehelper.PageInfo; +import com.simple.common.ErrorCode; import com.simple.common.ResultData; import com.simple.domain.po.*; import com.simple.service.*; @@ -78,8 +79,13 @@ public class MallUserInfoController extends BaseController { @ApiOperation(value = "创建用户接口", response = String.class) @PostMapping("add") public ResultData createUser(@RequestBody MallUserInfo userInfo) { - Assert.notNull(userInfo.getUsername(), "用户名不能为空"); - Assert.isTrue(checkUnique(userInfo.getUsername(), 0), "重复的用户名"); + + if(checkUniqueName(userInfo.getUsername(), null)){ + return new ResultData(ErrorCode.USER_NAME_IS_FOUND,"用户名已存在"); + } + if(checkUniquePhone(userInfo.getPhone(), null)){ + return new ResultData(ErrorCode.USER_PHONE_IS_FOUND,"手机号已存在"); + } Assert.notNull(userInfo.getPassword(), "密码不能为空"); PasswordHelper passwordHelper = new PasswordHelper(); passwordHelper.encryptPassword(userInfo); @@ -97,8 +103,13 @@ public class MallUserInfoController extends BaseController { @ApiOperation(value = "修改用户接口", response = String.class) @PostMapping("update") public ResultData updateUser(@RequestBody MallUserInfo userInfo) { - Assert.notNull(userInfo.getUsername(), "用户名不能为空"); - Assert.isTrue(checkUnique(userInfo.getUsername(), 1), "重复的用户名"); + //Assert.notNull(userInfo.getUsername(), "用户名不能为空"); + if(checkUniqueName(userInfo.getUsername(), userInfo.getId())){ + return new ResultData(ErrorCode.USER_NAME_IS_FOUND,"用户名已存在"); + } + if(checkUniquePhone(userInfo.getPhone(), userInfo.getId())){ + return new ResultData(ErrorCode.USER_PHONE_IS_FOUND,"手机号已存在"); + } // Assert.notNull(userInfo.getPassword(), "密码不能为空"); // PasswordHelper passwordHelper = new PasswordHelper(); // passwordHelper.encryptPassword(userInfo); @@ -155,18 +166,12 @@ public class MallUserInfoController extends BaseController { return new ResultData(); } - private boolean checkUnique(String username, Integer type) { - if (type == 0) { - if (userInfoService.cntByUserName(username) > 0) { - return false; - } - } - if (type == 1) { - if (userInfoService.cntByUserName(username) > 1) { - return false; - } - } - return true; + private boolean checkUniqueName(String username, Long id) { + return userInfoService.cntByUserName(username,id); + } + + private boolean checkUniquePhone(String phone, Long id) { + return userInfoService.cntByUserPhone(phone,id); } diff --git a/mallinkService/src/main/java/com/simple/common/ErrorCode.java b/mallinkService/src/main/java/com/simple/common/ErrorCode.java index c7d0cf2be..1228a07cb 100644 --- a/mallinkService/src/main/java/com/simple/common/ErrorCode.java +++ b/mallinkService/src/main/java/com/simple/common/ErrorCode.java @@ -56,6 +56,8 @@ public enum ErrorCode{ BUSER_NOT_IN_APP(2005, "用户不是此app用户"), KAPCHA_NOT_VALID(2006, "验证码已失效"), KAPCHA_NOT_EQUAL(2007, "验证码不正确"), + USER_NAME_IS_FOUND(2008,"用户名已存在"), + USER_PHONE_IS_FOUND(2009,"手机号已存在"), /** * 商场/商户 diff --git a/mallinkService/src/main/java/com/simple/domain/po/MallUserInfo.java b/mallinkService/src/main/java/com/simple/domain/po/MallUserInfo.java index 49d8c50bd..b19483670 100644 --- a/mallinkService/src/main/java/com/simple/domain/po/MallUserInfo.java +++ b/mallinkService/src/main/java/com/simple/domain/po/MallUserInfo.java @@ -67,7 +67,10 @@ public class MallUserInfo implements Serializable { private Integer isAdmin; @io.swagger.annotations.ApiModelProperty(value="昵称",name="nickName") private String nickName; - + + @io.swagger.annotations.ApiModelProperty(value="手机",name="phone") + private String phone; + @Transient private Long roleId; @@ -187,7 +190,15 @@ public class MallUserInfo implements Serializable { } public void setCaptcha(String captcha) { - this.captcha = captcha; + this.captcha = captcha; + } + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; } public static enum Field diff --git a/mallinkService/src/main/java/com/simple/mapper/MallUserInfoMapper.java b/mallinkService/src/main/java/com/simple/mapper/MallUserInfoMapper.java index 07340c82f..11a1b6cda 100644 --- a/mallinkService/src/main/java/com/simple/mapper/MallUserInfoMapper.java +++ b/mallinkService/src/main/java/com/simple/mapper/MallUserInfoMapper.java @@ -5,6 +5,7 @@ import com.simple.domain.po.MallUserInfo; import org.apache.ibatis.annotations.Param; import java.util.List; +import java.util.Map; public interface MallUserInfoMapper extends CommonMapper { @@ -14,6 +15,8 @@ public interface MallUserInfoMapper extends CommonMapper { Integer hasButtonPermission(@Param("userId") Long userId, @Param("permission") String permission); - - + + + long cntByUserName(Map params); + } diff --git a/mallinkService/src/main/java/com/simple/service/MallUserInfoService.java b/mallinkService/src/main/java/com/simple/service/MallUserInfoService.java index fb58165ff..d43671703 100644 --- a/mallinkService/src/main/java/com/simple/service/MallUserInfoService.java +++ b/mallinkService/src/main/java/com/simple/service/MallUserInfoService.java @@ -67,7 +67,10 @@ public interface MallUserInfoService { * @return 是否有权限(true: 有| false: 没有) */ boolean hasButtonPermission(Long userId, String permission); - - - + + + boolean cntByUserName(String username, Long id); + + boolean cntByUserPhone(String phone, Long id); + } diff --git a/mallinkService/src/main/java/com/simple/service/impl/MallUserInfoServiceImpl.java b/mallinkService/src/main/java/com/simple/service/impl/MallUserInfoServiceImpl.java index 70295f00c..3515748f5 100644 --- a/mallinkService/src/main/java/com/simple/service/impl/MallUserInfoServiceImpl.java +++ b/mallinkService/src/main/java/com/simple/service/impl/MallUserInfoServiceImpl.java @@ -12,6 +12,9 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.HashMap; +import java.util.Map; + @Service public class MallUserInfoServiceImpl implements MallUserInfoService { @@ -79,7 +82,21 @@ public class MallUserInfoServiceImpl implements MallUserInfoService { public boolean hasButtonPermission(Long userId, String permission) { return mallUserInfoMapper.hasButtonPermission(userId, permission) == null ? false : true; } - - - + + @Override + public boolean cntByUserName(String username, Long id) { + Map params=new HashMap<>(); + params.put("username",username); + params.put("id",id); + return mallUserInfoMapper.cntByUserName(params)>0?true:false; + } + + @Override + public boolean cntByUserPhone(String phone, Long id) { + Map params=new HashMap<>(); + params.put("phone",phone); + params.put("id",id); + return mallUserInfoMapper.cntByUserName(params)>0?true:false; + } + } diff --git a/mallinkService/src/main/resources/mapper/MallUserInfoMapper.xml b/mallinkService/src/main/resources/mapper/MallUserInfoMapper.xml index b1664b6ac..0c2b46581 100644 --- a/mallinkService/src/main/resources/mapper/MallUserInfoMapper.xml +++ b/mallinkService/src/main/resources/mapper/MallUserInfoMapper.xml @@ -12,10 +12,12 @@ + + - `id`,`tenant_id`,`username`,`name`,`password`,`create_time`,`last_login_time`,`status`,`is_admin`,`nick_name` + `id`,`tenant_id`,`username`,`name`,`password`,`create_time`,`last_login_time`,`status`,`is_admin`,`nick_name`,`phone` @@ -69,7 +71,10 @@ and `is_admin` = #{isAdmin} - + + + and `phone` = #{phone} + and id in @@ -98,5 +103,17 @@ AND p.permission = #{permission} +