本文共 1893 字,大约阅读时间需要 6 分钟。
package com.atguigu.educenter.service.impl;import com.atguigu.commonutils.JwtUtils;import com.atguigu.commonutils.MD5;import com.atguigu.educenter.entity.UcenterMember;import com.atguigu.educenter.mapper.UcenterMemberMapper;import com.atguigu.educenter.service.UcenterMemberService;import com.atguigu.servicebase.exceptionhandler.GuliException;import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;import org.springframework.stereotype.Service;import org.springframework.util.StringUtils;/** ** 会员表 服务实现类 *
* * @author testjava * @since 2021-01-03 */@Servicepublic class UcenterMemberServiceImpl extends ServiceImplimplements UcenterMemberService { @Override public String login(UcenterMember ucenterMember) { //获取登录的手机号和密码 String mobile = ucenterMember.getMobile(); String password = ucenterMember.getPassword(); //手机号和密码非空判断 if(StringUtils.isEmpty(mobile) || StringUtils.isEmpty(password)) { throw new GuliException(20001, "登陆失败"); } //判断手机号是否正确 UcenterMember mobileMember = baseMapper.selectOne(new QueryWrapper ().eq("mobile", mobile)); if(mobileMember == null) { throw new GuliException(20001, "没有这个手机号"); } //因为数据库的密码是经过加密的 所以要先把密码转化为密文然后和数据库的对比 //加密方式MD5 特点只能加密无法解密 //判断密码对不对 if(!MD5.encrypt(password).equals(mobileMember.getPassword())) { throw new GuliException(20001, "密码不对"); } //判断用户是否禁用 if(mobileMember.getIsDisabled()) { throw new GuliException(20001, "该用户已经被禁用"); } //走到这一步说明没问题了 //生成token 用到jwt工具类 这里的id 和nickname是从数据库中查到的不是从前端来的 String jwtToken = JwtUtils.getJwtToken(mobileMember.getId(), mobileMember.getNickname()); return jwtToken; }}
转载地址:http://dahzi.baihongyu.com/