对登录接口进行记录以及详解:
1.若是验证码登录,判断验证码是否正确,因为用户可能是验证码登录或者是密码登录所以可以不传
(1).如果验证码不为空,调用查询用户短信验证码接口,参数需要手机号,验证码,type为0(人为设置),
在调用mapper中相应方法,后进入该接口的xml文件,如图
resultmap为自定义,将实体类与数据库字段进行匹配,如图:
(2)如果实体类不为空,则得出该实体类的创建时间,与当前时间相减后,若验证码时效超过60秒则判定为该验证码失效,不然则提示登录成功,若实体类为空,这说明该验证码无效
2.若是账户密码登录,首先通过手机号查询出该用户是否存在,若用户不存在,直接返回账号不存在
如果账号存在则需要对用户密码进行比对,因为数据库中存的是加密的密码,所以需要先用DigestUtils中的md5Hx方法进行编译,得到编译后的密码和数据库的密码比较,不相同则密码不正确,相同时,则需要比较该用户的状态是否为禁用,如果为禁用则返回该账号被禁用
若该账号并没有被禁用,则编译一个systoken存入数据库,如图: