放出关键代码——UserController
/**
* 用户登录
* @return
*/
@ApiOperation("用户登录")
@PostMapping("login")
public JsonData login(@ApiParam("用户登录对象") @RequestBody UserLoginRequest userLoginRequest){
JsonData jsonData = userService.login(userLoginRequest);
return jsonData;
} UserService
/**
* 用户登录
* @param userLoginRequest
* @return
*/
JsonData login(UserLoginRequest userLoginRequest); UserLoginRequest
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "登录对象",description = "用户登录请求对象")
public class UserLoginRequest {
@ApiModelProperty(value = "邮箱", example = "794666918@qq.com")
private String mail;
@ApiModelProperty(value = "密码", example = "123456")
private String pwd;
} UserServiceImpl
/**
* 用户注册,初始化福利信息 TODO
* @param userDO
*/
private void userRegisterInitTask(UserDO userDO){
}
/**
* 1、根据Mail去找有没这记录
* 2、有的话,则用秘钥+用户传递的明文密码,进行加密,再和数据库的密文进行匹配
*
* @param userLoginRequest
* @return
*/
@Override
public JsonData login(UserLoginRequest userLoginRequest) {
List<UserDO> userDOList = userMapper.selectList(new QueryWrapper<UserDO>().eq("mail",userLoginRequest.getMail()));
if(userDOList!=null && userDOList.size()==1){
//已经注册
UserDO userDO = userDOList.get(0);
String cryptPwd = Md5Crypt.md5Crypt(userLoginRequest.getPwd().getBytes(),userDO.getSecret());
if(cryptPwd.equals(userDO.getPwd())){
//登录成功,生成token TODO
return null;
}else {
return JsonData.buildResult(BizCodeEnum.ACCOUNT_PWD_ERROR);
}
}else {
//未注册
return JsonData.buildResult(BizCodeEnum.ACCOUNT_UNREGISTER);
}
} 本文作者为DBC,转载请注明。