From 986aa62ed00bee39363bab41b4eeb8259d446efd Mon Sep 17 00:00:00 2001 From: ludc <ludc@vci-tech.com> Date: 星期四, 16 一月 2025 18:20:32 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsLinkTypeServiceImpl.java | 62 ++++++++++++++++++++---------- 1 files changed, 41 insertions(+), 21 deletions(-) diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsLinkTypeServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsLinkTypeServiceImpl.java index c9cf8d5..a3c265f 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsLinkTypeServiceImpl.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsLinkTypeServiceImpl.java @@ -4,19 +4,17 @@ import cn.hutool.core.util.ZipUtil; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; +import com.vci.common.qt.object.QTConstants; import com.vci.constant.FrameWorkLangCodeConstant; 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.data.BusinessObject; import com.vci.corba.omd.ltm.LinkType; -import com.vci.corba.omd.ltm.LinkTypeServicePrx; -import com.vci.dto.OsAttributeDTO; +import com.vci.model.OsLinkTypeDO; import com.vci.omd.constants.AttributeConstants; -import com.vci.omd.constants.LinkTypeConstants; import com.vci.omd.utils.ObjectTool; import com.vci.pagemodel.*; -import com.vci.po.OsAttributePO; import com.vci.po.OsLinkTypePO; import com.vci.starter.poi.bo.ReadExcelOption; import com.vci.starter.poi.bo.WriteExcelData; @@ -24,19 +22,16 @@ import com.vci.starter.poi.constant.ExcelLangCodeConstant; import com.vci.starter.poi.util.ExcelUtil; import com.vci.starter.web.annotation.log.VciUnLog; -import com.vci.starter.web.enumpck.ResultCodeEnum; import com.vci.starter.web.enumpck.VciFieldTypeEnum; import com.vci.starter.web.exception.VciBaseException; import com.vci.starter.web.pagemodel.BaseQueryObject; import com.vci.starter.web.pagemodel.BaseResult; import com.vci.starter.web.pagemodel.DataGrid; import com.vci.starter.web.util.*; -import com.vci.model.OsLinkTypeDO; +import com.vci.starter.web.util.Lcm.Func; import com.vci.web.service.*; -import com.vci.web.util.Func; import com.vci.web.util.PlatformClientUtil; import com.vci.web.util.WebUtil; -import javafx.scene.shape.HLineTo; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -47,17 +42,17 @@ import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; -import java.io.*; +import java.io.File; +import java.io.IOException; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.*; -import java.util.function.Function; import java.util.stream.Collectors; /** * 閾炬帴绫诲瀷鏈嶅姟 * @author weidy - * @date 2021-2-15 + * @date 2024-2-15 */ @Service public class OsLinkTypeServiceImpl implements OsLinkTypeServiceI { @@ -76,7 +71,6 @@ * 鏃ュ織 */ private Logger logger = LoggerFactory.getLogger(getClass()); - /** * 骞冲彴鐨勮皟鐢ㄥ伐鍏风被 @@ -179,7 +173,7 @@ } vo.setDescription(linkType.description); vo.setId(linkType.name); - vo.setName(linkType.tag); + vo.setName(linkType.label); vo.setFromBtmTypeVOS(btmService.listBtmByIds(Arrays.stream(linkType.btmItemsFrom).collect(Collectors.toSet()))); if(!CollectionUtils.isEmpty(vo.getFromBtmTypeVOS())){ vo.setFromBtmType(Arrays.stream(linkType.btmItemsFrom).collect(Collectors.joining(","))); @@ -196,7 +190,7 @@ List<OsLinkTypeAttributeVO> linkTypeAttributeVOS = new ArrayList<>(); Optional.ofNullable(attributeVOS).orElseGet(()->new ArrayList<>()).stream().forEach(attributeVO->{ OsLinkTypeAttributeVO linkTypeAttributeVO = new OsLinkTypeAttributeVO(); - BeanUtil.convert(attributeVO,linkTypeAttributeVO); + BeanUtilForVCI.convert(attributeVO,linkTypeAttributeVO); linkTypeAttributeVO.setPkLinkType(vo.getOid()); if(StringUtils.isNotBlank(attributeVO.getBtmTypeId())){ linkTypeAttributeVO.setReferFlag(true); @@ -241,11 +235,12 @@ * @return 閾炬帴绫诲瀷 */ @Override - public OsLinkTypeVO getLinkTypeById(String id) { + public OsLinkTypeVO getLinkTypeById(String id) throws PLException { if(StringUtils.isBlank(id)){ return null; } - return self.selectAllLinkMap().getOrDefault(id.toLowerCase(),null); + LinkType linkType = platformClientUtil.getLinkTypeService().getLinkType(id); + return this.linkTypeDO2VO(linkType); } /** @@ -255,7 +250,7 @@ * @return 閾炬帴绫诲瀷鐨勫睘鎬� */ @Override - public List<OsLinkTypeAttributeVO> listAttributeByLinkId(String linkTypeId) { + public List<OsLinkTypeAttributeVO> listAttributeByLinkId(String linkTypeId) throws PLException { OsLinkTypeVO linkTypeVO = getLinkTypeById(linkTypeId); return linkTypeVO.getAttributes(); } @@ -319,7 +314,7 @@ } OsBtmTypeAttributeVO attributeVO = attributeVOMap.getOrDefault(attrId.toLowerCase(Locale.ROOT), null); if(attributeVO!=null){ - String vtType = attributeVO.getAttrDataType(); + String vtType = attributeVO.getAttributeDataType(); String attrType = ""; VciFieldTypeEnum fieldTypeEnum = VciFieldTypeEnum.forValue(vtType); if(fieldTypeEnum == null) { @@ -548,7 +543,7 @@ for (String name : names.split(",")) { LinkType lt = platformClientUtil.getLinkTypeService().getLinkType(name); excelDataList.add(new WriteExcelData(i+1,0, lt.name)); - excelDataList.add(new WriteExcelData(i+1,1, lt.tag)); + excelDataList.add(new WriteExcelData(i+1,1, lt.label)); excelDataList.add(new WriteExcelData(i+1,2, lt.implClass)); excelDataList.add(new WriteExcelData(i+1,3, lt.shape)); excelDataList.add(new WriteExcelData(i+1,4, String.join(",",lt.btmItemsFrom))); @@ -673,7 +668,7 @@ linkType.relationTo = osLinkTypePO.getRelationTo(); linkType.relation = osLinkTypePO.getRelationFrom() + ":" + osLinkTypePO.getRelationTo(); linkType.description = osLinkTypePO.getDescription(); - linkType.tag = osLinkTypePO.getTag(); + linkType.label = osLinkTypePO.getTag(); linkType.shape = osLinkTypePO.getShape(); linkType.implClass = osLinkTypePO.getImplClass(); linkType.modifier = WebUtil.getCurrentUserId(); @@ -751,6 +746,31 @@ links.add(vo); } return links; + } + /** + * 鑾峰彇璁剧疆鎺掑簭瀛楁鐨勬帓搴忓瓧娈� + * @param linkType 閾炬帴绫诲瀷鐨勭紪鍙� + * @param btmType 涓氬姟绫诲瀷鐨勭紪鍙� + * @param direction 姝�/鍙嶅悜 + * @return 灞炴�х殑淇℃伅 + */ + @Override + public List<String> getAllOrderbyAttributeByLink(String linkType, String btmType, String direction) throws PLException, ParseException { + List<String> abNames = new ArrayList<>(Arrays.asList("OID", "Creator", "CreateTime", "LastModifier", "LASTMODIFYTIME", "F_OID", + "F_REVISIONOID", "F_NAMEOID", "F_BtwName", "T_OID", "T_REVISIONOID", "T_NAMEOID", "T_BtwName", "TS" )); + AttributeDef[] attributes = platformClientUtil.getLinkTypeService().getAttributes(linkType); + for (AttributeDef attribute : attributes) { + abNames.add(String.valueOf(attribute.name)); + } + String wrapper = "T_OID."; + if(direction.equals(QTConstants.DIRECTION_OPPOSITE)){ + wrapper = "F_OID."; + } + List<OsBtmTypeAttributeVO> bizTypeQTDs = btmService.getBizTypeQTDs(btmType); + for (OsBtmTypeAttributeVO bizTypeQTD : bizTypeQTDs) { + abNames.add(wrapper + bizTypeQTD.getId()); + } + return abNames; } /** @@ -949,7 +969,7 @@ throw new PLException("500",new String[]{erreMsg}); } } - return false; + return true; } /** -- Gitblit v1.9.3