From 96a00cfded3cc74785a4e6967257dfdf3d74d274 Mon Sep 17 00:00:00 2001 From: yuxc <yuxc@vci-tech.com> Date: 星期一, 05 八月 2024 18:19:27 +0800 Subject: [PATCH] 修改返回值 --- Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java | 153 ++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 139 insertions(+), 14 deletions(-) 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 8735572..b20f4bc 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 @@ -1,35 +1,35 @@ package com.vci.web.service.impl; -import com.vci.client.common.providers.ServiceProvider; import com.vci.corba.common.PLException; +import com.vci.corba.omd.atm.AttributeDef; import com.vci.corba.omd.btm.BizType; +import com.vci.corba.omd.ltm.LinkType; +import com.vci.pagemodel.*; import com.vci.starter.web.annotation.log.VciUnLog; import com.vci.starter.web.enumpck.BooleanEnum; import com.vci.starter.web.exception.VciBaseException; +import com.vci.starter.web.pagemodel.BaseResult; import com.vci.starter.web.pagemodel.DataGrid; import com.vci.starter.web.pagemodel.PageHelper; +import com.vci.starter.web.pagemodel.Tree; import com.vci.starter.web.util.BeanUtil; import com.vci.starter.web.util.VciBaseUtil; import com.vci.starter.web.util.VciDateUtil; -import com.vci.web.constant.CacheKeyConstant; -import com.vci.web.pageModel.*; import com.vci.web.service.*; import com.vci.web.util.ConcurrentDateFormat; import com.vci.web.util.Func; +import com.vci.web.util.PlatformClientUtil; +import com.vci.web.util.WebUtil; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.cache.annotation.CacheEvict; -import org.springframework.cache.annotation.Cacheable; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.util.*; import java.util.stream.Collectors; - -import static com.vci.web.constant.CacheNameConstant.VCI_OBJECT_SERVICE; /** * 涓氬姟绫诲瀷鏈嶅姟 @@ -47,8 +47,8 @@ /** * 骞冲彴鐨勮皟鐢ㄥ伐鍏风被 */ - //@Autowired - //private PlatformClientUtil platformClientUtil; + @Autowired + private PlatformClientUtil platformClientUtil; /** * 灞炴�х殑鏈嶅姟 @@ -91,9 +91,7 @@ @VciUnLog public List<OsBtmTypeVO> selectAllBtm() { try { - // return btmDO2VOs(Arrays.stream(platformClientUtil.getBtmService().getAllBtmItem("")).collect(Collectors.toList())); -// return btmDO2VOs(Arrays.stream(ServiceProvider.getOMDService().getBTMService().getAllBtmItem("")).collect(Collectors.toList())); - return btmDO2VOs(Arrays.stream(ServiceProvider.getOMDService().getBTMService().getBizTypes("")).collect(Collectors.toList())); + return btmDO2VOs(Arrays.stream(platformClientUtil.getBtmService().getBizTypes("")).collect(Collectors.toList())); } catch (PLException e) { throw new RuntimeException(e); } @@ -106,7 +104,6 @@ */ @Override @VciUnLog - @Cacheable(value = VCI_OBJECT_SERVICE,key = CacheKeyConstant.ALL_BTM,unless = "#result == null") public Map<String, OsBtmTypeVO> selectAllBtmMap() { return Optional.ofNullable(self.selectAllBtm()).orElseGet(()->new ArrayList<OsBtmTypeVO>()).stream().collect(Collectors.toMap(s->s.getId().toLowerCase(), t->t,(o1,o2)->o1)); } @@ -339,9 +336,90 @@ * 娓呴櫎缂撳瓨 */ @Override - @CacheEvict(value = VCI_OBJECT_SERVICE,key = CacheKeyConstant.ALL_BTM) public void clearCache() { + } + + /** + * 淇敼涓氬姟绫诲瀷涓搴斿睘鎬у悕鐨勫睘鎬� + * @param apName + * @return + * @throws PLException + */ + @Override + public boolean alterAp(String apName) throws PLException { + String[] btmNames = null; + List<String> btmNameList = new ArrayList<String>(); + AttributeDef abItem = null; + try { + abItem = platformClientUtil.getAttributeService().getAttributeDefByName(apName); + } catch (PLException e1) { + e1.printStackTrace(); + } + if(abItem == null || abItem.equals("")){ + return true; + } + try { + btmNames = platformClientUtil.getBtmService().getBTNamesByAPName(apName); + } catch (PLException e) { + e.printStackTrace(); + } + if(btmNames == null || btmNames.length <= 0){ + return true; + } + + btmNameList = Arrays.asList(btmNames); + for(Iterator<String> i = btmNameList.iterator(); i.hasNext();){ + String btmName = i.next(); + try { + platformClientUtil.getBtmService().modifyBTAttribute(btmName, apName); + } catch (PLException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + String erreMsg = "璋冩暣涓氬姟绫诲瀷涓��"+apName+"銆戝睘鎬ф椂鍑虹幇閿欒锛屽師鍥狅細"+e.getMessage(); + logger.error(erreMsg); + throw new PLException("500",new String[]{erreMsg}); + } + } + return false; + } + + /** + * 鍒ゆ柇璇ュ睘鎬ф槸鍚﹀凡缁忓湪涓氬姟绫诲瀷涓骇鐢熶簡鏁版嵁 + * @param abName + * @return + * @throws PLException + */ + @Override + public boolean hasInstance(String abName) throws PLException { + String[] btmNames = platformClientUtil.getBtmService().getBTNamesByAPName(abName); + if(btmNames == null || btmNames.length == 0){ + return false; + } + for(int i = 0; i < btmNames.length; i++){ + String btmName = btmNames[i]; + boolean flag; + flag = platformClientUtil.getBtmService().hasData(btmName); + if(flag){ + return flag; + } + } + return false; + } + + /** + * 鑾峰彇鍚嶅瓧浠ilter寮�濮嬬殑涓氬姟绫诲瀷(for 鏌ヨ)锛屼富瑕佺敤浜庡睘鎬ф睜鐨勪笟鍔$被鍨嬮�夋嫨瀵硅瘽妗� + * 鑾峰彇鍏ㄩ儴涓氬姟绫诲瀷锛屼紶鍙俧ilter涓�"" + * @param btmName + * @return + * @throws PLException + */ + @Override + public BizType[] getBizTypes(String btmName) throws PLException { + if(null == btmName){ + btmName = ""; + } + return platformClientUtil.getBtmService().getBizTypes(btmName); } /** @@ -447,6 +525,53 @@ ervo.setTabRelViewList(relationVOList); return ervo; } + /** + * 鑾峰彇鎵�鏈変笟鍔$被鍨嬶紙鏍戝舰缁撴瀯锛� + * @return 鏌ヨ缁撴灉 + */ + @Override + public BaseResult<List<Tree>> getTreeBizTypes() throws PLException { + List<Tree> rootTreeList = new ArrayList<>(); + BizType[] bizTypes = getBizTypes(""); + BizType btItem = null; + for(int i = 0; i < bizTypes.length; i++){ + btItem = bizTypes[i]; + if(btItem.fName.equals("")){ + Tree tree = new Tree(); + tree.setOid(btItem.oid); + tree.setParentName(null); + tree.setParentId(null); + tree.setLeaf(true); + tree.setText(btItem.description); + tree.setAttributes(WebUtil.objectToMapString(btItem)); + tree.setChildren(getChildren(bizTypes,btItem)); + rootTreeList.add(tree); + } + } + + return BaseResult.success(rootTreeList); + } + + private List<Tree> getChildren(BizType[] bizTypes,BizType parentBIzType){ + List<Tree> trees= new ArrayList<>(); + for (BizType bizType : bizTypes) { + if(StringUtils.isBlank(bizType.fName)){ + continue; + } + if(bizType.fName.equals(parentBIzType.name)){ + Tree tree = new Tree(); + tree.setOid(bizType.oid); + tree.setParentName(parentBIzType.fName); + tree.setParentId(parentBIzType.oid); + tree.setLeaf(true); + tree.setText(bizType.description); + tree.setAttributes(WebUtil.objectToMapString(bizType)); + tree.setChildren(getChildren(bizTypes,bizType)); + trees.add(tree); + } + } + return trees; + } /** * 灏嗕笟鍔$被鍨嬫嫾鎺son -- Gitblit v1.9.3