ludc
2024-12-09 3ff6166ea62799068064845fb083d1abb3d902a6
plt-slice属性调整后WEB端引用的旧属性也做了相应的调整
已修改21个文件
185 ■■■■■ 文件已修改
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/po/OsBtmTypePO.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebBoServiceImpl.java 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebLifeCycleServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebLinkTypeServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebLoServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebProcessCommandServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebRevisionRuleServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebStatusServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/util/WebUtil.java 40 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebDataRightController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebUIDataController.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsDataAuthServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsLifeCycleServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsLinkTypeServiceImpl.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsQueryTemplateImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsRevisionRuleServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsStatusServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/WebBtmIOServiceImpl.java 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/uidataservice/UIDataBaseServiceI.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/uidataservice/impl/UIDataCommonServiceImpl.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web-api/src/main/java/com/vci/po/OsBtmTypePO.java
@@ -37,7 +37,7 @@
     * 标签
     */
    @ExcelColumn(value="标签")
    private String lable;
    private String label;
    /**
     * 描述
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebBoServiceImpl.java
@@ -170,7 +170,7 @@
        String userName = WebUtil.getCurrentUserId();
        BusinessObject bo = new BusinessObject();
        bo.oid = (new ObjectUtility()).getNewObjectID36();
        bo.revisionid = (new ObjectUtility()).getNewObjectID36();
        bo.revoid = (new ObjectUtility()).getNewObjectID36();
        bo.nameoid = (new ObjectUtility()).getNewObjectID36();
        bo.btName = boName;
        bo.isLastR = true;
@@ -243,7 +243,7 @@
        if(cbo !=null){
            BusinessObject businessObject = new BusinessObject();
            businessObject.oid = new ObjectUtility().getNewObjectID36();
            businessObject.revisionid = new ObjectUtility().getNewObjectID36();
            businessObject.revoid = new ObjectUtility().getNewObjectID36();
            businessObject.nameoid = new ObjectUtility().getNewObjectID36();
            businessObject.btName = cbo.btName;
            businessObject.isLastR = cbo.isLastR;
@@ -288,7 +288,7 @@
    private  AttributeValue[] clone(AttributeValue[] newAttrValList) {
        AttributeValue[] n = new AttributeValue[newAttrValList.length];
        for (int i = 0; i < newAttrValList.length; i++) {
            n[i] = new AttributeValue(newAttrValList[i].attrName,newAttrValList[i].attrVal);
            n[i] = new AttributeValue(newAttrValList[i].name,newAttrValList[i].value);
        }
        return n;
    }
@@ -614,8 +614,8 @@
        AttributeValue[] attributeValueList = new AttributeValue[attributeValues.length];
        for (int i = 0; i < attributeValues.length; i++) {
            AttributeValue newAttributeValue = new AttributeValue();
            newAttributeValue.attrName = attributeValues[i].attrName;
            newAttributeValue.attrVal = attributeValues[i].attrVal;
            newAttributeValue.name = attributeValues[i].name;
            newAttributeValue.value = attributeValues[i].value;
            attributeValueList[i] = newAttributeValue;
        }
        return attributeValueList;
@@ -843,8 +843,8 @@
        for (i = 0; i < attrValList.size(); ++i) {
            attrVal = (AttributeValue) attrValList.get(i);
            if (attrVal.attrName.toUpperCase().equals(attributeName.toUpperCase())) {
                attrVal.attrVal = attributeValue;
            if (attrVal.name.toUpperCase().equals(attributeName.toUpperCase())) {
                attrVal.value = attributeValue;
                isExist = true;
                break;
            }
@@ -852,8 +852,8 @@
        if (!isExist) {
            attrVal = new AttributeValue();
            attrVal.attrName = attributeName.toUpperCase();
            attrVal.attrVal = attributeValue;
            attrVal.name = attributeName.toUpperCase();
            attrVal.value = attributeValue;
            attrValList.add(attrVal);
        }
@@ -2357,9 +2357,9 @@
                if (bo.newAttrValList != null) {
                    for (int i = 0; i < bo.newAttrValList.length; ++i) {
                        AttributeValue av = bo.newAttrValList[i];
                        if (WebUtil.isNormalAttr(av.attrName)) {
                            if(av.attrVal == null){
                                av.attrVal = "";
                        if (WebUtil.isNormalAttr(av.name)) {
                            if(av.value == null){
                                av.value = "";
                            }
                            newAttr.add(av);
                        }
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebLifeCycleServiceImpl.java
@@ -372,7 +372,7 @@
            life.setLines(lineVOS);
            life.setStartStatus(lifeCycle.startState);
            life.setStartStatusName(statusVOMap.getOrDefault(lifeCycle.startState,new OsStatusVO()).getName());
            life.setName(lifeCycle.tag);
            life.setName(lifeCycle.label);
            try {
                life.setTs(VciDateUtil.str2Date(lifeCycle.ts,VciDateUtil.DateTimeMillFormat));
            } catch (Exception e) {
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebLinkTypeServiceImpl.java
@@ -128,7 +128,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(",")));
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebLoServiceImpl.java
@@ -841,8 +841,8 @@
        for(i = 0; i < attrValList.size(); ++i) {
            attrVal = attrValList.get(i);
            if (attrVal.attrName.toUpperCase().equals(attributeName.toUpperCase())) {
                attrVal.attrVal = attributeValue;
            if (attrVal.name.toUpperCase().equals(attributeName.toUpperCase())) {
                attrVal.value = attributeValue;
                isExist = true;
                break;
            }
@@ -850,8 +850,8 @@
        if (!isExist) {
            attrVal = new AttributeValue();
            attrVal.attrName = attributeName.toUpperCase();
            attrVal.attrVal = attributeValue;
            attrVal.name = attributeName.toUpperCase();
            attrVal.value = attributeValue;
            attrValList.add(attrVal);
        }
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebProcessCommandServiceImpl.java
@@ -178,7 +178,7 @@
            BusinessObject cbo = allCbo.get(i);
            String[] values = new String[4];
            values[0] = cbo.oid;
            values[1] = cbo.revisionid;
            values[1] = cbo.revoid;
            values[2] = cbo.nameoid;
            values[3] = cbo.btName;
            objectPropertyValues[i] = values;
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebRevisionRuleServiceImpl.java
@@ -113,7 +113,7 @@
            }
            ruleVO.setDescription(versionRule.description);
            ruleVO.setId(versionRule.name);
            ruleVO.setName(versionRule.tag);
            ruleVO.setName(versionRule.label);
            ruleVO.setStepLength(WebUtil.getInt(versionRule.stepLength));
            ruleVO.setJumpCharacter(versionRule.jumpCharacter);
            ruleVO.setPrefixion(versionRule.prefixion);
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebStatusServiceImpl.java
@@ -84,7 +84,7 @@
            }
            statusVO.setDescription(statePool.description);
            statusVO.setId(statePool.name);
            statusVO.setName(statePool.tag);
            statusVO.setName(statePool.label);
        }
        return statusVO;
    }
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/util/WebUtil.java
@@ -1175,15 +1175,15 @@
            if(newAList!=null&&newAList.length>0){
                for(int i = 0 ; i < newAList.length;i++){
                    com.vci.corba.omd.data.AttributeValue av = newAList[i];
                    String attrName = av.attrName.toLowerCase();
                    String attrName = av.name.toLowerCase();
                    if(fieldAttrMap.containsKey(attrName)) {
                        String fieldName = fieldAttrMap.get(attrName);
                        setValueForFieldFromCbo(fieldName, obj, av.attrVal);
                        setValueForFieldFromCbo(fieldName, obj, av.value);
                    }else{
                        fieldAttrMap.forEach((cboField,fieldName)->{
                            if(fieldName!=null && fieldName.equalsIgnoreCase(attrName) && cboField.contains(".")){
                                //参照的时候
                                setValueForFieldFromCbo(fieldName, obj, av.attrVal);
                                setValueForFieldFromCbo(fieldName, obj, av.value);
                                return;
                            }
                        });
@@ -1193,15 +1193,15 @@
            if(hisAList!=null&&hisAList.length>0){
                for(int i = 0 ; i < hisAList.length;i++){
                    com.vci.corba.omd.data.AttributeValue av = hisAList[i];
                    String attrName = av.attrName.toLowerCase();
                    String attrName = av.name.toLowerCase();
                    String fieldName = fieldAttrMap.get(attrName);
                    if(fieldName!=null){
                        setValueForFieldFromCbo(fieldName, obj, av.attrVal);
                        setValueForFieldFromCbo(fieldName, obj, av.value);
                    }else{
                        fieldAttrMap.forEach((cboField,field)->{
                            if(field!=null && field.equalsIgnoreCase(attrName) && cboField.contains(".")){
                                //参照的时候
                                setValueForFieldFromCbo(field, obj, av.attrVal);
                                setValueForFieldFromCbo(field, obj, av.value);
                                return;
                            }
                        });
@@ -1235,15 +1235,15 @@
            if(hisAList!=null&&hisAList.length>0){//
                for(int i = 0 ; i < hisAList.length;i++){
                    com.vci.corba.omd.data.AttributeValue av = hisAList[i];
                    String attrName = av.attrName.toLowerCase();
                    map.put(attrName, av.attrVal);
                    String attrName = av.name.toLowerCase();
                    map.put(attrName, av.value);
                }
            }
            if(newAList!=null&&newAList.length>0){//NEW的优先级高些
                for(int i = 0 ; i < newAList.length;i++){
                    com.vci.corba.omd.data.AttributeValue av = newAList[i];
                    String attrName = av.attrName.toLowerCase();
                    map.put(attrName, av.attrVal);
                    String attrName = av.name.toLowerCase();
                    map.put(attrName, av.value);
                }
            }
        }
@@ -1276,15 +1276,15 @@
            if(hisAList!=null&&hisAList.length>0){
                for(int i = 0 ; i < hisAList.length;i++){
                    AttributeValue av = hisAList[i];
                    String attrName = av.attrName.toLowerCase();
                    map.put(attrName, av.attrVal);
                    String attrName = av.name.toLowerCase();
                    map.put(attrName, av.value);
                }
            }
            if(newAList!=null&&newAList.length>0){
                for(int i = 0 ; i < newAList.length;i++){
                    AttributeValue av = newAList[i];
                    String attrName = av.attrName.toLowerCase();
                    map.put(attrName, av.attrVal);
                    String attrName = av.name.toLowerCase();
                    map.put(attrName, av.value);
                }
            }
        }
@@ -1327,18 +1327,18 @@
            if(newAList!=null&&newAList.length>0){
                for(int i = 0 ; i < newAList.length;i++){
                    AttributeValue av = newAList[i];
                    String attrName = av.attrName.toLowerCase();
                    String attrName = av.name.toLowerCase();
                    String fieldName = fieldAttrMap.get(attrName);
                    setValueForFieldFromCbo(fieldName, obj, av.attrVal);//依然使用CBO的处理方式
                    setValueForFieldFromCbo(fieldName, obj, av.value);//依然使用CBO的处理方式
                }
            }
            if(hisAList!=null&&hisAList.length>0){
                for(int i = 0 ; i < hisAList.length;i++){
                    AttributeValue av = hisAList[i];
                    String attrName = av.attrName.toLowerCase();
                    String attrName = av.name.toLowerCase();
                    String fieldName = fieldAttrMap.get(attrName);
                    if(fieldName!=null){
                        setValueForFieldFromCbo(fieldName, obj, av.attrVal);
                        setValueForFieldFromCbo(fieldName, obj, av.value);
                    }
                }
            }
@@ -1718,8 +1718,8 @@
            for (int i = 0; i < select.getSelectItems().size(); i++) {
                SelectItem selectItem = select.getSelectItem(i);
                AttributeValue attributeValue = new AttributeValue();
                attributeValue.attrName = selectItem.getAlias().getName();
                attributeValue.attrVal    = valueArry[i];
                attributeValue.name = selectItem.getAlias().getName();
                attributeValue.value = valueArry[i];
                attributeValues[i] = attributeValue;
            }
            BusinessObject.newAttrValList= attributeValues;
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebDataRightController.java
@@ -106,7 +106,7 @@
            throw new PLException("没有获取到数据的业务类型",new String[0]);
        }
        cbo.oid = boData.getOid();
        cbo.revisionid = boData.getRevisionOid();
        cbo.revoid = boData.getRevisionOid();
        cbo.nameoid = boData.getNameOid();
        cbo.btName = boData.getBtmName();
        return null;
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebUIDataController.java
@@ -1,6 +1,8 @@
package com.vci.web.controller;
import com.alibaba.fastjson.JSON;
import com.vci.corba.common.PLException;
import com.vci.corba.query.data.KV;
import com.vci.dto.DeleteDataDTO;
import com.vci.dto.DeleteLinkDataDTO;
import com.vci.dto.FormDataDTO;
@@ -11,20 +13,20 @@
import com.vci.starter.web.pagemodel.*;
import com.vci.pagemodel.ReferConfigVO;
import com.vci.pagemodel.UIFormDataVO;
import com.vci.starter.web.util.Lcm.Func;
import com.vci.starter.web.util.VciBaseUtil;
import com.vci.query.UIDataGridQuery;
import com.vci.query.UIFormQuery;
import com.vci.query.UITreeQuery;
import com.vci.web.service.uidataservice.UIDataCommonServiceI;
import com.vci.web.util.PlatformClientUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
 * ui定义的数据查询
@@ -105,6 +107,36 @@
    }
    /**
     * 测试自定义URL方式查询
     * @param dataGridQuery
     * @return
     */
    @PostMapping("/getTestPartQueryList")
    public BaseResult getTestPartQueryList(UIDataGridQuery dataGridQuery) throws PLException {
        PlatformClientUtil platformClientUtil = new PlatformClientUtil();
        String sql = "select * from " + VciBaseUtil.getTableName(dataGridQuery.getBtmName())
                + " where oid in ('D5DFA9D3-D2AF-4D1D-850F-73B102532740','BCE5B0E3-A49C-2453-8E62-8F4C7F4BEDF2','257BB15B-12CF-68D2-FCFE-1FA3E29DBD1E')";
        KV[][] kvs = platformClientUtil.getQueryService().queryBySql(sql);
        List<Map<String, Object>> resulListMap = new ArrayList<>();
        for (KV[] kvArray : kvs) {
            Map<String, Object> map = new HashMap<>();
            for (KV kv : kvArray) {
                if (kv.key != null && kv.value != null) {
                    //返回全小写的
                    map.put(kv.key.toLowerCase(Locale.ROOT), kv.value);
                }
            }
            resulListMap.add(map);
        }
        DataGrid dataGrid = new DataGrid();
        dataGrid.setData(resulListMap);
        dataGrid.setTotal(resulListMap.size());
        // TODO: 2024/12/5 Ludc 这儿还可以按照dataGridQuery.getTableDefineId()来查询表格定义的内容,
        //  然后根据配置的页面信息来处理要查询条件或列以及返回的参数
        return BaseResult.dataGrid(dataGrid);
    }
    /**
     * 根据查询模板查询数据,返回值按照页面定义
     * @param treeQuery 树查询对象
     * @return 树的数据
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsBtmServiceImpl.java
@@ -581,7 +581,7 @@
            tree.setParentName(bizType.fName);
            Map<String, String> atrrMap = new HashMap<>();
            atrrMap.put("name", bizType.name);
            atrrMap.put("lable", bizType.label);
            atrrMap.put("label", bizType.label);
            tree.setAttributes(atrrMap);
            trees.add(tree);
        });
@@ -1536,7 +1536,7 @@
                excelReapeat.put(osBtmTypePO.getName(), osBtmTypePO.getRowIndex());
                BizType bizType = new BizType();
                bizType.name = osBtmTypePO.getName();
                bizType.label = osBtmTypePO.getLable();
                bizType.label = osBtmTypePO.getLabel();
                bizType.description = osBtmTypePO.getDescription();
                bizType.fName = osBtmTypePO.getFName();
                bizType.implClass = osBtmTypePO.getImplClass();
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsDataAuthServiceImpl.java
@@ -171,7 +171,7 @@
                    BusinessObject bo = result[i];
                    AttributeValue[] attList = bo.hisAttrValList;
                    for (int j = 0; j < clauseList.size(); j++) {
                        lineData.add(attList[j].attrVal);
                        lineData.add(attList[j].value);
//                        qrTable.setValueAt(attList[j].attrVal, i, j);
                    }
                    tableValues.add(lineData);
@@ -183,7 +183,7 @@
                    LinkObject lo = loResult[i];
                    AttributeValue[] attList = lo.hisAttrValList;
                    for (int j = 0; j < attList.length; j++) {
                        lineData.add(attList[j].attrVal);
                        lineData.add(attList[j].value);
//                        qrTable.setValueAt(attList[j], i, j);
                    }
                    tableValues.add(lineData);
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsLifeCycleServiceImpl.java
@@ -278,7 +278,7 @@
            life.setLines(lineVOS);
            life.setStartStatus(lifeCycle.startState);
            life.setStartStatusName(statusVOMap.getOrDefault(lifeCycle.startState,new OsStatusVO()).getName());
            life.setName(lifeCycle.tag);
            life.setName(lifeCycle.label);
            try {
                life.setTs(VciDateUtil.str2Date(lifeCycle.ts,VciDateUtil.DateTimeMillFormat));
            } catch (Exception e) {
@@ -297,7 +297,7 @@
    public LifeCycle lifeCycleVO2DO(OsLifeCycleVO lifeCycleVO) throws PLException {
        LifeCycle lifeCyle = new LifeCycle();
        lifeCyle.name = lifeCycleVO.getId();
        lifeCyle.tag = lifeCycleVO.getName();
        lifeCyle.label = lifeCycleVO.getName();
        lifeCyle.oid = lifeCycleVO.getOid();
        String userId = WebThreadLocalUtil.getCurrentUserSessionInfoInThread().getUserId();
        lifeCyle.creator = Func.isBlank(lifeCycleVO.getCreator()) ? userId:lifeCycleVO.getCreator();
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsLinkTypeServiceImpl.java
@@ -52,7 +52,7 @@
/**
 * 链接类型服务
 * @author weidy
 * @date 2021-2-15
 * @date 2024-2-15
 */
@Service
public class OsLinkTypeServiceImpl implements OsLinkTypeServiceI {
@@ -71,7 +71,6 @@
     * 日志
     */
    private Logger logger = LoggerFactory.getLogger(getClass());
    /**
     * 平台的调用工具类
@@ -174,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(",")));
@@ -544,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)));
@@ -669,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();
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsQueryTemplateImpl.java
@@ -434,7 +434,7 @@
        //添加业务类型根节点
        for (LinkType plAction : linkTypes) {
            HashMap<String,Object> childTree = new HashMap();
            childTree.put("text", plAction.tag + "/" +plAction.name);
            childTree.put("text", plAction.label + "/" +plAction.name);
            childTree.put("oid", plAction.oid);
//            tree.put("children", childTree);
            addExportTreeNode(plAction, qts, childTree);
@@ -1110,7 +1110,7 @@
        //添加业务类型根节点
        for (LinkType plAction : ltsNew) {
            HashMap<String,Object> childTree = new HashMap();
            childTree.put("text", plAction.tag + "/" +plAction.name);
            childTree.put("text", plAction.label + "/" +plAction.name);
            childTree.put("oid", plAction.oid);
            addExportTreeNode(plAction, qts, childTree);
            childList.add(childTree);
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsRevisionRuleServiceImpl.java
@@ -228,7 +228,7 @@
        VersionRule newVR = new VersionRule();
        newVR.oid = osRevisionRuleDTO.getOid();
        newVR.name = osRevisionRuleDTO.getId();
        newVR.tag = osRevisionRuleDTO.getName();
        newVR.label = osRevisionRuleDTO.getName();
        newVR.description = osRevisionRuleDTO.getDescription();
        newVR.jumpCharacter = osRevisionRuleDTO.getJumpCharacter();
        newVR.initialValue = osRevisionRuleDTO.getInitialValue();
@@ -283,7 +283,7 @@
            }
            ruleVO.setDescription(versionRule.description);
            ruleVO.setId(versionRule.name);
            ruleVO.setName(versionRule.tag);
            ruleVO.setName(versionRule.label);
            ruleVO.setStepLength(WebUtil.getInt(versionRule.stepLength));
            ruleVO.setJumpCharacter(versionRule.jumpCharacter);
            ruleVO.setPrefixion(versionRule.prefixion);
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsStatusServiceImpl.java
@@ -108,7 +108,7 @@
            }
            statusVO.setDescription(statePool.description);
            statusVO.setId(statePool.name);
            statusVO.setName(statePool.tag);
            statusVO.setName(statePool.label);
        }
        return statusVO;
    }
@@ -388,7 +388,7 @@
        statePool.modifier = userId;
        statePool.modifyTime = now;
        statePool.ts = statusDTO.getTs()==null?VciDateUtil.getNowString(VciDateUtil.DateTimeMillFormat):VciDateUtil.date2Str(statusDTO.getTs(),VciDateUtil.DateTimeMillFormat);
        statePool.tag = statusDTO.getName();
        statePool.label = statusDTO.getName();
        return statePool;
    }
@@ -575,7 +575,7 @@
        statePool.modifier = statusVO.getLastModifier();
        statePool.modifyTime = VciDateUtil.getTime(statusVO.getLastModifyTime());
        statePool.ts = statusVO.getTs()==null?now:VciDateUtil.date2Str(statusVO.getTs(),VciDateUtil.DateTimeMillFormat);
        statePool.tag = statusVO.getName();
        statePool.label = statusVO.getName();
        return statePool;
    }
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/WebBtmIOServiceImpl.java
@@ -274,7 +274,7 @@
                lifeCyle = lifeCycleService.lifeCycleVO2DO(allLifeCycleLowMap.get(lifeCycleId));
                edit = true;
            }
            lifeCyle.tag = lifeCycleDTO.getName();
            lifeCyle.label = lifeCycleDTO.getName();
            lifeCyle.description = lifeCycleDTO.getDescription() == null?"":lifeCycleDTO.getDescription();
            lifeCyle.startState = lifeCycleDTO.getStartStatus() == null?"":lifeCycleDTO.getStartStatus();
            lifeCyle.modifier = userId;
@@ -1143,7 +1143,6 @@
        return "";
    }
    /**
     * 添加属性到oracle
     * @param addedAbList 添加的属性
@@ -1187,10 +1186,6 @@
//            DDLToolClient.getService().batchExecuteUpdateOracle(new String[]{removeSql});
        }
    }
    /**
     * 封装业务类型
@@ -1260,7 +1255,7 @@
            linkType.modifyTime = now;
            linkType.id = "";
            linkType.name = linkId;
            linkType.tag = linkTypeDTO.getName();
            linkType.label = linkTypeDTO.getName();
            linkType.description = linkTypeDTO.getDescription() == null ?"":linkTypeDTO.getDescription();
            linkType.implClass = "";
            linkType.shape = "";
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/uidataservice/UIDataBaseServiceI.java
@@ -48,7 +48,8 @@
     * @param
     */
    default boolean isCustomClass(String bsCustomClassOrUrl){
        if(bsCustomClassOrUrl.indexOf("@") == 0){
        //有.就代表是类路径
        if(bsCustomClassOrUrl.contains(".")){
            return true;
        }
        return false;
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/uidataservice/impl/UIDataCommonServiceImpl.java
@@ -1358,7 +1358,7 @@
        BaseModel baseModel = new BaseModel();
        baseModel.setOid(cbo.oid);
        baseModel.setNameOid(cbo.nameoid);
        baseModel.setRevisionOid(cbo.revisionid);
        baseModel.setRevisionOid(cbo.revoid);
        baseModel.setBtmName(cbo.btName);
        baseModel.setLastR(String.valueOf(cbo.isLastR));
        baseModel.setLastV(String.valueOf(cbo.isLastV));
@@ -2156,7 +2156,7 @@
                    //说明是升版
                    BaseModel baseModel = cbo2BaseModel(cbo);
                    RevisionDataInfo revisionValueObject = getNextRevision(btmTypeVO,baseModel);
                    cbo.revisionid = VciBaseUtil.getPk();
                    cbo.revoid = VciBaseUtil.getPk();
                    cbo.revisionSeq = revisionValueObject.revisionSeq;
                    cbo.revisionValue = revisionValueObject.revisionVal;
                    cbo.isLastR = true;
@@ -2251,8 +2251,8 @@
                if (StringUtils.isBlank(cbo.nameoid)) {
                    cbo.nameoid = VciBaseUtil.getPk();
                }
                if (StringUtils.isBlank(cbo.revisionid)) {
                    cbo.revisionid = VciBaseUtil.getPk();
                if (StringUtils.isBlank(cbo.revoid)) {
                    cbo.revoid = VciBaseUtil.getPk();
                }
                cbo.isFirstR = true;
                cbo.isLastR = true;
@@ -2695,9 +2695,9 @@
            throw new PLException("500", new String[]{"没有获取到数据的主键"});
        }
        for (BusinessObject cbo : cbos) {
            if(StringUtils.isBlank(cbo.revisionid)){
                String revisionoid = Arrays.stream(cbo.hisAttrValList).filter(e -> e.attrName.equals("REVISIONOID")).findFirst().map(e -> e.attrVal).orElse("");
                cbo.revisionid = revisionoid;
            if(StringUtils.isBlank(cbo.revoid)){
                String revisionoid = Arrays.stream(cbo.hisAttrValList).filter(e -> e.name.equals("REVISIONOID")).findFirst().map(e -> e.value).orElse("");
                cbo.revoid = revisionoid;
            }
            boolean b = platformClientUtil.getBOFService().deleteBusinessObject(cbo,type);
            if(!b){