登录功能实现
This commit is contained in:
parent
006978a484
commit
ee6fe3c37a
|
|
@ -26,7 +26,8 @@ public class User implements Serializable {
|
||||||
private Integer channel; // 注册渠道
|
private Integer channel; // 注册渠道
|
||||||
private String salt; // 加密盐巴
|
private String salt; // 加密盐巴
|
||||||
private Integer sex; // 用户性别: [1=男, 2=女]
|
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 String lastLoginIp; // 最后登录IP
|
||||||
private Long lastLoginTime; // 最后登录时间
|
private Long lastLoginTime; // 最后登录时间
|
||||||
private Long createTime; // 创建时间
|
private Long createTime; // 创建时间
|
||||||
|
|
|
||||||
|
|
@ -41,12 +41,11 @@ public class LoginController {
|
||||||
case "mnp":
|
case "mnp":
|
||||||
map = iLoginService.mnpLogin(params);
|
map = iLoginService.mnpLogin(params);
|
||||||
break;
|
break;
|
||||||
case "sms":
|
case "mobile":
|
||||||
Assert.isNull(params.get("code"), "code参数缺失!");
|
map = iLoginService.mobileLogin(params);
|
||||||
iLoginService.smsLogin(params);
|
|
||||||
break;
|
break;
|
||||||
case "account":
|
case "account":
|
||||||
iLoginService.accountLogin(params);
|
map = iLoginService.accountLogin(params);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -18,17 +18,38 @@ public interface ILoginService {
|
||||||
void register(RegisterParam registerParam);
|
void register(RegisterParam registerParam);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 微信小程序登录
|
* 微信登录
|
||||||
*
|
*
|
||||||
* @author fzr
|
* @author fzr
|
||||||
* @param scene 场景
|
* @param params 参数
|
||||||
* @param code 编码
|
* @return Map<String, Object>
|
||||||
*/
|
*/
|
||||||
Map<String, Object> mnpLogin(Map<String, String> params);
|
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);
|
void forgotPassword(Map<String, String> params);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -172,14 +172,67 @@ public class LoginServiceImpl implements ILoginService {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 手机号登录
|
||||||
|
*
|
||||||
|
* @author fzr
|
||||||
|
* @param params 参数
|
||||||
|
* @return Map<String, Object>
|
||||||
|
*/
|
||||||
@Override
|
@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
|
@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
|
@Override
|
||||||
|
|
@ -207,4 +260,5 @@ public class LoginServiceImpl implements ILoginService {
|
||||||
}
|
}
|
||||||
return sn;
|
return sn;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue