|
|
@ -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;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|