From 12d164daa92b00a315d08359f9320037e60a738e Mon Sep 17 00:00:00 2001 From: wangting <675591594@qq.com> Date: 星期三, 05 七月 2023 16:55:51 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllDmMapperProcessor.java | 58 ++++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 42 insertions(+), 16 deletions(-) diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllDmMapperProcessor.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllDmMapperProcessor.java index e93f205..bd55aab 100644 --- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllDmMapperProcessor.java +++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllDmMapperProcessor.java @@ -3,12 +3,16 @@ import com.vci.ubcs.ddl.bo.DdlFieldMappingAttrBO; import com.vci.ubcs.ddl.mapper.DllDmMapper; import com.vci.ubcs.ddl.mapper.DllMapper; +import com.vci.ubcs.omd.vo.BtmTypeAttributeVO; import com.vci.ubcs.starter.util.VciSpringUtil; import com.vci.ubcs.starter.web.enumpck.VciFieldTypeEnum; import org.apache.commons.collections4.BidiMap; +import org.springblade.core.tool.utils.StringPool; +import org.springblade.core.tool.utils.StringUtil; import org.springframework.stereotype.Component; import java.util.List; +import java.util.Locale; /** * Description: 搴旂敤浜庤揪姊︽暟鎹紝鐢熸垚鍒涘缓琛ㄦ搷浣渟ql鐨勫鐞嗗櫒 @@ -17,7 +21,7 @@ * @date 2023/4/24 */ @Component -public class DllDmMapperProcessor extends DllMapperProcessor{ +public class DllDmMapperProcessor extends DllMapperProcessor { private static final DllMapper MAPPER = VciSpringUtil.getBean(DllDmMapper.class); @@ -25,24 +29,24 @@ static { // 闇�瑕侀噸鏂版槧灏勭殑瀛楁绫诲瀷鍦ㄨ繖閲屽啓 - FIELD_MAP.put(VciFieldTypeEnum.VTDouble,new DdlFieldMappingAttrBO("DOUBLE",26,8,true,null)); - FIELD_MAP.put(VciFieldTypeEnum.VTInteger,new DdlFieldMappingAttrBO("NUMBER",22,null,true,null)); - FIELD_MAP.put(VciFieldTypeEnum.VTLong,new DdlFieldMappingAttrBO("BIGINT",22,null,true,null)); - FIELD_MAP.put(VciFieldTypeEnum.VTBoolean,new DdlFieldMappingAttrBO("VARCHAR",5,null,true,null)); - FIELD_MAP.put(VciFieldTypeEnum.VTDate,new DdlFieldMappingAttrBO("DATE",null,null,true,null)); - FIELD_MAP.put(VciFieldTypeEnum.VTDateTime,new DdlFieldMappingAttrBO("TIMESTAMP",null,null,true,null)); - FIELD_MAP.put(VciFieldTypeEnum.VTTime,new DdlFieldMappingAttrBO("TIME",null,null,true,null)); - FIELD_MAP.put(VciFieldTypeEnum.VTFilePath,new DdlFieldMappingAttrBO("TEXT",null,null,true,null)); - FIELD_MAP.put(VciFieldTypeEnum.VTClob,new DdlFieldMappingAttrBO("CLOB",100,null,true,null)); - FIELD_MAP.put(VciFieldTypeEnum.VTString,new DdlFieldMappingAttrBO("VARCHAR",255,null,true,null)); + FIELD_MAP.put(VciFieldTypeEnum.VTDouble, new DdlFieldMappingAttrBO("DOUBLE", 26, 8, true, null)); + FIELD_MAP.put(VciFieldTypeEnum.VTInteger, new DdlFieldMappingAttrBO("INTEGER", 10, null, true, null)); + FIELD_MAP.put(VciFieldTypeEnum.VTLong, new DdlFieldMappingAttrBO("NUMBER", 38, null, true, null)); + FIELD_MAP.put(VciFieldTypeEnum.VTBoolean, new DdlFieldMappingAttrBO("VARCHAR", 5, null, true, null)); + FIELD_MAP.put(VciFieldTypeEnum.VTDate, new DdlFieldMappingAttrBO("DATE", null, null, true, null)); + FIELD_MAP.put(VciFieldTypeEnum.VTDateTime, new DdlFieldMappingAttrBO("TIMESTAMP", null, null, true, null)); + FIELD_MAP.put(VciFieldTypeEnum.VTTime, new DdlFieldMappingAttrBO("TIME", null, null, true, null)); + FIELD_MAP.put(VciFieldTypeEnum.VTFilePath, new DdlFieldMappingAttrBO("TEXT", null, null, true, null)); + FIELD_MAP.put(VciFieldTypeEnum.VTClob, new DdlFieldMappingAttrBO("CLOB", 100, null, true, null)); + FIELD_MAP.put(VciFieldTypeEnum.VTString, new DdlFieldMappingAttrBO("VARCHAR", 255, null, true, null)); } public DllDmMapperProcessor() { super(MAPPER); System.out.println("-----------------"); - if (MAPPER != null){ + if (MAPPER != null) { System.out.println("[success]::鍔犺浇杈炬ⅵ鏁版嵁搴揇LL鎿嶄綔鏈嶅姟鎴愬姛"); - }else { + } else { System.out.println("[fail]::鍔犺浇杈炬ⅵ鏁版嵁搴揇LL鎿嶄綔鏈嶅姟澶辫触"); } } @@ -54,7 +58,29 @@ @Override protected DdlFieldMappingAttrBO getMappingBO(VciFieldTypeEnum fieldTypeEnum) { - return getMappingBOInMap(fieldTypeEnum,FIELD_MAP); + return getMappingBOInMap(fieldTypeEnum, FIELD_MAP); + } + + @Override + public String getColumnTypeSql(VciFieldTypeEnum fieldType, BtmTypeAttributeVO attributeVO) { + DdlFieldMappingAttrBO mappingBO = getMappingBO(fieldType); + if (fieldType.equals(VciFieldTypeEnum.VTDouble)) { + mappingBO.setDataPrecision(attributeVO.getPrecisionLength()); + } + //鍏堝彧閽堝鏁板瓧绫诲瀷鐨勮繘琛屽鐞� + if (fieldType.equals(VciFieldTypeEnum.VTInteger) ){ + mappingBO.setDataLength(null); + } else if (fieldType.equals(VciFieldTypeEnum.VTDouble) || fieldType.equals(VciFieldTypeEnum.VTLong)) { + if (attributeVO.getAttributeLength() <= mappingBO.getDataLength()) { + mappingBO.setDataLength(attributeVO.getAttributeLength()); + } + }else { + mappingBO.setDataLength(attributeVO.getAttributeLength()); + } + mappingBO.setNullable(attributeVO.isNullableFlag()); + mappingBO.setDefaultValue(attributeVO.getDefaultValue()); + return mappingBO.toString() + (StringUtil.equals(attributeVO.getId().toLowerCase(Locale.ROOT), "OID".toLowerCase(Locale.ROOT)) ? StringPool.SPACE + "primary key" + StringPool.SPACE : ""); + } /** @@ -65,11 +91,11 @@ */ @Override public List<VciFieldTypeEnum> listFieldByColumnStr(String columnStr) { - return listFieldInMapByColumnStr(columnStr,FIELD_MAP); + return listFieldInMapByColumnStr(columnStr, FIELD_MAP); } @Override public VciFieldTypeEnum getFieldTypeByColumnStr(String columnStr, Integer length) { - return getFieldTypeBeColumnStrInMap(columnStr,length,FIELD_MAP); + return getFieldTypeBeColumnStrInMap(columnStr, length, FIELD_MAP); } } -- Gitblit v1.9.3