From db616e3d08a238b9cf86e532e5c70f543964dbd4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= Date: Tue, 28 Mar 2023 11:27:41 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90fix=20sonar=E3=80=91CgReportQueryParam?= =?UTF-8?q?Util=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cgreport/util/CgReportQueryParamUtil.java | 268 ++++++++++-------- 1 file changed, 157 insertions(+), 111 deletions(-) diff --git a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgreport/util/CgReportQueryParamUtil.java b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgreport/util/CgReportQueryParamUtil.java index 4ba9c280..12447092 100644 --- a/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgreport/util/CgReportQueryParamUtil.java +++ b/jero-boot/jero-boot-base/jero-boot-base-generater/src/main/java/com/jero/generater/modules/online/cgreport/util/CgReportQueryParamUtil.java @@ -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.util.DbTableUtil; import lombok.extern.slf4j.Slf4j; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import javax.servlet.http.HttpServletRequest; import java.nio.charset.StandardCharsets; @@ -41,25 +43,11 @@ public class CgReportQueryParamUtil { if ("single".equals(var5)) { var7 = var0.getParameter(var4.toLowerCase()); - if (oConvertUtils.isEmpty(var7)) { + var7 = getString(var0, var2, var4, var7); + if (var7 == null) { 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)); } else if ("group".equals(var5)) { var7 = var0.getParameter(var4.toLowerCase() + BEGIN); @@ -79,19 +67,38 @@ public class CgReportQueryParamUtil { } + @Nullable + private static String getString(HttpServletRequest var0, Map 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) { Object var3 = null; if (oConvertUtils.isNotEmpty(var1)) { if ("String".equalsIgnoreCase(var0)) { var3 = var1; } else if ("Date".equalsIgnoreCase(var0)) { - if (var1.length() != 19 && var1.length() == 10) { - if (var2) { - var1 = var1 + " 00:00:00"; - } else { - var1 = var1 + " 23:59:59"; - } - } + var1 = getString(var1, var2); SimpleDateFormat var4 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); var3 = DateUtils.str2Date(var1, var4); @@ -107,6 +114,18 @@ public class CgReportQueryParamUtil { 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> var0, Long var1) { JSONObject var2 = new JSONObject(); JSONArray var3 = new JSONArray(); @@ -186,99 +205,126 @@ public class CgReportQueryParamUtil { } HashSet var6 = new HashSet<>(); - Iterator var7 = var0.iterator(); + Iterator var7 = var0.iterator(); while(true) { while(true) { - String var9; - String var10; - Object var18; - do { - while(true) { - OnlCgreportItem var8; - do { - if (!var7.hasNext()) { - var7 = var1.keySet().iterator(); - - while(var7.hasNext()) { - 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 = (OnlCgreportItem)var7.next(); - var9 = var8.getFieldName(); - var10 = var8.getFieldType(); - } while(1 != var8.getIsSearch()); - - Object var11; - if ("group".equals(var8.getSearchMode())) { - var11 = var1.get(var9 + BEGIN); - 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()); - } - } - - var18 = var1.get(var9 + "_end"); - break; - } - - var11 = var1.get(var9); - if (var11 != null) { - boolean var12 = !"Long".equals(var10) && !INTEGER.equals(var10); - if (ORACLE.equals(var5)) { - if (Objects.equals(DATETIME,var10.toLowerCase())) { - var11 = CgformUtil.a(var11.toString()); - var12 = false; - } else if (Objects.equals(DATE,var10.toLowerCase())) { - var11 = CgformUtil.b(var11.toString()); - var12 = false; - } - } - - String var13 = QueryGenerator.getSingleQueryConditionSql(var9, var2, var11, var12, var5); - var4.append(AND).append(var13); - var6.add(var9); - } - } - } while(var18 == null); - - var4.append(AND).append(var2).append(var9).append(" <= "); - if (!"Long".equals(var10) && !INTEGER.equals(var10)) { - if (ORACLE.equals(var5)) { - if (Objects.equals(var10.toLowerCase(),DATETIME)) { - var4.append(CgformUtil.a(var18.toString())); - } else if (Objects.equals(DATE,var10.toLowerCase())) { - var4.append(CgformUtil.b(var18.toString())); - } - } else { - var4.append("'").append(var18.toString()).append("'"); - } - } else { - var4.append(var18.toString()); + if (getVar8(var1, var2, var4, var5, var6, var7)) { + return var4.toString(); } } } } + + private static boolean getVar8(Map var1, String var2, StringBuilder var4, String var5, HashSet var6, Iterator var7) { + String var9; + String var10; + Object var18; + do { + while(true) { + OnlCgreportItem var8; + do { + if (!var7.hasNext()) { + Iterator var71 = var1.keySet().iterator(); + getVar71(var1, var2, var4, var6, var71); + return true; + } + + var8 = var7.next(); + var9 = var8.getFieldName(); + var10 = var8.getFieldType(); + } while(1 != var8.getIsSearch()); + + Object var11; + if ("group".equals(var8.getSearchMode())) { + var11 = var1.get(var9 + BEGIN); + appendVar4(var2, var4, var5, var9, var10, var11); + + var18 = var1.get(var9 + "_end"); + break; + } + + 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 var1, String var2, StringBuilder var4, HashSet var6, Iterator 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 var6, String var9, String var10, Object var11) { + if (var11 != null) { + boolean var12 = !"Long".equals(var10) && !INTEGER.equals(var10); + if (ORACLE.equals(var5)) { + if (Objects.equals(DATETIME,var10.toLowerCase())) { + var11 = CgformUtil.a(var11.toString()); + var12 = false; + } else if (Objects.equals(DATE,var10.toLowerCase())) { + var11 = CgformUtil.b(var11.toString()); + var12 = false; + } + } + + String var13 = QueryGenerator.getSingleQueryConditionSql(var9, var2, var11, var12, var5); + var4.append(AND).append(var13); + var6.add(var9); + } + } + + private static void appendVar4(StringBuilder var4, String var5, String var10, Object var18) { + if (!"Long".equals(var10) && !INTEGER.equals(var10)) { + if (ORACLE.equals(var5)) { + if (Objects.equals(var10.toLowerCase(),DATETIME)) { + var4.append(CgformUtil.a(var18.toString())); + } else if (Objects.equals(DATE,var10.toLowerCase())) { + var4.append(CgformUtil.b(var18.toString())); + } + } else { + var4.append("'").append(var18.toString()).append("'"); + } + } else { + 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 var6, String var9, String var10) { + if (!var6.contains(var10)) { + String var17 = QueryGenerator.getSingleQueryConditionSql(var10, var2, var9, false); + var4.append(AND).append(var17); + } + } }