账号和手机号都可以作为登录的用户名时的登录逻辑

SysUser a = sysUserMapper.getSysUserByUsername(username);

SysUser b = sysUserMapper.getSysUserByPhone(username);

//简单情况: 输入的是账号名,不与手机号重合;输入的是手机号,不与某个账号名重合
if((a != null && b == null) || (a == null && b != null)){
}
//复杂情况:输入的用户名,与某账号名和手机号重合,这种情况不是特殊,有很多,因为有人喜欢用手机号设置为账号名.
//账号名与手机号相同却不是同一账号的情况:有人更换了手机号绑定,账号名却没更改.或者在设置账号名时设置错了自己的手机号
if(a != null && b != null){
    if(a.equals(b){

         a和b是同一个账号

    }else{

        password.equals(a.getPassword())  ||  password.equals(b.getPassword())

        //哪个对登录哪个,如果账户名的密码对,提示他绑定他的手机号

       //如果两个都对,登录手机号的,提示他有另一账号名与他手机号相同(不能提示密码一模一样),提示他如果是本人账号,请他去往那个账号绑定手机号,如果不是,请他更改密码.

}
}

猜你喜欢

转载自blog.csdn.net/programmer188/article/details/113525703
今日推荐