From 0853823c44129cd3f221d93718b6980a87c3eeda Mon Sep 17 00:00:00 2001 From: yuxc <653031404@qq.com> Date: 星期五, 11 八月 2023 17:08:24 +0800 Subject: [PATCH] 1、处理流程处理查询报错问题。 2、处理流程处理批量报错报错问题。 3、处理更新时bean里面的data数据与bean字段数据冲突时,以data数据为准。 --- Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java | 32 ++++++++++++++++++++++++-------- 1 files changed, 24 insertions(+), 8 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 72c68e0..1e5049a 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 @@ -869,7 +869,7 @@ } public static String getTableName(String btmname) { - return (VciQueryWrapperForDO.USER_TABLE_COMPATIBILITY ? "pl_code_" : "vcibt_") + btmname.trim().toLowerCase(); + return (VciQueryWrapperForDO.USER_TABLE_COMPATIBILITY ? "vcibt_" : "pl_code_") + btmname.trim().toLowerCase(); } public static Field getTsField(Class c) { @@ -1294,13 +1294,14 @@ * @return Map瀵硅薄 * @version 2016骞�3鏈�20鏃� 11:03:01 */ - public static Map convertBean2Map(Object bean) throws Exception { + public static Map convertBean2Map(Object bean,Set<String> existFild) throws Exception { Class type = bean.getClass(); Map returnMap = new HashMap(); BeanInfo beanInfo = Introspector.getBeanInfo(type); PropertyDescriptor[] propertyDescriptors = beanInfo .getPropertyDescriptors(); Field[] declaredFields = type.getDeclaredFields(); + Map<String, String> fieldMap = new HashMap(); String existField = ""; for (Field declaredField : declaredFields) { declaredField.setAccessible(true); @@ -1313,9 +1314,13 @@ if(fieldValue == false){ existField += declaredField.getName().toLowerCase()+","; } + String value = tableField.value(); + if(net.logstash.logback.encoder.org.apache.commons.lang3.StringUtils.isNotBlank(value)){ + fieldMap.put(declaredField.getName(), value); + } } } - + Map mapData = new HashMap<>(); for (int i = 0, n = propertyDescriptors.length; i <n ; i++) { PropertyDescriptor descriptor = propertyDescriptors[i]; String propertyName = descriptor.getName(); @@ -1327,12 +1332,23 @@ if (result != null) { if ("data".equals(propertyName)){ - returnMap.putAll((Map) result); - }else { - returnMap.put(propertyName, result); + 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); } - } else { - returnMap.put(propertyName, ""); + } else if(existFild.contains((fieldMap.containsKey(propertyName)?fieldMap.get(propertyName):propertyName).toLowerCase())){ + returnMap.put(fieldMap.containsKey(propertyName)?fieldMap.get(propertyName):propertyName, ""); + } + } + } + //浣滅敤涓昏鐢ㄤ簬宸睲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)); } } } -- Gitblit v1.9.3