手机号登录

master
LegnaYet 6 years ago
parent 8caf8587a9
commit 452ae35c93

@ -190,11 +190,8 @@ public class LoginServiceImpl implements LoginService {
accountQw.eq("login",mobile); accountQw.eq("login",mobile);
accountQw.eq("type",AccountEnum.ACCOUNT_TYPE_MOBILE.getType()); accountQw.eq("type",AccountEnum.ACCOUNT_TYPE_MOBILE.getType());
List<PrivilageAccountDO> mobileAccounts = privilageAccountDOMapper.selectList(accountQw); List<PrivilageAccountDO> mobileAccounts = privilageAccountDOMapper.selectList(accountQw);
Subject subject = SecurityUtils.getSubject();
UsernamePasswordToken token = null;
Long userId = null; Long userId = null;
if (CollectionUtils.isNotEmpty(mobileAccounts)){ if (CollectionUtils.isNotEmpty(mobileAccounts)){
token = new UsernamePasswordToken(mobileAccounts.get(0).getLogin(), mobileAccounts.get(0).getPassword(), true);
userId = mobileAccounts.get(0).getUserId(); userId = mobileAccounts.get(0).getUserId();
}else{ }else{
QueryWrapper<PrivilageUserDO> userQw = new QueryWrapper<>(); QueryWrapper<PrivilageUserDO> userQw = new QueryWrapper<>();
@ -209,9 +206,7 @@ public class LoginServiceImpl implements LoginService {
privilageAccountDO.setUserId(userId); privilageAccountDO.setUserId(userId);
privilageAccountDO.setType(AccountEnum.ACCOUNT_TYPE_MOBILE.getType()); privilageAccountDO.setType(AccountEnum.ACCOUNT_TYPE_MOBILE.getType());
int insert = privilageAccountDOMapper.insert(privilageAccountDO); int insert = privilageAccountDOMapper.insert(privilageAccountDO);
if (insert > 1){ if (insert == 0){
token = new UsernamePasswordToken(mobile, "", true);
}else{
return new LoginBean(Constants.ERROR_SYSTEM); return new LoginBean(Constants.ERROR_SYSTEM);
} }
}else{ }else{
@ -219,39 +214,25 @@ public class LoginServiceImpl implements LoginService {
} }
} }
try {
subject.login(token);
} catch (UnknownAccountException e) {//账号不存在
return new LoginBean(Constants.ERROR_ACCOUNT_NOT_EXIST);
} catch (IncorrectCredentialsException e) {//密码错误
return new LoginBean(Constants.ERROR_PASSWORD);
}catch (AuthenticationException e) {
log.info("login exception", e);
return new LoginBean(Constants.ERROR_SYSTEM);
}
LoginBean loginBean = new LoginBean(); LoginBean loginBean = new LoginBean();
if (subject.isAuthenticated()) { Map<String, Object> selectAccountMap = new HashMap<>();
Map<String, Object> selectAccountMap = new HashMap<>(); PrivilageUserDO privilageUserDO = privilageUserDOMapper.selectById(userId);
PrivilageUserDO privilageUserDO = privilageUserDOMapper.selectById(userId); PrivilageRoleDO roleDO = privilageRoleDOMapper.selectRoleName(userId);
PrivilageRoleDO roleDO = privilageRoleDOMapper.selectRoleName(userId); Long storeId = privilageUserDOMapper.selectStoreIdByUserId(userId);
Long storeId = privilageUserDOMapper.selectStoreIdByUserId(userId); Map<String, Object> loginInfoMap = new HashMap<>();
Map<String, Object> loginInfoMap = new HashMap<>(); //成功设置信息
//成功设置信息 loginBean.setUserName(privilageUserDO.getName());
loginBean.setUserName(privilageUserDO.getName()); loginBean.setUserId(privilageUserDO.getId());
loginBean.setUserId(privilageUserDO.getId()); loginBean.setRoleId(privilageUserDO.getId());
loginBean.setRoleId(privilageUserDO.getId()); loginBean.setRoleCode(roleDO.getCode());
loginBean.setRoleCode(roleDO.getCode()); loginBean.setStoreId(storeId);
loginBean.setStoreId(storeId); if (StringUtils.isNotBlank(roleDO.getCode()) && !MINI_ROLE_CODE.contains(roleDO.getCode())){
if (StringUtils.isNotBlank(roleDO.getCode()) && !MINI_ROLE_CODE.contains(roleDO.getCode())){ return new LoginBean(Constants.ERROR_ROLE_NO_PERMISSION);
return new LoginBean(Constants.ERROR_ROLE_NO_PERMISSION);
}
loginBean.setLogin(mobile);
loginInfoMap.put("code", LoginEnum.LOGIN_SUCCEED.getCode());
loginBean.setLoginInfo(loginInfoMap);
}else {
return new LoginBean(Constants.LOGIN_NO_PERMISSIONS);
} }
loginBean.setLogin(mobile);
loginInfoMap.put("code", LoginEnum.LOGIN_SUCCEED.getCode());
loginBean.setLoginInfo(loginInfoMap);
return loginBean; return loginBean;
} }

Loading…
Cancel
Save