【fix sonar】CgReportQueryParamUtil文件

This commit is contained in:
梁琦涛
2023-03-28 11:27:41 +08:00
parent f75953f588
commit db616e3d08
@@ -11,6 +11,8 @@ import com.jero.generater.modules.online.cgreport.entity.OnlCgreportItem;
import com.jero.generater.modules.online.config.exception.DBException; import com.jero.generater.modules.online.config.exception.DBException;
import com.jero.generater.modules.online.config.util.DbTableUtil; import com.jero.generater.modules.online.config.util.DbTableUtil;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
@@ -41,25 +43,11 @@ public class CgReportQueryParamUtil {
if ("single".equals(var5)) { if ("single".equals(var5)) {
var7 = var0.getParameter(var4.toLowerCase()); var7 = var0.getParameter(var4.toLowerCase());
if (oConvertUtils.isEmpty(var7)) { var7 = getString(var0, var2, var4, var7);
if (var7 == null) {
return; return;
} }
var8 = var0.getQueryString();
if (var8.contains(var4 + "=")) {
var9 = new String(var7.getBytes(StandardCharsets.ISO_8859_1), StandardCharsets.UTF_8);
var7 = var9;
}
if (oConvertUtils.isNotEmpty(var7)) {
if (var7.contains("*")) {
var7 = var7.replace("\\*", "%");
var2.put(var4, " LIKE :" + var4);
} else {
var2.put(var4, " = :" + var4);
}
}
var3.put(var4, a(var6, var7, true)); var3.put(var4, a(var6, var7, true));
} else if ("group".equals(var5)) { } else if ("group".equals(var5)) {
var7 = var0.getParameter(var4.toLowerCase() + BEGIN); var7 = var0.getParameter(var4.toLowerCase() + BEGIN);
@@ -79,19 +67,38 @@ public class CgReportQueryParamUtil {
} }
@Nullable
private static String getString(HttpServletRequest var0, Map<String, Object> var2, String var4, String var7) {
String var8;
String var9;
if (oConvertUtils.isEmpty(var7)) {
return null;
}
var8 = var0.getQueryString();
if (var8.contains(var4 + "=")) {
var9 = new String(var7.getBytes(StandardCharsets.ISO_8859_1), StandardCharsets.UTF_8);
var7 = var9;
}
if (oConvertUtils.isNotEmpty(var7)) {
if (var7.contains("*")) {
var7 = var7.replace("\\*", "%");
var2.put(var4, " LIKE :" + var4);
} else {
var2.put(var4, " = :" + var4);
}
}
return var7;
}
private static Object a(String var0, String var1, boolean var2) { private static Object a(String var0, String var1, boolean var2) {
Object var3 = null; Object var3 = null;
if (oConvertUtils.isNotEmpty(var1)) { if (oConvertUtils.isNotEmpty(var1)) {
if ("String".equalsIgnoreCase(var0)) { if ("String".equalsIgnoreCase(var0)) {
var3 = var1; var3 = var1;
} else if ("Date".equalsIgnoreCase(var0)) { } else if ("Date".equalsIgnoreCase(var0)) {
if (var1.length() != 19 && var1.length() == 10) { var1 = getString(var1, var2);
if (var2) {
var1 = var1 + " 00:00:00";
} else {
var1 = var1 + " 23:59:59";
}
}
SimpleDateFormat var4 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SimpleDateFormat var4 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
var3 = DateUtils.str2Date(var1, var4); var3 = DateUtils.str2Date(var1, var4);
@@ -107,6 +114,18 @@ public class CgReportQueryParamUtil {
return var3; return var3;
} }
@NotNull
private static String getString(String var1, boolean var2) {
if (var1.length() != 19 && var1.length() == 10) {
if (var2) {
var1 = var1 + " 00:00:00";
} else {
var1 = var1 + " 23:59:59";
}
}
return var1;
}
public static String a(List<Map<String, Object>> var0, Long var1) { public static String a(List<Map<String, Object>> var0, Long var1) {
JSONObject var2 = new JSONObject(); JSONObject var2 = new JSONObject();
JSONArray var3 = new JSONArray(); JSONArray var3 = new JSONArray();
@@ -186,10 +205,18 @@ public class CgReportQueryParamUtil {
} }
HashSet<String> var6 = new HashSet<>(); HashSet<String> var6 = new HashSet<>();
Iterator var7 = var0.iterator(); Iterator<OnlCgreportItem> var7 = var0.iterator();
while(true) { while(true) {
while(true) { while(true) {
if (getVar8(var1, var2, var4, var5, var6, var7)) {
return var4.toString();
}
}
}
}
private static boolean getVar8(Map<String, Object> var1, String var2, StringBuilder var4, String var5, HashSet<String> var6, Iterator<OnlCgreportItem> var7) {
String var9; String var9;
String var10; String var10;
Object var18; Object var18;
@@ -198,24 +225,12 @@ public class CgReportQueryParamUtil {
OnlCgreportItem var8; OnlCgreportItem var8;
do { do {
if (!var7.hasNext()) { if (!var7.hasNext()) {
var7 = var1.keySet().iterator(); Iterator<String> var71 = var1.keySet().iterator();
getVar71(var1, var2, var4, var6, var71);
while(var7.hasNext()) { return true;
String var16 = (String)var7.next();
if (var16.startsWith("popup_param_pre__")) {
var9 = var1.get(var16).toString();
var10 = var16.substring("popup_param_pre__".length());
if (!var6.contains(var10)) {
String var17 = QueryGenerator.getSingleQueryConditionSql(var10, var2, var9, false);
var4.append(AND).append(var17);
}
}
} }
return var4.toString(); var8 = var7.next();
}
var8 = (OnlCgreportItem)var7.next();
var9 = var8.getFieldName(); var9 = var8.getFieldName();
var10 = var8.getFieldType(); var10 = var8.getFieldType();
} while(1 != var8.getIsSearch()); } while(1 != var8.getIsSearch());
@@ -223,28 +238,36 @@ public class CgReportQueryParamUtil {
Object var11; Object var11;
if ("group".equals(var8.getSearchMode())) { if ("group".equals(var8.getSearchMode())) {
var11 = var1.get(var9 + BEGIN); var11 = var1.get(var9 + BEGIN);
if (var11 != null) { appendVar4(var2, var4, var5, var9, var10, var11);
var4.append(AND).append(var2).append(var9).append(" >= ");
if (!"Long".equals(var10) && !INTEGER.equals(var10)) {
if (ORACLE.equals(var5)) {
if (Objects.equals(DATETIME,var10.toLowerCase())) {
var4.append(CgformUtil.a(var11.toString()));
} else if (Objects.equals(DATE,var10.toLowerCase())) {
var4.append(CgformUtil.b(var11.toString()));
}
} else {
var4.append("'").append(var11.toString()).append("'");
}
} else {
var4.append(var11.toString());
}
}
var18 = var1.get(var9 + "_end"); var18 = var1.get(var9 + "_end");
break; break;
} }
var11 = var1.get(var9); var11 = var1.get(var9);
getVar11(var2, var4, var5, var6, var9, var10, var11);
}
} while(var18 == null);
var4.append(AND).append(var2).append(var9).append(" <= ");
appendVar4(var4, var5, var10, var18);
return false;
}
private static void getVar71(Map<String, Object> var1, String var2, StringBuilder var4, HashSet<String> var6, Iterator<String> var71) {
String var9;
String var10;
while(var71.hasNext()) {
String var16 = var71.next();
if (var16.startsWith("popup_param_pre__")) {
var9 = var1.get(var16).toString();
var10 = var16.substring("popup_param_pre__".length());
appendVar4(var2, var4, var6, var9, var10);
}
}
}
private static void getVar11(String var2, StringBuilder var4, String var5, HashSet<String> var6, String var9, String var10, Object var11) {
if (var11 != null) { if (var11 != null) {
boolean var12 = !"Long".equals(var10) && !INTEGER.equals(var10); boolean var12 = !"Long".equals(var10) && !INTEGER.equals(var10);
if (ORACLE.equals(var5)) { if (ORACLE.equals(var5)) {
@@ -262,9 +285,8 @@ public class CgReportQueryParamUtil {
var6.add(var9); var6.add(var9);
} }
} }
} while(var18 == null);
var4.append(AND).append(var2).append(var9).append(" <= "); private static void appendVar4(StringBuilder var4, String var5, String var10, Object var18) {
if (!"Long".equals(var10) && !INTEGER.equals(var10)) { if (!"Long".equals(var10) && !INTEGER.equals(var10)) {
if (ORACLE.equals(var5)) { if (ORACLE.equals(var5)) {
if (Objects.equals(var10.toLowerCase(),DATETIME)) { if (Objects.equals(var10.toLowerCase(),DATETIME)) {
@@ -279,6 +301,30 @@ public class CgReportQueryParamUtil {
var4.append(var18.toString()); var4.append(var18.toString());
} }
} }
private static void appendVar4(String var2, StringBuilder var4, String var5, String var9, String var10, Object var11) {
if (var11 != null) {
var4.append(AND).append(var2).append(var9).append(" >= ");
if (!"Long".equals(var10) && !INTEGER.equals(var10)) {
if (ORACLE.equals(var5)) {
if (Objects.equals(DATETIME,var10.toLowerCase())) {
var4.append(CgformUtil.a(var11.toString()));
} else if (Objects.equals(DATE,var10.toLowerCase())) {
var4.append(CgformUtil.b(var11.toString()));
}
} else {
var4.append("'").append(var11.toString()).append("'");
}
} else {
var4.append(var11.toString());
}
}
}
private static void appendVar4(String var2, StringBuilder var4, HashSet<String> var6, String var9, String var10) {
if (!var6.contains(var10)) {
String var17 = QueryGenerator.getSingleQueryConditionSql(var10, var2, var9, false);
var4.append(AND).append(var17);
} }
} }
} }