From 5176699e01aa3b9f8f4dc18f08793896f4ddd29c Mon Sep 17 00:00:00 2001
From: lihang <lihang@vci-tech.com>
Date: 星期一, 03 七月 2023 14:10:06 +0800
Subject: [PATCH] 修正业务类型默认字段的null的属性;修正DDL的建表语句生成;
---
Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/vo/BtmTypeAttributeVO.java | 6 +++---
Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmAttributeServiceImpl.java | 13 +++++++------
Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/processor/dll/DllMapperProcessor.java | 3 ++-
Source/UBCS/ubcs-service/ubcs-ddl/src/main/java/com/vci/ubcs/ddl/service/impl/DdlServiceImpl.java | 31 ++++++++++++++++++++++---------
4 files changed, 34 insertions(+), 19 deletions(-)
diff --git a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/vo/BtmTypeAttributeVO.java b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/vo/BtmTypeAttributeVO.java
index beefce5..7d512f5 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/vo/BtmTypeAttributeVO.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-omd-api/src/main/java/com/vci/ubcs/omd/vo/BtmTypeAttributeVO.java
@@ -14,9 +14,9 @@
* @date 2019/10/11 5:33 PM
*/
@Data
-@EqualsAndHashCode(callSuper = true)
+//@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "涓氬姟绫诲瀷鍖呭惈鐨勫睘鎬у璞�", description = "涓氬姟绫诲瀷鍖呭惈鐨勫睘鎬у璞�")
-public class BtmTypeAttributeVO extends BtmTypeAttribute {
+public class BtmTypeAttributeVO {
/**
* 绂佹淇敼杩欎釜鍊�
@@ -71,7 +71,7 @@
/**
* 鏄惁鍙互涓虹┖
*/
- private boolean nullableFlag;
+ private boolean nullableFlag = true;
/**
* 榛樿鍊�
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 eab3885..e23f3d3 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
@@ -16,6 +16,7 @@
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
+import java.util.Locale;
/**
* Description:DLL鐨勫鐞嗘帴鍙�
@@ -143,7 +144,7 @@
}
mappingBO.setNullable(attributeVO.isNullableFlag());
mappingBO.setDefaultValue(attributeVO.getDefaultValue());
- return mappingBO.toString() + (StringUtil.equals(attributeVO.getId(),"OID") ? StringPool.SPACE + "primary key" + StringPool.SPACE : "");
+ return mappingBO.toString() + (StringUtil.equals(attributeVO.getId().toLowerCase(Locale.ROOT),"OID".toLowerCase(Locale.ROOT)) ? StringPool.SPACE + "primary key" + StringPool.SPACE : "");
}
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 a8ffb74..6d1f373 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
@@ -976,26 +976,39 @@
*/
@Override
public R<List<ModifyAttributeInfo>> submit(BtmAndLinkTypeDdlDTO ddlDTO) {
- //try {
+ try {
List<ModifyAttributeInfo> changedList = new ArrayList<>();
if (!CollectionUtils.isEmpty(ddlDTO.getBtmTypeList())) {
List<BtmTypeVO> btmTypeList = ddlDTO.getBtmTypeList();
- //putBtm(btmTypeList.toArray(new BtmTypeVO[0]));
+ putBtm(btmTypeList.toArray(new BtmTypeVO[0]));
changedList.addAll(checkDifferent(btmTypeList, null));
- //removeBtm(btmTypeList.toArray(new BtmTypeVO[0]));
+ removeBtm(btmTypeList.toArray(new BtmTypeVO[0]));
}
if (!CollectionUtils.isEmpty(ddlDTO.getLinkTypeList())) {
List<LinkTypeVO> linkTypeList = ddlDTO.getLinkTypeList();
- //putLink(linkTypeList.toArray(new LinkTypeVO[0]));
+ putLink(linkTypeList.toArray(new LinkTypeVO[0]));
changedList.addAll(checkDifferent(null,linkTypeList));
- //removeLink(linkTypeList.toArray(new LinkTypeVO[0]));
+ removeLink(linkTypeList.toArray(new LinkTypeVO[0]));
}
R<List<ModifyAttributeInfo>> result = R.success("鏁版嵁搴撴搷浣滄垚鍔�");
result.setData(changedList);
return result;
- //} catch (ServiceException e) {
- //throw new RuntimeException(e.getMessage());
-// }
+ } catch (VciBaseException e) {
+ try {
+ // 寤鸿〃澶辫触鏈夊紓甯革紝鎹曡幏鍚庤繑鍥烇紝骞堕噴鏀剧嚎绋嬩腑鐨勫唴瀹�
+ if (!CollectionUtils.isEmpty(ddlDTO.getBtmTypeList())) {
+ removeBtm(ddlDTO.getBtmTypeList().toArray(new BtmTypeVO[0]));
+ }
+ if (!CollectionUtils.isEmpty(ddlDTO.getLinkTypeList())) {
+ removeLink(ddlDTO.getLinkTypeList().toArray(new LinkTypeVO[0]));
+ }
+ return R.fail(e.getMessage());
+ }catch (ServiceException e2){
+ throw new RuntimeException(e2.getMessage());
+ }
+ } catch (ServiceException e) {
+ throw new RuntimeException(e.getMessage());
+ }
}
/**
@@ -1056,7 +1069,7 @@
BtmTypeAttributeVO attributeVO = new BtmTypeAttributeVO();
attributeVO.setId(col.getId().toLowerCase());
attributeVO.setName(col.getName());
- attributeVO.setNullableFlag(col.getNullableFlag());
+ attributeVO.setNullableFlag(StringUtils.equals(col.getNullableFlag(), BooleanEnum.TRUE.getValue()));
attributeVO.setAttributeLength(col.getAttributeLength());
attributeVO.setPrecisionLength(col.getPrecisionLength());
attributeVO.setScaleLength(col.getScaleLength());
diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmAttributeServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmAttributeServiceImpl.java
index af80c13..a778063 100644
--- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmAttributeServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/BtmAttributeServiceImpl.java
@@ -177,7 +177,7 @@
/**
* 鑾峰彇榛樿瀛楁
- *
+ * 榛樿瀛楁鍧囦笉鍙负绌�
* @param btmType 涓氬姟绫诲瀷
* @return 鎵ц缁撴灉
*/
@@ -186,15 +186,12 @@
List<BtmTypeAttributeVO> list = new ArrayList<>();
// 涓氬姟绫诲瀷鐨勫熀鏈瓧娈�
BtmTypeFieldConstant.BASIC_FIELD_MAP.forEach((id,name) -> {
+ id = id.toLowerCase(Locale.ROOT);
BtmTypeAttributeVO vo = new BtmTypeAttributeVO();
vo.setId(id);
vo.setName(name);
vo.setPkBtmType(btmType.getOid());
- if (StringUtils.equals(id,"oid")){
- vo.setNullableFlag(false);
- }else {
- vo.setNullableFlag(true);
- }
+ vo.setNullableFlag(false);
if (Arrays.asList("createtime","lastmodifytime","owner").contains(id)){
vo.setAttrDataType(VciFieldTypeEnum.VTDateTime.name());
vo.setAttributeLength(6);
@@ -213,6 +210,8 @@
vo.setName(name);
vo.setPkBtmType(btmType.getOid());
vo.setAttrDataType(VciFieldTypeEnum.VTString.name());
+ // 鐗堟湰瑙勫垯瀛楁涓嶈兘涓虹┖
+ vo.setNullableFlag(false);
vo.setAttributeLength(150);
if (Arrays.asList("lastr","firstr","lastv","firstv","revisionseq","versionseq","revisionvalue","versionvalue").contains(id)){
vo.setAttributeLength(5);
@@ -233,6 +232,7 @@
vo.setId(id);
vo.setName(name);
vo.setPkBtmType(btmType.getOid());
+ vo.setNullableFlag(false);
vo.setAttributeLength(50);
vo.setAttrDataType(VciFieldTypeEnum.VTString.name());
list.add(vo);
@@ -246,6 +246,7 @@
vo.setId(id);
vo.setName(name);
vo.setPkBtmType(btmType.getOid());
+ vo.setNullableFlag(false);
vo.setAttributeLength(5);
vo.setAttrDataType(VciFieldTypeEnum.VTInteger.name());
list.add(vo);
--
Gitblit v1.9.3