From d97c5223b68df0153cef2180b9256d6916c5414d Mon Sep 17 00:00:00 2001 From: ludc Date: 星期四, 07 三月 2024 11:35:04 +0800 Subject: [PATCH] 集成相关更改 --- Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java | 98 +++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 94 insertions(+), 4 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 4c18987..bd9f7d9 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 @@ -63,6 +63,36 @@ && NacosConfigCache.getAdminUserInfo().getUserName().equals(AuthUtil.getUserName()); } + /** + * 浠巑ap涓幏鍙栧�硷紝骞朵笖鍙互蹇界暐澶у皬鍐� + * @param map + * @param key + * @return + */ + public static Object getMapValueIgnoreCase(Map<String, Object> map,String key){ + for (Map.Entry<String, Object> entry : map.entrySet()) { + if (entry.getKey().equalsIgnoreCase(key)) { + return entry.getValue(); + } + } + return null; + } + + /** + * 浠巑ap涓幏鍙栧�硷紝骞朵笖鍙互蹇界暐澶у皬鍐� + * @param map + * @param key + * @return + */ + public static String getMapStrValueIgnoreCase(Map<String, String> map,String key){ + for (Map.Entry<String, String> entry : map.entrySet()) { + if (entry.getKey().equalsIgnoreCase(key)) { + return entry.getValue(); + } + } + return null; + } + public static String getPk() { return String.valueOf(getPKLong(1,1)); } @@ -1322,7 +1352,6 @@ } for (Field declaredField : declaredFields) { declaredField.setAccessible(true); - // 鑾峰彇瀛楁鐨勫�� boolean isTableField = declaredField.isAnnotationPresent(TableField.class); if (isTableField) { @@ -1333,7 +1362,7 @@ } String value = tableField.value(); if(net.logstash.logback.encoder.org.apache.commons.lang3.StringUtils.isNotBlank(value)){ - fieldMap.put(declaredField.getName(), value); + fieldMap.put(declaredField.getName(), value.trim()); } } } @@ -1346,6 +1375,9 @@ ((!"".equals(existField) && !existField.contains(propertyName.toLowerCase()+","))||"data".equals(propertyName))) { Method readMethod = descriptor.getReadMethod(); Object result = readMethod.invoke(bean, new Object[0]); + if(result instanceof String){ + result=((String) result).trim(); + } if (result != null) { if ("data".equals(propertyName)){ @@ -1367,7 +1399,11 @@ && Func.isBlank(String.valueOf(mapData.get(o)))){ continue; } - returnMap.put(String.valueOf(o).toLowerCase(),mapData.get(o)); + Object result=mapData.get(o); + if(result instanceof String){ + result=((String) result).trim(); + } + returnMap.put(String.valueOf(o).toLowerCase(),result); } } return returnMap; @@ -1439,7 +1475,61 @@ return sb.toString(); } - public static String intToRomans(int num) { + public static String convertArabicToRoman(int num) { + int[] values={1000,900,500,400,100,90,50,40,10,9,5,4,1}; + String[] romans={"M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"}; + StringBuilder sb=new StringBuilder(); + for(int i=0;i<values.length;i++){ + while(num>=values[i]){ + num=num-values[i]; + sb.append(romans[i]); + } + } + return sb.toString(); + } + /** + * 鎶婄綏椹暟瀛楄浆鎹负闃挎媺浼暟瀛� + * @param m + * @return + */ + public static int convertRomanToArabic(String m) { + int graph[] = new int[400]; + graph['I'] = 1; + graph['V'] = 5; + graph['X'] = 10; + graph['L'] = 50; + graph['C'] = 100; + graph['D'] = 500; + graph['M'] = 1000; + char[] num = m.toCharArray(); + int sum = graph[num[0]]; + for (int i = 0; i < num.length - 1; i++) { + if (graph[num[i]] >= graph[num[i + 1]]) { + sum += graph[num[i + 1]]; + } else { + sum = sum + graph[num[i + 1]] - 2 * graph[num[i]]; + } + } + return sum; + } + /*** + * 鏍¢獙鏄惁鏄綏椹暟瀛� + * @param s + * @return + */ + public static boolean isRoman(String s) { + // 妫�鏌ヨ緭鍏ョ殑瀛楃涓叉槸鍚︿负绌� + if (s == null || s.length() == 0) { + return false; + } + // 灏嗚緭鍏ョ殑瀛楃涓茶浆鎹负澶у啓瀛楁瘝 + s = s.toUpperCase(); + // 杩斿洖缁撴灉 + Pattern pattern = Pattern.compile("^M{0,3}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$"); + return pattern.matcher(s ).matches(); + } + + public static String intToRomanTwo(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"}; -- Gitblit v1.9.3