【fix sonar】SysBaseApiImpl文件

This commit is contained in:
梁琦涛
2023-03-10 15:23:25 +08:00
parent 8694cb5543
commit 0e87efded5
@@ -34,6 +34,7 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.apache.shiro.SecurityUtils; import org.apache.shiro.SecurityUtils;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.Cacheable; import org.springframework.cache.annotation.Cacheable;
@@ -126,6 +127,25 @@ public class SysBaseApiImpl implements ISysBaseAPI {
@Override @Override
public List<SysPermissionDataRuleModel> queryPermissionDataRule(String component, String requestPath, String username) { public List<SysPermissionDataRuleModel> queryPermissionDataRule(String component, String requestPath, String username) {
List<SysPermission> currentSyspermission = getSysPermissions(component, requestPath);
if(currentSyspermission!=null && !currentSyspermission.isEmpty()){
List<SysPermissionDataRuleModel> dataRules = new ArrayList<>();
for (SysPermission sysPermission : currentSyspermission) {
// update-begin--Author:scott Date:20191119 for:数据权限规则编码不规范,项目存在相同包名和类名 #722
List<SysPermissionDataRule> temp = sysPermissionDataRuleService.queryPermissionDataRules(username, sysPermission.getId());
if(temp!=null && !temp.isEmpty()) {
//dataRules.addAll(temp);
dataRules = oConvertUtils.entityListToModelList(temp,SysPermissionDataRuleModel.class);
}
// update-end--Author:scott Date:20191119 for:数据权限规则编码不规范,项目存在相同包名和类名 #722
}
return dataRules;
}
return Collections.emptyList();
}
@Nullable
private List<SysPermission> getSysPermissions(String component, String requestPath) {
List<SysPermission> currentSyspermission; List<SysPermission> currentSyspermission;
if(oConvertUtils.isNotEmpty(component)) { if(oConvertUtils.isNotEmpty(component)) {
//1.通过注解属性pageComponent 获取菜单 //1.通过注解属性pageComponent 获取菜单
@@ -161,20 +181,7 @@ public class SysBaseApiImpl implements ISysBaseAPI {
} }
} }
} }
if(currentSyspermission!=null && !currentSyspermission.isEmpty()){ return currentSyspermission;
List<SysPermissionDataRuleModel> dataRules = new ArrayList<>();
for (SysPermission sysPermission : currentSyspermission) {
// update-begin--Author:scott Date:20191119 for:数据权限规则编码不规范,项目存在相同包名和类名 #722
List<SysPermissionDataRule> temp = sysPermissionDataRuleService.queryPermissionDataRules(username, sysPermission.getId());
if(temp!=null && !temp.isEmpty()) {
//dataRules.addAll(temp);
dataRules = oConvertUtils.entityListToModelList(temp,SysPermissionDataRuleModel.class);
}
// update-end--Author:scott Date:20191119 for:数据权限规则编码不规范,项目存在相同包名和类名 #722
}
return dataRules;
}
return Collections.emptyList();
} }
/** /**
@@ -268,7 +275,6 @@ public class SysBaseApiImpl implements ISysBaseAPI {
@Override @Override
public DictModel getParentDepartId(String departId) { public DictModel getParentDepartId(String departId) {
SysDepart depart = departMapper.getParentDepartId(departId); SysDepart depart = departMapper.getParentDepartId(departId);
// DictModel model = new DictModel(depart.getId(),depart.getParentId());
return new DictModel(depart.getId(),depart.getParentId()); return new DictModel(depart.getId(),depart.getParentId());
} }
@@ -287,7 +293,7 @@ public class SysBaseApiImpl implements ISysBaseAPI {
@Override @Override
public List<DictModel> queryTableDictItemsByCode(String table, String text, String code) { public List<DictModel> queryTableDictItemsByCode(String table, String text, String code) {
//update-begin-author:taoyan date:20200820 for:【Online+系统】字典表加权限控制机制逻辑,想法不错 LOWCOD-799 //update-begin-author:taoyan date:20200820 for:【Online+系统】字典表加权限控制机制逻辑,想法不错 LOWCOD-799
if(table.indexOf("#{")>=0){ if(table.contains("#{")){
table = QueryGenerator.getSqlRuleValue(table); table = QueryGenerator.getSqlRuleValue(table);
} }
//update-end-author:taoyan date:20200820 for:【Online+系统】字典表加权限控制机制逻辑,想法不错 LOWCOD-799 //update-end-author:taoyan date:20200820 for:【Online+系统】字典表加权限控制机制逻辑,想法不错 LOWCOD-799
@@ -496,13 +502,13 @@ public class SysBaseApiImpl implements ISysBaseAPI {
try { try {
DatabaseMetaData md = connection.getMetaData(); DatabaseMetaData md = connection.getMetaData();
String dbType = md.getDatabaseProductName().toLowerCase(); String dbType = md.getDatabaseProductName().toLowerCase();
if(dbType.indexOf("mysql")>=0) { if(dbType.contains("mysql")) {
DB_TYPE = DataBaseConstant.DB_TYPE_MYSQL; DB_TYPE = DataBaseConstant.DB_TYPE_MYSQL;
}else if(dbType.indexOf("oracle")>=0) { }else if(dbType.contains("oracle")) {
DB_TYPE = DataBaseConstant.DB_TYPE_ORACLE; DB_TYPE = DataBaseConstant.DB_TYPE_ORACLE;
}else if(dbType.indexOf("sqlserver")>=0||dbType.indexOf("sql server")>=0) { }else if(dbType.contains("sqlserver") || dbType.contains("sql server")) {
DB_TYPE = DataBaseConstant.DB_TYPE_SQLSERVER; DB_TYPE = DataBaseConstant.DB_TYPE_SQLSERVER;
}else if(dbType.indexOf("postgresql")>=0) { }else if(dbType.contains("postgresql")) {
DB_TYPE = DataBaseConstant.DB_TYPE_POSTGRESQL; DB_TYPE = DataBaseConstant.DB_TYPE_POSTGRESQL;
}else { }else {
throw new JeroBootException("数据库类型:["+dbType+"]不识别!"); throw new JeroBootException("数据库类型:["+dbType+"]不识别!");
@@ -535,7 +541,6 @@ public class SysBaseApiImpl implements ISysBaseAPI {
@Override @Override
public List<SysCategoryModel> queryAllDSysCategory() { public List<SysCategoryModel> queryAllDSysCategory() {
List<SysCategory> ls = categoryMapper.selectList(null); List<SysCategory> ls = categoryMapper.selectList(null);
// List<SysCategoryModel> res = oConvertUtils.entityListToModelList(ls,SysCategoryModel.class);
return oConvertUtils.entityListToModelList(ls,SysCategoryModel.class); return oConvertUtils.entityListToModelList(ls,SysCategoryModel.class);
} }
@@ -689,7 +694,7 @@ public class SysBaseApiImpl implements ISysBaseAPI {
@Override @Override
public List<LoginUser> queryAllUserByIds(String[] userIds) { public List<LoginUser> queryAllUserByIds(String[] userIds) {
QueryWrapper<SysUser> queryWrapper = new QueryWrapper<SysUser>().eq(STATUS,1).eq(DEL_FLAG,0); QueryWrapper<SysUser> queryWrapper = new QueryWrapper<SysUser>().eq(STATUS,1).eq(DEL_FLAG,0);
queryWrapper.in("id",userIds); queryWrapper.in("id",Arrays.asList(userIds));
List<LoginUser> loginUsers = new ArrayList<>(); List<LoginUser> loginUsers = new ArrayList<>();
List<SysUser> sysUsers = userMapper.selectList(queryWrapper); List<SysUser> sysUsers = userMapper.selectList(queryWrapper);
for (SysUser user:sysUsers) { for (SysUser user:sysUsers) {
@@ -716,7 +721,7 @@ public class SysBaseApiImpl implements ISysBaseAPI {
@Override @Override
public List<LoginUser> queryUserByNames(String[] userNames) { public List<LoginUser> queryUserByNames(String[] userNames) {
QueryWrapper<SysUser> queryWrapper = new QueryWrapper<SysUser>().eq(STATUS,1).eq(DEL_FLAG,0); QueryWrapper<SysUser> queryWrapper = new QueryWrapper<SysUser>().eq(STATUS,1).eq(DEL_FLAG,0);
queryWrapper.in("username",userNames); queryWrapper.in("username",Arrays.asList(userNames));
List<LoginUser> loginUsers = new ArrayList<>(); List<LoginUser> loginUsers = new ArrayList<>();
List<SysUser> sysUsers = userMapper.selectList(queryWrapper); List<SysUser> sysUsers = userMapper.selectList(queryWrapper);
for (SysUser user:sysUsers) { for (SysUser user:sysUsers) {
@@ -872,14 +877,14 @@ public class SysBaseApiImpl implements ISysBaseAPI {
@Override @Override
public List<JSONObject> queryUsersByUsernames(String usernames) { public List<JSONObject> queryUsersByUsernames(String usernames) {
LambdaQueryWrapper<SysUser> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<SysUser> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.in(SysUser::getUsername,usernames.split(",")); queryWrapper.in(SysUser::getUsername,Arrays.asList(usernames.split(",")));
return JSON.parseArray(JSON.toJSONString(userMapper.selectList(queryWrapper))).toJavaList(JSONObject.class); return JSON.parseArray(JSON.toJSONString(userMapper.selectList(queryWrapper))).toJavaList(JSONObject.class);
} }
@Override @Override
public List<JSONObject> queryUsersByIds(String ids) { public List<JSONObject> queryUsersByIds(String ids) {
LambdaQueryWrapper<SysUser> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<SysUser> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.in(SysUser::getId,ids.split(",")); queryWrapper.in(SysUser::getId,Arrays.asList(ids.split(",")));
return JSON.parseArray(JSON.toJSONString(userMapper.selectList(queryWrapper))).toJavaList(JSONObject.class); return JSON.parseArray(JSON.toJSONString(userMapper.selectList(queryWrapper))).toJavaList(JSONObject.class);
} }
@@ -891,14 +896,14 @@ public class SysBaseApiImpl implements ISysBaseAPI {
@Override @Override
public List<JSONObject> queryDepartsByOrgcodes(String orgCodes) { public List<JSONObject> queryDepartsByOrgcodes(String orgCodes) {
LambdaQueryWrapper<SysDepart> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<SysDepart> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.in(SysDepart::getOrgCode,orgCodes.split(",")); queryWrapper.in(SysDepart::getOrgCode,Arrays.asList(orgCodes.split(",")));
return JSON.parseArray(JSON.toJSONString(sysDepartService.list(queryWrapper))).toJavaList(JSONObject.class); return JSON.parseArray(JSON.toJSONString(sysDepartService.list(queryWrapper))).toJavaList(JSONObject.class);
} }
@Override @Override
public List<JSONObject> queryDepartsByIds(String ids) { public List<JSONObject> queryDepartsByIds(String ids) {
LambdaQueryWrapper<SysDepart> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<SysDepart> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.in(SysDepart::getId,ids.split(",")); queryWrapper.in(SysDepart::getId,Arrays.asList(ids.split(",")));
return JSON.parseArray(JSON.toJSONString(sysDepartService.list(queryWrapper))).toJavaList(JSONObject.class); return JSON.parseArray(JSON.toJSONString(sysDepartService.list(queryWrapper))).toJavaList(JSONObject.class);
} }