|
|
|
@ -250,4 +250,42 @@ public class SysRoleService implements ISysRoleService {
|
|
|
|
|
return new ListPager(roleRDao.findByHqlWherePage(hqlPack + role.orderBy(), pager), pager);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void checkSysRoleOnly(SysRole role) {
|
|
|
|
|
if(role != null){
|
|
|
|
|
// 登录名唯一教研
|
|
|
|
|
if(!checkSysRoleName(role.getName(), role.getId() == null ? 0 : role.getId())){
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_EXIT.getCode())
|
|
|
|
|
.setErrorDetail("用户名已存在")
|
|
|
|
|
.setErrorSolution("请重新输入用户名")
|
|
|
|
|
.build();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 登录名 唯一检查
|
|
|
|
|
* @param roleName
|
|
|
|
|
* @param roleId
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
private boolean checkSysRoleName(String roleName, long roleId) {
|
|
|
|
|
int count = 0;
|
|
|
|
|
if(roleId > 0){
|
|
|
|
|
StringBuffer sw = new StringBuffer();
|
|
|
|
|
HqlPack.getNumEqualPack(CommonEnumUtil.IS_VAILD.VAILD.getValue(),"isValid",sw);
|
|
|
|
|
HqlPack.getStringEqualPack(roleName,"name",sw);
|
|
|
|
|
HqlPack.getNumNOEqualPack(roleId,"id",sw);
|
|
|
|
|
count = roleRDao.findByHqlWhereCount(sw.toString());
|
|
|
|
|
}else{
|
|
|
|
|
count = roleRDao.findByPropertyCount(
|
|
|
|
|
new String[]{"name","isValid"},
|
|
|
|
|
new Object[]{roleName,CommonEnumUtil.IS_VAILD.VAILD.getValue()});
|
|
|
|
|
}
|
|
|
|
|
return count <= 0 ;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|