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, "");
            }
         }
      }
      //作用主要用于已MAP中的数据为准,bean里面遇到字段相同也会进行覆盖。
      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));
            }
         }
      }