From 24b8c2ceb717b2aa67e182e21a4088657ad4b079 Mon Sep 17 00:00:00 2001 From: ludc Date: 星期四, 21 九月 2023 16:24:45 +0800 Subject: [PATCH] 代码提交 --- Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java | 45 ++++++++++++++++++++++++++++++--------------- 1 files changed, 30 insertions(+), 15 deletions(-) diff --git a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java index 1e5049a..4e65f82 100644 --- a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java +++ b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java @@ -19,6 +19,7 @@ import com.vci.ubcs.starter.web.wrapper.VciQueryWrapperForDO; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springblade.core.tool.utils.Func; import org.springframework.util.CollectionUtils; import org.springframework.util.ResourceUtils; @@ -37,8 +38,6 @@ import java.math.BigInteger; import java.net.InetAddress; import java.net.NetworkInterface; -import java.sql.Timestamp; -import java.text.SimpleDateFormat; import java.util.*; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -1303,6 +1302,9 @@ Field[] declaredFields = type.getDeclaredFields(); Map<String, String> fieldMap = new HashMap(); String existField = ""; + if(existFild == null){ + existFild = new HashSet<>(); + } for (Field declaredField : declaredFields) { declaredField.setAccessible(true); @@ -1334,22 +1336,23 @@ if ("data".equals(propertyName)){ mapData = (Map) result; }else if(existFild.contains((fieldMap.containsKey(propertyName)?fieldMap.get(propertyName):propertyName).toLowerCase())){ - returnMap.put(fieldMap.containsKey(propertyName)?fieldMap.get(propertyName):propertyName, result); + returnMap.put(fieldMap.containsKey(propertyName)?fieldMap.get(propertyName).toLowerCase():propertyName.toLowerCase(), result); } } else if(existFild.contains((fieldMap.containsKey(propertyName)?fieldMap.get(propertyName):propertyName).toLowerCase())){ - returnMap.put(fieldMap.containsKey(propertyName)?fieldMap.get(propertyName):propertyName, ""); + returnMap.put(fieldMap.containsKey(propertyName)?fieldMap.get(propertyName).toLowerCase():propertyName.toLowerCase(), ""); } } } - //浣滅敤涓昏鐢ㄤ簬宸睲AP涓殑鏁版嵁涓哄噯锛宐ean閲岄潰閬囧埌瀛楁鐩稿悓涔熶細杩涜瑕嗙洊銆� - if(existFild == null){ - returnMap.putAll((Map) mapData); - }else{ - Map resulMapChild = (Map) mapData; - for (Object o : resulMapChild.keySet()) { - if(existFild.contains(String.valueOf(o).toLowerCase())){ - returnMap.put(String.valueOf(o).toLowerCase(),resulMapChild.get(o)); + //浣滅敤涓昏鐢ㄤ簬宸睲AP涓殑鏁版嵁涓哄噯锛宐ean閲岄潰閬囧埌瀛楁鐩稿悓涓攎ap閲岄潰鏁版嵁涓虹┖锛屽垯浣跨敤bean閲岄潰鐨勫��, +// Map resulMapChild = (Map) mapData; + for (Object o : mapData.keySet()) { + if(existFild == null || existFild.contains(String.valueOf(o).toLowerCase())){ + if((Func.isNotBlank(String.valueOf(returnMap.get(String.valueOf(o).toLowerCase()))) + && returnMap.get(String.valueOf(o).toLowerCase()) !=null) + && Func.isBlank(String.valueOf(mapData.get(o)))){ + continue; } + returnMap.put(String.valueOf(o).toLowerCase(),mapData.get(o)); } } return returnMap; @@ -1373,9 +1376,14 @@ // String sqlField = camelToUnderscore(key); - if (map.containsKey(key.toUpperCase())) { + if (map.containsKey(key.toUpperCase(Locale.ROOT))||map.containsKey(key.toLowerCase(Locale.ROOT))) { try { - Object value = map.get(key.toUpperCase()); + Object value=""; + if (map.containsKey(key.toUpperCase(Locale.ROOT))) { + value = map.get(key.toUpperCase()); + }else if(map.containsKey(key.toLowerCase(Locale.ROOT))){ + value = map.get(key.toLowerCase()); + } // 寰楀埌property瀵瑰簲鐨剆etter鏂规硶 Method setter = property.getWriteMethod(); Class<?> type = property.getPropertyType(); @@ -1397,6 +1405,7 @@ return beanList; } + public static String camelToUnderscore(String name) { if (name == null && name.length() <= 0) { return name; @@ -1415,6 +1424,12 @@ return sb.toString(); } - + public static String intToRomans(int num) { + String M[] = {"", "M", "MM", "MMM"}; + String C[] = {"", "C", "CC", "CCC", "CD", "D", "DC", "DCC", "DCCC", "CM"}; + String X[] = {"", "X", "XX", "XXX", "XL", "L", "LX", "LXX", "LXXX", "XC"}; + String I[] = {"", "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX"}; + return M[num/1000]+C[(num%1000)/100]+X[(num%100)/10]+I[num%10]; + } } -- Gitblit v1.9.3