【fix sonar】QueryGenerator文件

This commit is contained in:
梁琦涛
2023-04-03 15:07:41 +08:00
parent 10bc7db6bb
commit 854a9506d4
@@ -110,12 +110,6 @@ public class QueryGenerator {
*/ */
public static void installMplus(QueryWrapper<?> queryWrapper,Object searchObj,Map<String, String[]> parameterMap) { public static void installMplus(QueryWrapper<?> queryWrapper,Object searchObj,Map<String, String[]> parameterMap) {
/*
* 注意:权限查询由前端配置数据规则 当一个人有多个所属部门时候 可以在规则配置包含条件 orgCode 包含 #{sys_org_code}
但是不支持在自定义SQL中写orgCode in #{sys_org_code}
当一个人只有一个部门 就直接配置等于条件: orgCode 等于 #{sys_org_code} 或者配置自定义SQL: orgCode = '#{sys_org_code}'
*/
//区间条件组装 模糊查询 高级查询组装 简单排序 权限查询 //区间条件组装 模糊查询 高级查询组装 简单排序 权限查询
PropertyDescriptor[] origDescriptors = PropertyUtils.getPropertyDescriptors(searchObj); PropertyDescriptor[] origDescriptors = PropertyUtils.getPropertyDescriptors(searchObj);
Map<String,SysPermissionDataRuleModel> ruleMap = getRuleMap(); Map<String,SysPermissionDataRuleModel> ruleMap = getRuleMap();
@@ -193,12 +187,6 @@ public class QueryGenerator {
//根据参数值带什么关键字符串判断走什么类型的查询 //根据参数值带什么关键字符串判断走什么类型的查询
QueryRuleEnum rule = convert2Rule(value); QueryRuleEnum rule = convert2Rule(value);
value = replaceValue(rule,value); value = replaceValue(rule,value);
// add -begin 添加判断为字符串时设为全模糊查询
//if( (rule==null || QueryRuleEnum.EQ.equals(rule)) && "class java.lang.String".equals(type)) {
// 可以设置左右模糊或全模糊,因人而异
//rule = QueryRuleEnum.LIKE;
//}
// add -end 添加判断为字符串时设为全模糊查询
addEasyQuery(queryWrapper, column, rule, value); addEasyQuery(queryWrapper, column, rule, value);
} }
} }
@@ -625,13 +613,13 @@ public class QueryGenerator {
return ruleMap; return ruleMap;
} }
private static void addRuleToQueryWrapper(SysPermissionDataRuleModel dataRule, String name, Class propertyType, QueryWrapper<?> queryWrapper) { private static void addRuleToQueryWrapper(SysPermissionDataRuleModel dataRule, String name, Class<?> propertyType, QueryWrapper<?> queryWrapper) {
QueryRuleEnum rule = QueryRuleEnum.getByValue(dataRule.getRuleConditions()); QueryRuleEnum rule = QueryRuleEnum.getByValue(dataRule.getRuleConditions());
if(QueryRuleEnum.IN.equals(rule) && ! propertyType.equals(String.class)) { if(QueryRuleEnum.IN.equals(rule) && ! propertyType.equals(String.class)) {
String[] values = dataRule.getRuleValue().split(","); String[] values = dataRule.getRuleValue().split(",");
Object[] objs = new Object[values.length]; Object[] objs = new Object[values.length];
for (int i = 0; i < values.length; i++) { for (int i = 0; i < values.length; i++) {
objs[i] = NumberUtils.parseNumber(values[i], propertyType); objs[i] = NumberUtils.parseNumber(values[i], (Class)propertyType);
} }
addEasyQuery(queryWrapper, name, rule, objs); addEasyQuery(queryWrapper, name, rule, objs);
}else { }else {
@@ -645,7 +633,7 @@ public class QueryGenerator {
addEasyQuery(queryWrapper, name, rule, DateUtils.str2Date(dateStr,DateUtils.datetimeFormat.get())); addEasyQuery(queryWrapper, name, rule, DateUtils.str2Date(dateStr,DateUtils.datetimeFormat.get()));
} }
}else { }else {
addEasyQuery(queryWrapper, name, rule, NumberUtils.parseNumber(dataRule.getRuleValue(), propertyType)); addEasyQuery(queryWrapper, name, rule, NumberUtils.parseNumber(dataRule.getRuleValue(), (Class)propertyType));
} }
} }
} }
@@ -1049,6 +1037,10 @@ public class QueryGenerator {
/** 当前系统数据库类型 */ /** 当前系统数据库类型 */
/**
* @deprecated 未使用
*/
@Deprecated
private static String DB_TYPE; private static String DB_TYPE;
/** /**
* 获取系统数据库类型 * 获取系统数据库类型