登录功能实现
This commit is contained in:
parent
006978a484
commit
ee6fe3c37a
|
|
@ -26,7 +26,8 @@ public class User implements Serializable {
|
|||
private Integer channel; // 注册渠道
|
||||
private String salt; // 加密盐巴
|
||||
private Integer sex; // 用户性别: [1=男, 2=女]
|
||||
private Integer is_delete; // 是否删除: [0=否, 1=是]
|
||||
private Integer isDisable; // 是否禁用: [0=否, 1=是]
|
||||
private Integer isDelete; // 是否删除: [0=否, 1=是]
|
||||
private String lastLoginIp; // 最后登录IP
|
||||
private Long lastLoginTime; // 最后登录时间
|
||||
private Long createTime; // 创建时间
|
||||
|
|
|
|||
|
|
@ -41,12 +41,11 @@ public class LoginController {
|
|||
case "mnp":
|
||||
map = iLoginService.mnpLogin(params);
|
||||
break;
|
||||
case "sms":
|
||||
Assert.isNull(params.get("code"), "code参数缺失!");
|
||||
iLoginService.smsLogin(params);
|
||||
case "mobile":
|
||||
map = iLoginService.mobileLogin(params);
|
||||
break;
|
||||
case "account":
|
||||
iLoginService.accountLogin(params);
|
||||
map = iLoginService.accountLogin(params);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -18,17 +18,38 @@ public interface ILoginService {
|
|||
void register(RegisterParam registerParam);
|
||||
|
||||
/**
|
||||
* 微信小程序登录
|
||||
* 微信登录
|
||||
*
|
||||
* @author fzr
|
||||
* @param scene 场景
|
||||
* @param code 编码
|
||||
* @param params 参数
|
||||
* @return Map<String, Object>
|
||||
*/
|
||||
Map<String, Object> mnpLogin(Map<String, String> params);
|
||||
|
||||
void smsLogin(Map<String, String> params);
|
||||
/**
|
||||
* 手机登录
|
||||
*
|
||||
* @author fzr
|
||||
* @param params 参数
|
||||
* @return Map<String, Object>
|
||||
*/
|
||||
Map<String, Object> mobileLogin(Map<String, String> params);
|
||||
|
||||
void accountLogin(Map<String, String> params);
|
||||
/**
|
||||
* 账号登录
|
||||
*
|
||||
* @author fzr
|
||||
* @param params 参数
|
||||
* @return Map<String, Object>
|
||||
*/
|
||||
Map<String, Object> accountLogin(Map<String, String> params);
|
||||
|
||||
/**
|
||||
* 忘记密码
|
||||
*
|
||||
* @author fzr
|
||||
* @param params 参数
|
||||
*/
|
||||
void forgotPassword(Map<String, String> params);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -172,14 +172,67 @@ public class LoginServiceImpl implements ILoginService {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 手机号登录
|
||||
*
|
||||
* @author fzr
|
||||
* @param params 参数
|
||||
* @return Map<String, Object>
|
||||
*/
|
||||
@Override
|
||||
public void smsLogin(Map<String, String> params) {
|
||||
public Map<String, Object> mobileLogin(Map<String, String> params) {
|
||||
Assert.notNull(params.get("mobile"), "mobile参数缺失!");
|
||||
Assert.notNull(params.get("code"), "code参数缺失!");
|
||||
|
||||
// 校验验证码
|
||||
|
||||
// 查询手机号
|
||||
User user = userMapper.selectOne(new QueryWrapper<User>()
|
||||
.select("id,username,mobile,is_disable")
|
||||
.eq("mobile", params.get("mobile"))
|
||||
.eq("is_delete", 0)
|
||||
.last("limit 1"));
|
||||
|
||||
Assert.notNull(user, "账号不存在!");
|
||||
Assert.isFalse(user.getIsDisable() != 0, "账号已禁用!");
|
||||
|
||||
String token = ToolsUtil.makeToken();
|
||||
Map<String, Object> response = new LinkedHashMap<>();
|
||||
response.put("id", user.getId());
|
||||
response.put("token", token);
|
||||
return response;
|
||||
}
|
||||
|
||||
/**
|
||||
* 账号登录
|
||||
*
|
||||
* @author fzr
|
||||
* @param params 参数
|
||||
* @return Map<String, Object>
|
||||
*/
|
||||
@Override
|
||||
public void accountLogin(Map<String, String> params) {
|
||||
public Map<String, Object> accountLogin(Map<String, String> params) {
|
||||
Assert.notNull(params.get("username"), "username参数缺失!");
|
||||
Assert.notNull(params.get("password"), "password参数缺失!");
|
||||
String username = params.get("username");
|
||||
String password = params.get("password");
|
||||
|
||||
User user = userMapper.selectOne(new QueryWrapper<User>()
|
||||
.select("id,username,password,salt,mobile,is_disable")
|
||||
.eq("username", username)
|
||||
.eq("is_delete", 0)
|
||||
.last("limit 1"));
|
||||
|
||||
Assert.notNull(user, "账号不存在!");
|
||||
String pwd = ToolsUtil.makeMd5(password+user.getSalt());
|
||||
Assert.isFalse(!pwd.equals(user.getPassword()), "账号或密码错误!");
|
||||
Assert.isFalse(user.getIsDisable() != 0, "账号已被禁用!");
|
||||
|
||||
String token = ToolsUtil.makeToken();
|
||||
Map<String, Object> response = new LinkedHashMap<>();
|
||||
response.put("id", user.getId());
|
||||
response.put("token", token);
|
||||
return response;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -207,4 +260,5 @@ public class LoginServiceImpl implements ILoginService {
|
|||
}
|
||||
return sn;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue