From 9f46e04d61a13f0fc39e307d6f1a1f7d9a9f75ca Mon Sep 17 00:00:00 2001
From: lihang <lihang@vci-tech.com>
Date: 星期六, 06 五月 2023 11:14:52 +0800
Subject: [PATCH] ddl取消word

---
 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMapperProcessor.java |   25 +++++++++++++++++++++++++
 1 files changed, 25 insertions(+), 0 deletions(-)

diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMapperProcessor.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMapperProcessor.java
index 619a79c..b211b73 100644
--- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMapperProcessor.java
+++ b/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 (CollectionUtils.isEmpty(fieldTypes)){
+			return null;
+		}
+		if (fieldTypes.size() == 1){
+			return fieldTypes.get(0);
+		}
+		for (VciFieldTypeEnum fieldType : fieldTypes) {
+			DdlFieldMappingAttrBO bo = map.get(fieldType);
+			int i1 = Math.abs(bo.getDataLength() - length);
+			if (i1 < i){
+				finalField = fieldType;
+				i = i1;
+			}
+		}
+		return finalField;
+	}
+
 }

--
Gitblit v1.9.3