田源
2023-05-09 549ecbf13b14a4deb74e42828abcd46ccb68a7c0
Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMapperProcessor.java
@@ -7,12 +7,14 @@
import com.vci.ubcs.starter.web.enumpck.VciFieldTypeEnum;
import com.vci.ubcs.starter.web.util.VciBaseUtil;
import org.apache.commons.collections4.BidiMap;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.bidimap.DualHashBidiMap;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.core.tool.utils.StringPool;
import org.springblade.core.tool.utils.StringUtil;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
/**
@@ -145,4 +147,27 @@
   }
   public abstract VciFieldTypeEnum getFieldTypeByColumnStr(String columnStr,Integer length);
   protected final VciFieldTypeEnum getFieldTypeBeColumnStrInMap(String columnStr,Integer length,BidiMap<VciFieldTypeEnum, DdlFieldMappingAttrBO> map){
      List<VciFieldTypeEnum> fieldTypes = listFieldInMapByColumnStr(columnStr, map);
      VciFieldTypeEnum finalField = null;
      int i = Integer.MAX_VALUE;
      if (fieldTypes.size() == 1){
         return fieldTypes.get(0);
      }
      for (VciFieldTypeEnum fieldType : fieldTypes) {
         if (fieldType.equals(VciFieldTypeEnum.VTString)) {
            finalField = VciFieldTypeEnum.VTString;
         }
         if (fieldType.equals(VciFieldTypeEnum.VTDateTime)){
            finalField = VciFieldTypeEnum.VTDateTime;
         }
         if (fieldType.equals(VciFieldTypeEnum.VTInteger) && length <= 26){
            finalField = VciFieldTypeEnum.VTInteger;
         }
      }
      return finalField;
   }
}