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