From 769e437befb3354c1113ca5b5c2b8240995078be Mon Sep 17 00:00:00 2001
From: yuxc <yuxc@vci-tech.com>
Date: 星期二, 06 八月 2024 13:24:15 +0800
Subject: [PATCH] 新增获取业务全部属性类型接口
---
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java | 60 ++++++++++++++++++++++++++++++
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebBtmTypeController.java | 28 +++++++++++++
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/OsBtmServiceI.java | 7 +++
3 files changed, 94 insertions(+), 1 deletions(-)
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebBtmTypeController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebBtmTypeController.java
index ff9459a..395bfa5 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebBtmTypeController.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebBtmTypeController.java
@@ -30,6 +30,7 @@
import java.io.FileNotFoundException;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
+import java.text.ParseException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -121,7 +122,7 @@
}
/**
- * 鑾峰彇涓氬姟绫诲瀷鍖呭惈鐨勫睘鎬�
+ * 鑾峰彇涓氬姟绫诲瀷鍖呭惈鐨勫睘鎬у叏閮ㄤ负灏忓啓
* @param btmId 涓氬姟绫诲瀷鍚嶇О
* @return 灞炴�х殑淇℃伅
*/
@@ -133,6 +134,31 @@
}
/**
+ * 鑾峰彇涓氬姟鍏ㄩ儴灞炴�х被鍨�
+ * @param btmName 涓氬姟绫诲瀷鍚嶇О
+ * @return 灞炴�х殑淇℃伅
+ */
+ @GetMapping(value = "/getBizTypeQTDs")
+ @VciBusinessLog(operateName = "鏌ョ湅涓氬姟绫诲瀷鐨勫睘鎬�")
+ public BaseResult<List<OsBtmTypeAttributeVO>> getBizTypeQTDs(String btmName){
+
+ try {
+ List<OsBtmTypeAttributeVO> osBtmTypeAttributeVOS = btmService.getBizTypeQTDs(btmName);
+ return BaseResult.dataList(osBtmTypeAttributeVOS);
+ } catch (PLException e) {
+ BaseResult objectBaseResult = new BaseResult<>();
+ objectBaseResult.setCode(Integer.parseInt(e.code));
+ objectBaseResult.setMsg(Arrays.toString(e.messages));
+ return objectBaseResult;
+ } catch (ParseException e) {
+ BaseResult objectBaseResult = new BaseResult<>();
+ objectBaseResult.setCode(500);
+ objectBaseResult.setMsg(e.getMessage());
+ return objectBaseResult;
+ }
+ }
+
+ /**
* 鍙傜収鐨勪笟鍔$被鍨�
* @param baseQueryObject 鏌ヨ鏉′欢
* @return 鍒楄〃鐨勫唴瀹�
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/OsBtmServiceI.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/OsBtmServiceI.java
index e1c77c4..aacf813 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/OsBtmServiceI.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/OsBtmServiceI.java
@@ -11,6 +11,7 @@
import com.vci.starter.web.pagemodel.PageHelper;
import com.vci.starter.web.pagemodel.Tree;
+import java.text.ParseException;
import java.util.Collection;
import java.util.List;
import java.util.Map;
@@ -158,4 +159,10 @@
* @return 鏌ヨ缁撴灉
*/
BaseResult<List<Tree>> getTreeBizTypes() throws PLException;
+ /**
+ * 鑾峰彇涓氬姟鍏ㄩ儴灞炴�х被鍨�
+ * @param btmName 涓氬姟绫诲瀷鍚嶇О
+ * @return 灞炴�х殑淇℃伅
+ */
+ List<OsBtmTypeAttributeVO> getBizTypeQTDs(String btmName) throws PLException, ParseException;
}
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java
index b20f4bc..0d90146 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java
@@ -4,6 +4,8 @@
import com.vci.corba.omd.atm.AttributeDef;
import com.vci.corba.omd.btm.BizType;
import com.vci.corba.omd.ltm.LinkType;
+import com.vci.corba.omd.qtm.QTD;
+import com.vci.omd.constants.AttributeConstants;
import com.vci.pagemodel.*;
import com.vci.starter.web.annotation.log.VciUnLog;
import com.vci.starter.web.enumpck.BooleanEnum;
@@ -28,6 +30,8 @@
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
@@ -551,6 +555,62 @@
return BaseResult.success(rootTreeList);
}
+ /**
+ * 鑾峰彇涓氬姟鍏ㄩ儴灞炴�х被鍨�
+ * @param btmName 涓氬姟绫诲瀷鍚嶇О
+ * @return 灞炴�х殑淇℃伅
+ */
+ @Override
+ public List<OsBtmTypeAttributeVO> getBizTypeQTDs(String btmName) throws PLException, ParseException {
+ VciBaseUtil.alertNotNull(btmName, "涓氬姟绫诲瀷缂栧彿");
+ List<OsBtmTypeAttributeVO> osBtms = new ArrayList<>();
+ //鏌ヨ绯荤粺榛樿灞炴��
+ Map<String, AttributeDef> collect = Arrays.stream(platformClientUtil.getBtmService().getSysAttributeDefs())
+ .collect(Collectors.toMap(str -> str.name, str -> str));
+ for (String attrName : platformClientUtil.getBtmService().getSysAttributeNames()) {
+ AttributeDef sysAttributeDef = collect.get(attrName.toLowerCase());
+ OsBtmTypeAttributeVO vo = new OsBtmTypeAttributeVO();
+ vo.setOid(sysAttributeDef.oid);
+ vo.setAttrDataType(sysAttributeDef.vtDataType);
+ vo.setPkBtmType(btmName);
+ vo.setCreateTime(new Date(sysAttributeDef.createTime));
+ vo.setCreator(sysAttributeDef.creator);
+ vo.setDefaultValue(sysAttributeDef.defValue);
+ vo.setDescription(sysAttributeDef.description);
+ vo.setRange(sysAttributeDef.rage);
+ vo.setId(attrName);
+ vo.setName(sysAttributeDef.label);
+ vo.setLastModifier(sysAttributeDef.modifier);
+ vo.setLastModifyTime(new Date(sysAttributeDef.modifyTime));
+ osBtms.add(vo);
+ }
+ //鏌ヨ涓氬姟绫诲瀷涓嬬殑灞炴��
+ AttributeDef[] attributeDefs = platformClientUtil.getBtmService().getAttributeDefs(btmName);
+ SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ for (AttributeDef attribute : attributeDefs) {
+ OsBtmTypeAttributeVO vo = new OsBtmTypeAttributeVO();
+ vo.setOid(attribute.oid);
+ vo.setAttrDataType(attribute.vtDataType);
+ vo.setPkBtmType(btmName);
+ vo.setCreateTime(new Date(attribute.createTime));
+ vo.setCreator(attribute.creator);
+ vo.setDefaultValue(attribute.defValue);
+ vo.setDescription(attribute.description);
+ vo.setRange(attribute.rage);
+ vo.setId(attribute.name);
+ vo.setName(attribute.label);
+ vo.setTs(formatter.parse(attribute.ts));
+ vo.setLastModifier(attribute.modifier);
+ vo.setOwner(attribute.creator);
+ vo.setLastModifyTime(new Date(attribute.modifyTime));
+ String maxLength = AttributeConstants.getOtherValueByType(attribute.other, AttributeConstants.LENGTH);
+ if(StringUtils.isNotBlank(maxLength)){
+ vo.setAttributeLength(Integer.valueOf(maxLength));
+ }
+ osBtms.add(vo);
+ }
+ return osBtms;
+ }
private List<Tree> getChildren(BizType[] bizTypes,BizType parentBIzType){
List<Tree> trees= new ArrayList<>();
--
Gitblit v1.9.3