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/DllMsMapperProcessor.java | 5 ++ Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/controller/DdlController.java | 2 Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMapperProcessor.java | 25 ++++++++++++ Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMySqlMapperProcessor.java | 5 ++ Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllSqlLiteMapperProcessor.java | 5 ++ Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/service/IDdlService.java | 7 +-- Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllOracleMapperProcessor.java | 7 +++ Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/service/impl/DdlServiceImpl.java | 39 ++++++++++++++----- Source/UBCS/ubcs-service/ubcs-ddl/pom.xml | 4 +- 9 files changed, 81 insertions(+), 18 deletions(-) diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/pom.xml b/Source/UBCS/ubcs-service/ubcs-ddl/pom.xml index b19d3f3..997e105 100644 --- a/Source/UBCS/ubcs-service/ubcs-ddl/pom.xml +++ b/Source/UBCS/ubcs-service/ubcs-ddl/pom.xml @@ -33,7 +33,7 @@ <artifactId>ubcs-util-api</artifactId> <version>3.0.1.RELEASE</version> </dependency> - <dependency> + <!--<dependency> <groupId>com.vci</groupId> <artifactId>vci-starter-word</artifactId> <version>1.0-SNAPSHOT</version> @@ -43,7 +43,7 @@ <artifactId>vci-starter-web</artifactId> </exclusion> </exclusions> - </dependency> + </dependency>--> <dependency> <groupId>org.springblade</groupId> <artifactId>blade-starter-swagger</artifactId> diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/controller/DdlController.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/controller/DdlController.java index 2683a9a..e40f69e 100644 --- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/controller/DdlController.java +++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/controller/DdlController.java @@ -67,7 +67,7 @@ @GetMapping("/getAllTableInfo") @ApiOperation(value = "鑾峰彇鎵�鏈夌殑琛ㄤ俊鎭�") @ApiOperationSupport(order = 4) - public R<List<DdlTableBO>> getAllTableInfo(){ + public R<List<BtmTypeVO>> getAllTableInfo(){ return R.data(ddlService.getAllTableInfo()); } 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; + } + } diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMsMapperProcessor.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMsMapperProcessor.java index e7a3573..fa60a49 100644 --- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMsMapperProcessor.java +++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMsMapperProcessor.java @@ -50,5 +50,8 @@ return "oracle.jdbc.OracleDiver".equals(url); } - + @Override + public VciFieldTypeEnum getFieldTypeByColumnStr(String columnStr, Integer length) { + return getFieldTypeBeColumnStrInMap(columnStr,length,FIELD_MAP); + } } diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMySqlMapperProcessor.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMySqlMapperProcessor.java index 2d548e1..780984d 100644 --- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMySqlMapperProcessor.java +++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMySqlMapperProcessor.java @@ -70,4 +70,9 @@ return listFieldInMapByColumnStr(columnStr,FIELD_MAP); } + @Override + public VciFieldTypeEnum getFieldTypeByColumnStr(String columnStr, Integer length) { + return getFieldTypeBeColumnStrInMap(columnStr,length,FIELD_MAP); + } + } diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllOracleMapperProcessor.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllOracleMapperProcessor.java index d45ed39..4629964 100644 --- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllOracleMapperProcessor.java +++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllOracleMapperProcessor.java @@ -8,6 +8,8 @@ import org.apache.commons.collections4.BidiMap; import org.springframework.stereotype.Component; +import java.util.List; + /** * Description: @@ -39,6 +41,11 @@ } @Override + public VciFieldTypeEnum getFieldTypeByColumnStr(String columnStr, Integer length) { + return getFieldTypeBeColumnStrInMap(columnStr,length,FIELD_MAP); + } + + @Override public boolean support(String url) { return "oracle.jdbc.OracleDiver".equals(url); } diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllSqlLiteMapperProcessor.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllSqlLiteMapperProcessor.java index 0b1fa0a..539f540 100644 --- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllSqlLiteMapperProcessor.java +++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllSqlLiteMapperProcessor.java @@ -65,4 +65,9 @@ public List<VciFieldTypeEnum> listFieldByColumnStr(String columnStr) { return listFieldInMapByColumnStr(columnStr,FIELD_MAP); } + + @Override + public VciFieldTypeEnum getFieldTypeByColumnStr(String columnStr, Integer length) { + return getFieldTypeBeColumnStrInMap(columnStr,length,FIELD_MAP); + } } diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/service/IDdlService.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/service/IDdlService.java index 915dfa5..ca66ffc 100644 --- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/service/IDdlService.java +++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/service/IDdlService.java @@ -1,6 +1,5 @@ package com.vci.ubcs.ddl.service; -import com.vci.starter.word.bo.WordMergeStartTableDataBO; import com.vci.ubcs.ddl.bo.DdlTableBO; import com.vci.ubcs.omd.dto.BtmAndLinkTypeDdlDTO; import com.vci.ubcs.omd.dto.BtmTypeDTO; @@ -217,8 +216,8 @@ * 鎷疯礉鏁版嵁鍒皐ord妯℃澘涓� * @param tableDataBO 瑕佸啓鍏ョ殑鏁版嵁 * @return word 鏂囦欢璺緞 - */ - String writeDataToWord(WordMergeStartTableDataBO tableDataBO); + *//* + String writeDataToWord(WordMergeStartTableDataBO tableDataBO);*/ /** * 鍒ゆ柇鏄惁涓哄吋瀹规�х殑琛紝杩欎簺琛ㄤ笉搴旇琚垱寤哄拰淇敼 @@ -246,5 +245,5 @@ * 鑾峰彇鎵�鏈夎〃淇℃伅 * @return 琛ㄤ俊鎭泦鍚� */ - List<DdlTableBO> getAllTableInfo(); + List<BtmTypeVO> getAllTableInfo(); } diff --git a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/service/impl/DdlServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/service/impl/DdlServiceImpl.java index 85e886c..f493a6b 100644 --- a/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/service/impl/DdlServiceImpl.java +++ b/Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/service/impl/DdlServiceImpl.java @@ -1,8 +1,8 @@ package com.vci.ubcs.ddl.service.impl; +import com.alibaba.cloud.commons.lang.StringUtils; import com.alibaba.nacos.shaded.com.google.protobuf.ServiceException; -import com.vci.starter.word.bo.WordMergeStartTableDataBO; import com.vci.ubcs.ddl.bo.DdlTableBO; import com.vci.ubcs.ddl.bo.DdlTableInDataBaseBO; import com.vci.ubcs.ddl.enums.BusinessTypeEnum; @@ -11,7 +11,6 @@ import com.vci.ubcs.ddl.processor.ddl.DdlMapperProcessor; import com.vci.ubcs.ddl.processor.dll.DllMapperProcessor; import com.vci.ubcs.ddl.processor.dll.DllMapperProcessorStrategy; -import com.vci.ubcs.ddl.properties.DdlExportWordFieldProperties; import com.vci.ubcs.ddl.properties.DdlPropertise; import com.vci.ubcs.ddl.service.IDdlService; import com.vci.ubcs.omd.cache.BtmTypeCache; @@ -24,7 +23,6 @@ import com.vci.ubcs.starter.web.enumpck.BooleanEnum; import com.vci.ubcs.starter.web.enumpck.VciFieldTypeEnum; import com.vci.ubcs.starter.web.util.VciBaseUtil; -import org.apache.commons.lang3.StringUtils; import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.BeanUtil; @@ -57,8 +55,8 @@ /** * word瀵煎嚭鐨勬椂鍊欑殑鍩熷瓧娈垫槧灏� */ - @Autowired - private DdlExportWordFieldProperties wordFieldProperties; +// @Autowired +// private DdlExportWordFieldProperties wordFieldProperties; /** * ddl鏁版嵁鎿嶄綔鏈嶅姟 @@ -1008,11 +1006,11 @@ * * @param tableDataBO 瑕佸啓鍏ョ殑鏁版嵁 * @return word 鏂囦欢璺緞 - */ + *//* @Override public String writeDataToWord(WordMergeStartTableDataBO tableDataBO) { return null; - } + }*/ /** * 鍒ゆ柇鏄惁涓哄吋瀹规�х殑琛紝杩欎簺琛ㄤ笉搴旇琚垱寤哄拰淇敼 @@ -1099,14 +1097,35 @@ * @return 琛ㄤ俊鎭泦鍚� */ @Override - public List<DdlTableBO> getAllTableInfo() { + public List<BtmTypeVO> getAllTableInfo() { List<String> allTableName = listAllTableName(); if (!CollectionUtils.isEmpty(allTableName)) { List<DdlTableBO> allTableBO = listTableInfoInDB(allTableName); + List<BtmTypeVO> btmTypeVOList = new ArrayList<>(); allTableBO.forEach(table -> { - table.setColumns(selectTableColumnInfo(table.getTableName())); + BtmTypeVO vo = new BtmTypeVO(); + vo.setTableName(table.getTableName()); + vo.setDescription(table.getTableDesc()); + List<DdlTableInDataBaseBO> columns = selectTableColumnInfo(table.getTableName()); + List<BtmTypeAttributeVO> attributes = new ArrayList<>(); + columns.forEach(col -> { + BtmTypeAttributeVO attributeVO = new BtmTypeAttributeVO(); + attributeVO.setId(col.getId()); + attributeVO.setName(col.getName()); + attributeVO.setNullableFlag(col.getNullableFlag()); + attributeVO.setAttributeLength(col.getAttributeLength()); + attributeVO.setPrecisionLength(col.getPrecisionLength()); + attributeVO.setScaleLength(col.getScaleLength()); + VciFieldTypeEnum field = dllMapper.getFieldTypeByColumnStr(col.getAttrDataType(), col.getAttributeLength()); + if (field != null){ + attributeVO.setAttrDataType(field.name()); + } + attributes.add(attributeVO); + }); + vo.setAttributes(attributes); + btmTypeVOList.add(vo); }); - return allTableBO; + return btmTypeVOList; } return new ArrayList<>(); } -- Gitblit v1.9.3