dangsn
2024-06-05 f29ad099c6dc5c55d6cb94fb190d06743777ec6d
项目引用调整
已修改24个文件
390 ■■■■■ 文件已修改
Source/platformProject/pom.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-starter/pom.xml 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/pom.xml 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/OsAttributeServiceI.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/OsBaseServiceI.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/OsRevisionRuleServiceI.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/UIDataServiceI.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/WebBtmIOServiceI.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/OsAttributeServiceImpl.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/OsEnumServiceImpl.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/OsLifeCycleServiceImpl.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/OsLinkTypeServiceImpl.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/OsRevisionRuleServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/OsStatusServiceImpl.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/SmOperationServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/UIDataServiceImpl.java 57 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/UIEngineServiceImpl.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/VciFileDownloadServiceImpl.java 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/VciFileObjectServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/VciFileUploadServiceImpl.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/VciFileVolumeServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/WebActionServiceImpl.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/WebBoServiceImpl.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/WebBtmIOServiceImpl.java 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/platformProject/pom.xml
@@ -15,8 +15,8 @@
    <version>2024.1-SNAPSHOT</version>
    <packaging>pom</packaging>
    <properties>
        <plt.version>1.0.RELEASE</plt.version>
        <platform.version>2024.1-SNAPSHOT</platform.version>
        <vciplt.version>2022.RELEASE</vciplt.version>
        <old.spring.version>3.2.0.RELEASE</old.spring.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.version>1.8</java.version>
Source/platformProject/vci-platform-starter/pom.xml
@@ -19,12 +19,12 @@
        <dependency>
            <groupId>com.vci.client</groupId>
            <artifactId>plt-clientbase</artifactId>
            <version>1.0.RELEASE</version>
            <version>${plt.version}</version>
        </dependency>
        <dependency>
            <groupId>com.vci.client</groupId>
            <artifactId>plt-client</artifactId>
            <version>1.0.RELEASE</version>
            <version>${plt.version}</version>
        </dependency>
        <!--client的依赖-->
        <dependency>
@@ -112,12 +112,12 @@
        <dependency>
            <groupId>com.vci.common</groupId>
            <artifactId>plt-common</artifactId>
            <version>1.0.RELEASE</version>
            <version>${plt.version}</version>
        </dependency>
        <dependency>
            <groupId>com.vci.corba</groupId>
            <artifactId>plt-slice</artifactId>
            <version>1.0.RELEASE</version>
            <version>${plt.version}</version>
        </dependency>
        <!--common的依赖-->
        <dependency>
@@ -133,7 +133,7 @@
        <dependency>
            <groupId>com.zeroc</groupId>
            <artifactId>icegridgui</artifactId>
            <version>1.0.RELEASE</version>
            <version>${plt.version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
@@ -177,7 +177,6 @@
            <version>1.4</version>
        </dependency>
        <dependency>
            <groupId>org.jbpm</groupId>
            <artifactId>jbpm-core</artifactId>
@@ -211,8 +210,6 @@
            <artifactId>commons-compress</artifactId>
            <version>1.9</version>
        </dependency>
    </dependencies>
Source/platformProject/vci-platform-web/pom.xml
@@ -130,17 +130,6 @@
            <groupId>org.apache.velocity</groupId>
            <version>1.7</version>
        </dependency>
        <!--数据库操作工具-->
        <dependency>
            <groupId>com.vci.platform</groupId>
            <artifactId>ddlTool-client</artifactId>
            <version>${vciplt.version}</version>
        </dependency>
        <dependency>
            <groupId>com.vci.platform</groupId>
            <artifactId>ddlTool-common</artifactId>
            <version>${vciplt.version}</version>
        </dependency>
        <dependency>
            <groupId>com.vci</groupId>
            <artifactId>vci-platform-starter</artifactId>
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/OsAttributeServiceI.java
@@ -69,7 +69,7 @@
     * @param attributeVO 显示对象
     * @return 数据对象
     */
    AttribItem attributeVO2DO(OsAttributeVO attributeVO);
    AttributeDef attributeVO2DO(OsAttributeVO attributeVO);
    /**
     * 使用属性获取对象
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/OsBaseServiceI.java
@@ -6,14 +6,10 @@
import com.vci.starter.web.util.ApplicationContextProvider;
import com.vci.starter.web.util.VciBaseUtil;
import com.vci.starter.web.wrapper.VciQueryWrapperForDO;
import com.vci.web.model.OsLifeCycleDO;
import com.vci.web.other.OsMapToObjFunction;
import com.vci.web.pageModel.OsLifeCycleVO;
import com.vci.web.util.WebUtil;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.formula.functions.T;
import org.springframework.util.CollectionUtils;
import plm.bs.bom.clientobject.ClientBusinessObject;
import java.util.ArrayList;
import java.util.HashMap;
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/OsRevisionRuleServiceI.java
@@ -2,6 +2,7 @@
import com.vci.corba.omd.vrm.VersionRule;
import com.vci.web.pageModel.OsRevisionRuleVO;
import java.util.Collection;
import java.util.List;
import java.util.Map;
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/UIDataServiceI.java
@@ -1,5 +1,7 @@
package com.vci.web.service;
import com.vci.client.bof.RevisionValueObject;
import com.vci.client.bof.VersionValueObject;
import com.vci.starter.web.enumpck.VciChangeDocumentTypeEnum;
import com.vci.starter.web.exception.VciBaseException;
import com.vci.starter.web.model.BaseModel;
@@ -11,11 +13,6 @@
import com.vci.web.query.UIDataGridQuery;
import com.vci.web.query.UIFormQuery;
import com.vci.web.query.UITreeQuery;
import com.vci.web.query.UITreeRootQuery;
import plm.bs.bom.clientobject.ClientBusinessObject;
import plm.bs.bom.clientobject.ClientLinkObject;
import plm.bs.bom.clientobject.RevisionValueObject;
import plm.bs.bom.clientobject.VersionValueObject;
import java.util.Collection;
import java.util.List;
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/WebBtmIOServiceI.java
@@ -1,8 +1,8 @@
package com.vci.web.service;
import com.vci.corba.omd.btm.BizType;
import com.vci.starter.web.exception.VciBaseException;
import com.vci.web.dto.OsBtmTypeExportDTO;
import plm.corba.btm.BtmItem;
import java.util.Collection;
import java.util.List;
@@ -27,13 +27,13 @@
     * 批量添加业务类型
     * @param btmItems 业务类型的对象
     */
    void batchAddBtm(Collection<BtmItem> btmItems);
    void batchAddBtm(Collection<BizType> btmItems);
    /**
     * 批量添加业务类型
     * @param btmItems 业务类型的对象
     */
    void batchEditBtm(Collection<BtmItem> btmItems);
    void batchEditBtm(Collection<BizType> btmItems);
    /**
     * 导出业务类型的信息到Word中
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/OsAttributeServiceImpl.java
@@ -2,7 +2,6 @@
import com.vci.client.common.providers.ServiceProvider;
import com.vci.corba.common.PLException;
import com.vci.corba.common.VCIError;
import com.vci.corba.omd.atm.AttributeDef;
import com.vci.starter.web.annotation.log.VciUnLog;
import com.vci.starter.web.enumpck.VciFieldTypeEnum;
@@ -25,14 +24,12 @@
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import plm.corba.attribpool.AttribItem;
import plm.corba.attribpool.AttribItemFilter;
import java.util.*;
import java.util.stream.Collectors;
import static com.vci.client.omd.attribpool.ui.VTDataTypePanel.*;
import static com.vci.web.constant.CacheNameConstant.VCI_OBJECT_SERVICE;
import static plm.vo.omd.attribpool.ui.VTDataTypePanel.*;
/**
 * 属性池服务  --已经调用了平台的服务,因此不在提供Dao层
@@ -113,12 +110,11 @@
     */
    @Override
    public List<OsAttributeVO> selectAllAttribute() {
        AttribItemFilter abFilter = new AttribItemFilter();
        //后面两个分页数,完全没有用
        try {
//            return attributeDO2VOs(Arrays.stream(platformClientUtil.getAttributeService().getAttribItems(abFilter,1,1)).collect(Collectors.toList()));
//            return attributeDO2VOs(Arrays.stream(ServiceProvider.getOMDService().getAttributeService().getAttribItems(abFilter.name,1,1)).collect(Collectors.toList()));
            return attributeDO2VOs(Arrays.stream(ServiceProvider.getOMDService().getAttributeService().getAttributeDefs(abFilter.name,1,1)).collect(Collectors.toList()));
            return attributeDO2VOs(Arrays.stream(ServiceProvider.getOMDService().getAttributeService().getAttributeDefs("",1,1)).collect(Collectors.toList()));
        } catch (PLException vciError) {
            throw WebUtil.getVciBaseException(vciError);
        }
@@ -226,14 +222,14 @@
     * @return 数据对象
     */
    @Override
    public AttribItem attributeVO2DO(OsAttributeVO attributeVO) {
        AttribItem attribItem = new AttribItem();
    public AttributeDef attributeVO2DO(OsAttributeVO attributeVO) {
        AttributeDef attribItem = new AttributeDef();
        attribItem.oid = attributeVO.getOid();
        attribItem.ts = VciDateUtil.date2Str(attributeVO.getTs(),VciDateUtil.DateTimeFormat);
        attribItem.creator = attributeVO.getCreator();
        attribItem.createTime = VciDateUtil.date2Str(attributeVO.getCreateTime(),VciDateUtil.DateTimeFormat);
        attribItem.createTime = attributeVO.getCreateTime() != null?attributeVO.getCreateTime().getTime():null;
        attribItem.modifier = attributeVO.getLastModifier();
        attribItem.modifyTime = VciDateUtil.date2Str(attributeVO.getLastModifyTime(),VciDateUtil.DateTimeFormat);
        attribItem.modifyTime = attributeVO.getLastModifyTime() != null ? attributeVO.getLastModifyTime().getTime():null;
        attribItem.name = attributeVO.getId();
        attribItem.label = attributeVO.getName();
        attribItem.description = attributeVO.getDescription() == null ?"":attributeVO.getDescription();
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/OsEnumServiceImpl.java
@@ -212,12 +212,9 @@
    @Override
    @VciUnLog
    public List<OsEnumVO> selectAllEnum() {
        EnumItemFilter filter = new EnumItemFilter("");
        //后面两个参数居然完全没有作用
        try {
//            return enumDO2VOs(Arrays.stream(ServiceProvider.getOMDService().getEnumService().getEmItems("",1,1)).collect(Collectors.toList()));
            return enumDO2VOs(Arrays.stream(ServiceProvider.getOMDService().getEnumService().getEnumTypes("",1,1)).collect(Collectors.toList()));
            //return enumDO2VOs(Arrays.stream(platformClientUtil.getEnumService().getEmItems(filter,1,1)).collect(Collectors.toList()));
        } catch (PLException vciError) {
            throw WebUtil.getVciBaseException(vciError);
        }
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/OsLifeCycleServiceImpl.java
@@ -4,6 +4,7 @@
import com.vci.corba.common.PLException;
import com.vci.corba.omd.lcm.Bound;
import com.vci.corba.omd.lcm.LifeCycle;
import com.vci.corba.omd.lcm.TransitionVO;
import com.vci.starter.web.annotation.log.VciUnLog;
import com.vci.starter.web.exception.VciBaseException;
import com.vci.starter.web.pagemodel.BaseQueryObject;
@@ -270,8 +271,8 @@
        lifeCyle.creator = lifeCycleVO.getCreator();
        lifeCyle.description = lifeCycleVO.getDescription();
        lifeCyle.modifier = lifeCycleVO.getLastModifier();
        lifeCyle.modifyTime = lifeCycleVO.getLastModifyTime().getTime();
        lifeCyle.createTime = lifeCycleVO.getCreateTime().getTime();
        lifeCyle.modifyTime = lifeCycleVO.getLastModifyTime() != null ? lifeCycleVO.getLastModifyTime().getTime():null;
        lifeCyle.createTime = lifeCycleVO.getCreateTime() != null ? lifeCycleVO.getCreateTime().getTime():null;
        lifeCyle.startState =lifeCycleVO.getStartStatus();
        lifeCyle.ts = VciDateUtil.date2Str(lifeCycleVO.getTs(),VciDateUtil.DateTimeMillFormat);
        if(lifeCycleVO.getBounds() !=null && lifeCycleVO.getBounds().length>0) {
@@ -293,7 +294,7 @@
            lifeCyle.bounds = new Bound[0];
        }
        //加链接线
        List<com.vci.corba.omd.lcm.TransitionVO> lines = new ArrayList<>();
        List<TransitionVO> lines = new ArrayList<>();
        for (int i = 0; i < lifeCycleVO.getLines().size(); i++) {
            OsLifeCycleLineVO lineVO = lifeCycleVO.getLines().get(i);
            lines.add(lifeCycleLineVO2DO(lineVO));
@@ -379,7 +380,7 @@
            try {
                com.vci.corba.omd.lcm.TransitionVO transitionVO = lifeCycleLineVO2DO(lineVO);
//                platformClientUtil.getBOFactoryService().transferBusinessObject(new BusinessObjectHolder(obj), transitionVO);
                ServiceProvider.getBOFService().transferBusinessObject(obj, transitionVO.destination);
                ServiceProvider.getBOFService().transferBusinessObject(obj, transitionVO);
            } catch (PLException e) {
                throw WebUtil.getVciBaseException(e);
            }
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/OsLinkTypeServiceImpl.java
@@ -1,6 +1,6 @@
package com.vci.web.service.impl;
import com.vci.corba.common.VCIError;
import com.vci.corba.common.PLException;
import com.vci.starter.web.annotation.log.VciUnLog;
import com.vci.starter.web.enumpck.VciFieldTypeEnum;
import com.vci.starter.web.pagemodel.BaseQueryObject;
@@ -19,13 +19,10 @@
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.CacheEvict;
import org.springframework.cache.annotation.CachePut;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import plm.bs.bom.clientobject.ClientBusinessObject;
import plm.corba.linkTypeManager.LinkType;
import java.util.*;
import java.util.stream.Collectors;
@@ -93,7 +90,7 @@
    public List<OsLinkTypeVO> selectAllLink() {
        try {
            return linkTypeDO2VOs(Arrays.stream(platformClientUtil.getLinkTypeService().getLinkTypes()).collect(Collectors.toList()));
        } catch (VCIError vciError) {
        } catch (PLException vciError) {
           throw WebUtil.getVciBaseException(vciError);
        }
    }
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/OsRevisionRuleServiceImpl.java
@@ -96,8 +96,8 @@
            ruleVO.setCreator(versionRule.creator);
            ruleVO.setLastModifier(versionRule.modifier);
            try {
                ruleVO.setCreateTime(new Date(versionRule.createTime));
                ruleVO.setLastModifyTime(new Date(versionRule.modifyTime));
                ruleVO.setCreateTime(VciDateUtil.long2Date(versionRule.createTime));
                ruleVO.setLastModifyTime(VciDateUtil.long2Date(versionRule.modifyTime));
                ruleVO.setTs(VciDateUtil.str2Date(versionRule.ts,VciDateUtil.DateTimeFormat));
            } catch (Exception e) {
                e.printStackTrace();
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/OsStatusServiceImpl.java
@@ -8,7 +8,6 @@
import com.vci.starter.web.pagemodel.BaseQueryObject;
import com.vci.starter.web.pagemodel.DataGrid;
import com.vci.starter.web.pagemodel.PageHelper;
import com.vci.starter.web.util.BeanUtil;
import com.vci.starter.web.util.LangBaseUtil;
import com.vci.starter.web.util.VciBaseUtil;
import com.vci.starter.web.util.VciDateUtil;
@@ -285,7 +284,7 @@
        OsStatusVO statusVO = getObjectByOid(statusDTO.getOid());
        StatePool pool = statusDTO2DO(statusDTO);
        pool.creator = statusVO.getCreator();
        pool.createTime = statusVO.getCreateTime().getTime();
        pool.createTime = VciDateUtil.getTime(statusVO.getCreateTime());
        List<StatePool> poolList = new ArrayList<>();
        poolList.add(pool);
        batchEditSave(poolList);
@@ -329,12 +328,12 @@
        statePool.name = statusDTO.getId();
        statePool.description = statusDTO.getDescription()==null?"":statusDTO.getDescription();
        String userId = VciBaseUtil.getCurrentUserId();
        String now = VciDateUtil.getNowString(VciDateUtil.DateTimeMillFormat);
        long now = VciDateUtil.getTime(VciDateUtil.getNow());
        statePool.creator = userId;
        statePool.createTime = System.currentTimeMillis();
        statePool.createTime = now;
        statePool.modifier = userId;
        statePool.modifyTime = System.currentTimeMillis();
        statePool.ts = statusDTO.getTs()==null?now:VciDateUtil.date2Str(statusDTO.getTs(),VciDateUtil.DateTimeMillFormat);
        statePool.modifyTime = now;
        statePool.ts = statusDTO.getTs()==null?VciDateUtil.getNowString(VciDateUtil.DateTimeMillFormat):VciDateUtil.date2Str(statusDTO.getTs(),VciDateUtil.DateTimeMillFormat);
        statePool.tag = statusDTO.getName();
        return statePool;
    }
@@ -353,9 +352,9 @@
        String userId = VciBaseUtil.getCurrentUserId();
        String now = VciDateUtil.getNowString(VciDateUtil.DateTimeMillFormat);
        statePool.creator = statusVO.getCreator();
        statePool.createTime = statusVO.getCreateTime().getTime();
        statePool.createTime = VciDateUtil.getTime(statusVO.getCreateTime());
        statePool.modifier = statusVO.getLastModifier();
        statePool.modifyTime = statusVO.getLastModifyTime().getTime();
        statePool.modifyTime = VciDateUtil.getTime(statusVO.getLastModifyTime());
        statePool.ts = statusVO.getTs()==null?now:VciDateUtil.date2Str(statusVO.getTs(),VciDateUtil.DateTimeMillFormat);
        statePool.tag = statusVO.getName();
        return statePool;
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/SmOperationServiceImpl.java
@@ -1,6 +1,5 @@
package com.vci.web.service.impl;
import com.vci.frameworkcore.compatibility.SmFunctionQueryServiceI;
import com.vci.starter.web.util.VciBaseUtil;
import com.vci.web.pageModel.SmOperationVO;
import com.vci.web.service.SmOperationServiceI;
@@ -8,7 +7,6 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import plm.bs.bom.clientobject.ClientBusinessObject;
import java.util.*;
import java.util.stream.Collectors;
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/UIDataServiceImpl.java
@@ -1,13 +1,15 @@
package com.vci.web.service.impl;
import com.vci.client.bof.ClientLinkObject;
import com.vci.client.bof.RevisionValueObject;
import com.vci.client.bof.VersionValueObject;
import com.vci.client.common.providers.ServiceProvider;
import com.vci.corba.common.PLException;
import com.vci.corba.common.VCIError;
import com.vci.corba.omd.data.*;
import com.vci.corba.omd.lcm.LifeCycle;
import com.vci.file.pagemodel.VciFileObjectVO;
import com.vci.frameworkcore.lcstatuspck.FrameworkDataLCStatus;
import com.vci.frameworkcore.lcstatuspck.ReleaseDataLCStatus;
import com.vci.omd.constants.SystemAttribute;
import com.vci.starter.revision.bo.TreeWrapperOptions;
import com.vci.starter.web.annotation.bus.VciChangeDataAfter;
import com.vci.starter.web.annotation.bus.VciChangeDataBefore;
@@ -21,10 +23,8 @@
import com.vci.starter.web.util.*;
import com.vci.starter.web.wrapper.VciQueryWrapperForDO;
import com.vci.web.dto.*;
import com.vci.web.enumpck.UIComponentTypeEnum;
import com.vci.web.enumpck.UIFieldTypeEnum;
import com.vci.web.enumpck.UITreeLoadTypeEnum;
import com.vci.web.model.BaseLinkModel;
import com.vci.web.pageModel.*;
import com.vci.web.query.UIDataGridQuery;
import com.vci.web.query.UIFormQuery;
@@ -37,9 +37,6 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import plm.bs.bom.clientobject.*;
import plm.bs.bom.common.*;
import plm.corba.qt.BOAndLO;
import java.lang.reflect.Method;
import java.util.*;
@@ -1072,8 +1069,8 @@
        com.vci.client.bof.ClientBusinessObject afterCBO = null;
        try {
//            BusinessObject resultBO = platformClientUtil.getBOFactoryService().createBusinessObject(resultCbo.getObj().getBusinessObject(),false,false);
//            com.vci.corba.omd.data.BusinessObject resultBO = ServiceProvider.getBOFService().createBusinessObject(resultCbo.getObj().getBusinessObject(),false,false);
            com.vci.corba.omd.data.BusinessObject resultBO = ServiceProvider.getBOFService().createBusinessObject(resultCbo.getObj().getBusinessObject(),false,false);
//            BusinessObject resultBO = ServiceProvider.getBOFService().createBusinessObject(resultCbo.getObj().getBusinessObject(),false,false);
            BusinessObject resultBO = ServiceProvider.getBOFService().createBusinessObject(resultCbo.getObj().getBusinessObject(),false,false);
            afterCBO = new com.vci.client.bof.ClientBusinessObject();
            afterCBO.setBusinessObject(resultBO);
            result.setObj(boService.cbo2Map(afterCBO));
@@ -1249,7 +1246,7 @@
                baseModel.setRevisionValue("");
            }
            return  changeRevisionValueInfoToObject(platformClientUtil.getBOFactoryService().getNextRevisionValueObject(WebUtil.getTableName(btmTypeVO.getId()),baseModel.getNameOid(),btmTypeVO.getRevisionRuleId(),btmTypeVO.isInputRevisionFlag(),baseModel.getRevisionValue()));
        } catch (VCIError vciError) {
        } catch (PLException vciError) {
            throw WebUtil.getVciBaseException(vciError);
        }
    }
@@ -1273,10 +1270,10 @@
     * @return 版本的值对象
     */
    @Override
    public VersionValueObject getNextVersion(OsBtmTypeVO btmTypeVO,BaseModel baseModel){
    public VersionValueObject getNextVersion(OsBtmTypeVO btmTypeVO, BaseModel baseModel){
        try{
            return changeRevisionValueInfoToObject(platformClientUtil.getBOFactoryService().getNextVersionValue(WebUtil.getTableName(btmTypeVO.getId()),baseModel.getRevisionOid(),baseModel.getNameOid(),WebUtil.getInt(btmTypeVO.getVersionRule())));
        }catch (VCIError vciError){
        }catch (PLException vciError){
            throw WebUtil.getVciBaseException(vciError);
        }
    }
@@ -1332,8 +1329,8 @@
            return beforeResult;
        }
        //封装数据
        List<com.vci.corba.omd.data.BusinessObject> addBos = new ArrayList<>();
        List<com.vci.corba.omd.data.BusinessObject> afterBOs = new ArrayList<>();
        List<BusinessObject> addBos = new ArrayList<>();
        List<BusinessObject> afterBOs = new ArrayList<>();
        List<com.vci.client.bof.ClientBusinessObject> afterCBOs = new ArrayList<>();
        Map<String,List<String>> releasedFileOids = new HashMap<>();
        for(FormDataDTO formDataDTO:formDataDTOList.getFormDataDTOS()) {
@@ -1348,8 +1345,8 @@
            }
        }
        try {
//            com.vci.corba.omd.data.BusinessObject[] resultBOs = platformClientUtil.getBOFactoryService().batchCreateBusinessObject(addBos.toArray(new BusinessObject[0]), false, false);
            com.vci.corba.omd.data.BusinessObject[] resultBOs = ServiceProvider.getBOFService().batchCreateBusinessObject(addBos.toArray(new com.vci.corba.omd.data.BusinessObject[0]), false, false);
//            BusinessObject[] resultBOs = platformClientUtil.getBOFactoryService().batchCreateBusinessObject(addBos.toArray(new BusinessObject[0]), false, false);
            BusinessObject[] resultBOs = ServiceProvider.getBOFService().batchCreateBusinessObject(addBos.toArray(new BusinessObject[0]), false, false);
            afterBOs = Arrays.stream(resultBOs).collect(Collectors.toList());
            Arrays.stream(resultBOs).forEach(bo->{
                com.vci.client.bof.ClientBusinessObject cbo = new com.vci.client.bof.ClientBusinessObject();
@@ -1372,7 +1369,7 @@
            //说明后置事件出现了错误,那么就需要删除以前的这条数据
            try {
                platformClientUtil.getBOFactoryService().batchDeleteBusinessObject(afterBOs.toArray(new BusinessObject[0]),1);
            } catch (VCIError vciError) {
            } catch (PLException vciError) {
                throw WebUtil.getVciBaseException(vciError);
            }
            throw new VciBaseException(LangBaseUtil.getErrorMsg(e),new String[]{},e);
@@ -1456,7 +1453,7 @@
        BaseResult<Map<String,Object>> result = BaseResult.success();
        try {
//            BusinessObject bo = platformClientUtil.getBOFactoryService().createBusinessObject(resultCbo.getObj().getBusinessObject(),formDataDTO.isUpVersion()?false:true,formDataDTO.isUpVersion());
            com.vci.corba.omd.data.BusinessObject bo = ServiceProvider.getBOFService().createBusinessObject(resultCbo.getObj().getBusinessObject(),formDataDTO.isUpVersion()?false:true,formDataDTO.isUpVersion());
            BusinessObject bo = ServiceProvider.getBOFService().createBusinessObject(resultCbo.getObj().getBusinessObject(),formDataDTO.isUpVersion()?false:true,formDataDTO.isUpVersion());
            com.vci.client.bof.ClientBusinessObject afterCbo = new com.vci.client.bof.ClientBusinessObject();
            afterCbo.setBusinessObject(bo);
            result.setObj(boService.cbo2Map(afterCbo));
@@ -1497,7 +1494,7 @@
            return beforeResult;
        }
        //封装数据
        List<com.vci.corba.omd.data.BusinessObject> updateCBOS = new ArrayList<>();
        List<BusinessObject> updateCBOS = new ArrayList<>();
        Map<String,List<String>> releasedFileOids = new HashMap<>();
        List<com.vci.client.bof.ClientBusinessObject> afterCBOs = new ArrayList<>();
        for(FormDataDTO formDataDTO:formDataDTOList.getFormDataDTOS()) {
@@ -1512,8 +1509,8 @@
            }
        }
        try {
            platformClientUtil.getBOFactoryService().batchUpdateBusinessObject(new BusinessObjectListHolder(updateCBOS.toArray(new BusinessObject[0])));
        } catch (VCIError vciError) {
            platformClientUtil.getBOFactoryService().batchUpdateBusinessObject(updateCBOS.toArray(new BusinessObject[updateCBOS.size()]));
        } catch (PLException vciError) {
            throw WebUtil.getVciBaseException(vciError);
        }
        if(!CollectionUtils.isEmpty(releasedFileOids)){
@@ -1615,7 +1612,7 @@
        VciBaseUtil.switchCollectionForOracleIn(finalCbo).stream().forEach(cbos->{
            try {
//                platformClientUtil.getBOFactoryService().batchDeleteBusinessObject(cbos.stream().map(s->s.getBusinessObject()).collect(Collectors.toList()).toArray(new BusinessObject[0]),1);
                ServiceProvider.getBOFService().batchDeleteBusinessObject(cbos.stream().map(s->s.getBusinessObject()).collect(Collectors.toList()).toArray(new com.vci.corba.omd.data.BusinessObject[0]),1);
                ServiceProvider.getBOFService().batchDeleteBusinessObject(cbos.stream().map(s->s.getBusinessObject()).collect(Collectors.toList()).toArray(new BusinessObject[0]),1);
            } catch (PLException vciError) {
                throw WebUtil.getVciBaseException(vciError);
            }
@@ -1719,7 +1716,7 @@
            clo.setToBO(toCbo);
        }
        //执行保存
        com.vci.corba.omd.data.BusinessObject[] bos = new com.vci.corba.omd.data.BusinessObject[1];
        BusinessObject[] bos = new BusinessObject[1];
        toCbo.dealBusinessObjectNullValue();
        clo.dealLinkObjectNullValue();
        bos[0] = toCbo.getBusinessObject();
@@ -1775,18 +1772,18 @@
            return result;
        }
        //处理业务类型得到数据
        com.vci.client.bof.ClientLinkObject clo ;
        ClientLinkObject clo ;
        if(editFlag){
            try {
//                LinkObject linkObject = platformClientUtil.getBOFactoryService().readLinkObjectById(formLinkDataDTO.getOid(), formLinkDataDTO.getLinkType());
                com.vci.corba.omd.data.LinkObject linkObject = ServiceProvider.getBOFService().readLinkObjectById(formLinkDataDTO.getOid(), formLinkDataDTO.getLinkType());
                clo = new com.vci.client.bof.ClientLinkObject();
                LinkObject linkObject = ServiceProvider.getBOFService().readLinkObjectById(formLinkDataDTO.getOid(), formLinkDataDTO.getLinkType());
                clo = new ClientLinkObject();
                clo.setLinkObject(linkObject);
            } catch (PLException vciError) {
                throw WebUtil.getVciBaseException(vciError);
            }
        }else{
            clo = new com.vci.client.bof.ClientLinkObject();
            clo = new ClientLinkObject();
            //处理初始化的数据
            clo.setOid(VciBaseUtil.getPk());
            clo.setCreator(VciBaseUtil.getCurrentUserId());
@@ -2335,14 +2332,14 @@
        });
        try {
            platformClientUtil.getBOFactoryService().batchDeleteLinkObject(los.toArray(new LinkObject[0]));
        } catch (VCIError vciError) {
        } catch (PLException vciError) {
            throw WebUtil.getVciBaseException(vciError);
        }
        if(deleteLinkDataDTO.isDeleteFromData()){
            fromBtmDataGroups.forEach((btm,cbos)->{
                try{
                    platformClientUtil.getBOFactoryService().batchDeleteBusinessObject(cbos.stream().map(com.vci.client.bof.ClientBusinessObject::getBusinessObject).toArray(BusinessObject[] :: new),1);
                }catch (VCIError vciError) {
                }catch (PLException vciError) {
                    throw WebUtil.getVciBaseException(vciError);
                }
            });
@@ -2351,7 +2348,7 @@
            toBtmDataGroups.forEach((btm,cbos)->{
                try{
                    platformClientUtil.getBOFactoryService().batchDeleteBusinessObject(cbos.stream().map(com.vci.client.bof.ClientBusinessObject::getBusinessObject).toArray(BusinessObject[] :: new),1);
                }catch (VCIError vciError) {
                }catch (PLException vciError) {
                    throw WebUtil.getVciBaseException(vciError);
                }
            });
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/UIEngineServiceImpl.java
@@ -6,9 +6,7 @@
import com.thoughtworks.xstream.io.xml.XppDriver;
import com.vci.client.common.providers.ServiceProvider;
import com.vci.corba.common.PLException;
import com.vci.corba.common.VCIError;
import com.vci.corba.portal.data.PLTabButton;
import com.vci.corba.portal.data.PLUILayout;
import com.vci.corba.portal.data.*;
import com.vci.starter.web.annotation.log.VciUnLog;
import com.vci.starter.web.exception.VciBaseException;
import com.vci.starter.web.util.BeanUtil;
@@ -26,7 +24,6 @@
import com.vci.web.service.OsBtmServiceI;
import com.vci.web.service.UIEngineServiceI;
import com.vci.web.service.WebBoServiceI;
import com.vci.web.util.Func;
import com.vci.web.util.PlatformClientUtil;
import com.vci.web.util.WebUtil;
import com.vci.web.xmlmodel.UIComponentDefineXO;
@@ -42,11 +39,6 @@
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import com.vci.corba.portal.data.PortalVI;
import com.vci.corba.portal.data.PLTabPage;
import com.vci.corba.portal.data.PLAction;
import com.vci.corba.portal.data.PLPageDefination;
import com.vci.corba.portal.data.PLCommandParameter;
import plm.corba.portal.*;
import java.util.*;
@@ -874,7 +866,7 @@
    public List<UIContentVO> selectAllUIContent() {
        try {
            return UIContentDO2VOs(Arrays.stream(platformClientUtil.getPortalService().getAllPLPageLayoutDefinations()).collect(Collectors.toList()));
        } catch (VCIError vciError) {
        } catch (PLException vciError) {
            throw WebUtil.getVciBaseException(vciError);
        }
    }
@@ -1080,7 +1072,7 @@
    public List<UILayoutVO> selectAllUILayout() {
//        try {
//            return UILayoutDO2VOs(Arrays.stream(platformClientUtil.getPortalService().getAllPLTabPages()).collect(Collectors.toList()),true);
//        } catch (VCIError vciError) {
//        } catch (PLException vciError) {
//            throw WebUtil.getVciBaseException(vciError);
//        }
        return null;
@@ -1186,7 +1178,7 @@
    public List<UIComponentVO> selectAllUIComponent() {
//        try {
//            return uiComponentDO2VOs(Arrays.stream(platformClientUtil.getPortalService().getAllPLPageDefinations()).collect(Collectors.toList()),false);
//        } catch (VCIError vciError) {
//        } catch (PLException vciError) {
//            throw WebUtil.getVciBaseException(vciError);
//        }
        return null;
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/VciFileDownloadServiceImpl.java
@@ -1,7 +1,7 @@
package com.vci.web.service.impl;
import com.vci.corba.common.VCIError;
import com.vci.corba.volumn.method.VolumnManagement;
import com.vci.corba.common.PLException;
import com.vci.corba.volume.VolumeServicePrx;
import com.vci.file.clientutil.VciFileServerClientUtil;
import com.vci.file.enumpck.VciFileTransProtocolEnum;
import com.vci.file.pagemodel.VciFileObjectVO;
@@ -32,7 +32,8 @@
import java.util.List;
import java.util.Map;
import static com.vci.file.constant.VciFileLangCodeConstant.*;
import static com.vci.file.constant.VciFileLangCodeConstant.FILE_NOT_FOUND;
import static com.vci.file.constant.VciFileLangCodeConstant.FILE_READ_FAIL;
import static com.vci.frameworkcore.constant.FrameWorkLangCodeConstant.*;
/**
@@ -148,18 +149,16 @@
            }
        }else if(VciFileTransProtocolEnum.CORBA.getValue().equalsIgnoreCase(vciFileVolumeVO.getTransProtocol())){
            String volumeName = vciFileVolumeVO.getName();
            VolumnManagement volumnCorbaService = null;
            try {
                volumnCorbaService = platformClientUtil.getVolumeService(vciFileVolumeVO.getServiceUrl(),volumeName).getVolumnService();
            } catch (VCIError vciError) {
                throw new VciBaseException("没有获取到{}的卷服务",new String[]{volumeName},vciError);
            VolumeServicePrx volumnCorbaService = platformClientUtil.getVolumeService(volumeName);
            if(volumnCorbaService == null){
                throw new VciBaseException("没有获取到卷服务");
            }
            //平台2020版本此处修改了,卷的文件夹是由卷服务来控制
            String serverPath =  vciFileObjectVO.getFilePath();
            long fileSize = 0;
            try {
                fileSize = volumnCorbaService.getFileSize(serverPath);
            } catch (VCIError vciError) {
            } catch (PLException vciError) {
                throw new VciBaseException("没有在卷服务{}里获取到文件{}的大小",new String[]{volumeName,fileName},vciError);
            }
            try {
@@ -180,7 +179,7 @@
                throw new VciBaseException("要写入的文件没有找到",new String[]{tempFilePath},e);
            } catch (IOException e) {
                throw new VciBaseException("写入文件出错" + e.getMessage(),new String[]{tempFilePath},e);
            } catch (VCIError e){
            } catch (PLException e){
//                throw new VciBaseException("卷服务传输文件时出现了错误" + e.error_code,e.error_message,e);
            }catch (Exception e){
                throw new VciBaseException("卷服务传输文件时出现了错误" + e.getMessage(),new String[0],e);
@@ -365,17 +364,15 @@
            }
        }else if(VciFileTransProtocolEnum.CORBA.getValue().equalsIgnoreCase(vciFileVolumeVO.getTransProtocol())){
            String volumeName = vciFileVolumeVO.getName();
            VolumnManagement volumnCorbaService = null;
            try {
                volumnCorbaService = platformClientUtil.getVolumeService(vciFileVolumeVO.getServiceUrl(),volumeName).getVolumnService();
            } catch (VCIError vciError) {
                throw new VciBaseException("没有获取到{}的卷服务",new String[]{volumeName},vciError);
            VolumeServicePrx volumnCorbaService = platformClientUtil.getVolumeService(volumeName);
            if(volumnCorbaService == null){
                throw new VciBaseException("没有获取到卷服务");
            }
            String serverPath = vciFileVolumeVO.getVolumePath() + File.separator + vciFileObjectVO.getFilePath().replace(volumeName+":","");
            long fileSize = 0;
            try {
                fileSize = volumnCorbaService.getFileSize(serverPath);
            } catch (VCIError vciError) {
            } catch (PLException vciError) {
                throw new VciBaseException("没有在卷服务{}里获取到文件{}的大小",new String[]{volumeName,fileName},vciError);
            }
            try {
@@ -491,18 +488,16 @@
                }
            }else if(VciFileTransProtocolEnum.CORBA.getValue().equalsIgnoreCase(vciFileVolumeVO.getTransProtocol())){
                String volumeName = vciFileVolumeVO.getName();
                VolumnManagement volumnCorbaService = null;
                try {
                    volumnCorbaService = platformClientUtil.getVolumeService(vciFileVolumeVO.getServiceUrl(),volumeName).getVolumnService();
                } catch (VCIError vciError) {
                    throw new VciBaseException("没有获取到{}的卷服务",new String[]{volumeName},vciError);
                VolumeServicePrx volumnCorbaService = platformClientUtil.getVolumeService(volumeName);
                if(volumnCorbaService == null){
                    throw new VciBaseException("没有获取到卷服务");
                }
                //平台2020版本此处修改了,卷的文件夹是由卷服务来控制
                String serverPath =  volumeId+":" + filePath;
                long fileSize = 0;
                try {
                    fileSize = volumnCorbaService.getFileSize(serverPath);
                } catch (VCIError vciError) {
                } catch (PLException vciError) {
                    throw new VciBaseException("没有在卷服务{}里获取到文件{}的大小",new String[]{volumeName,fileName},vciError);
                }
                try {
@@ -523,7 +518,7 @@
                    throw new VciBaseException("要写入的文件没有找到",new String[]{tempFilePath},e);
                } catch (IOException e) {
                    throw new VciBaseException("写入文件出错" + e.getMessage(),new String[]{tempFilePath},e);
                } catch (VCIError e){
                } catch (PLException e){
//                    throw new VciBaseException("卷服务传输文件时出现了错误" + e.error_code,e.error_message,e);
                }catch (Exception e){
                    throw new VciBaseException("卷服务传输文件时出现了错误" + e.getMessage(),new String[0],e);
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/VciFileObjectServiceImpl.java
@@ -21,7 +21,6 @@
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/VciFileUploadServiceImpl.java
@@ -1,10 +1,6 @@
package com.vci.web.service.impl;
import com.vci.client.common.providers.ServiceProvider;
import com.vci.corba.common.VCIError;
import com.vci.corba.framework.data.PvolumeInfo;
import com.vci.corba.volume.VolumeServicePrx;
import com.vci.corba.volumn.method.VolumnManagement;
import com.vci.file.constant.VciFileDefaultValueConstant;
import com.vci.file.constant.VciFileLangCodeConstant;
import com.vci.file.dto.VciFileObjectDTO;
@@ -35,15 +31,16 @@
import com.vci.web.service.WebBoServiceI;
import com.vci.web.service.WebSecretServiceI;
import com.vci.web.util.PlatformClientUtil;
import com.vci.web.util.WebUtil;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import plm.bs.bom.clientobject.ClientBusinessObject;
import javax.annotation.Resource;
import java.io.*;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.RandomAccessFile;
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
@@ -256,10 +253,10 @@
            }
        }else if(VciFileTransProtocolEnum.CORBA.getValue().equalsIgnoreCase(vciFileVolumeDO.getTransProtocol())){
            String volumeName = vciFileVolumeDO.getName();
            VolumeServicePrx volumnCorbaService = null;
            //                volumnCorbaService = platformClientUtil.getVolumeService(vciFileVolumeDO.getServiceUrl(),volumeName).getVolumnService();
            volumnCorbaService = ServiceProvider.getVolumeService(volumeName);
//                volumnCorbaService = volumeService;
            VolumeServicePrx volumnCorbaService = platformClientUtil.getVolumeService(volumeName);
            if(volumnCorbaService == null){
                throw new VciBaseException("没有获取到卷服务");
            }
            InputStream in = null;
            if("filePathField".equalsIgnoreCase(vciFileObjectDO.getFileDocClassify())){
                vciFileObjectDO.setFilePath(volumeName + ":/" + vciFileObjectDO.getFilePath() + "." + vciFileObjectDO.getFileExtension());
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/VciFileVolumeServiceImpl.java
@@ -2,15 +2,12 @@
import com.vci.client.common.providers.ServiceProvider;
import com.vci.corba.common.PLException;
import com.vci.corba.common.VCIError;
import com.vci.corba.framework.data.PvolumeInfo;
import com.vci.file.dto.VciFileVolumeDTO;
import com.vci.file.enumpck.VciFileServiceOsTypeEnum;
import com.vci.file.enumpck.VciFileTransProtocolEnum;
import com.vci.file.pagemodel.VciFileVolumeVO;
import com.vci.frameworkcore.constant.FrameWorkLangCodeConstant;
import com.vci.frameworkcore.lcstatuspck.FrameworkDataLCStatus;
import com.vci.starter.revision.service.RevisionModelUtil;
import com.vci.starter.web.annotation.bus.VciChangeDocument;
import com.vci.starter.web.enumpck.VciChangeDocumentTypeEnum;
import com.vci.starter.web.exception.VciBaseException;
@@ -24,7 +21,6 @@
import com.vci.web.model.VciFileVolumeDO;
import com.vci.web.service.VciFileVolumeServiceI;
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;
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/WebActionServiceImpl.java
@@ -1,14 +1,14 @@
package com.vci.web.service.impl;
import com.vci.corba.common.VCIError;
import com.vci.client.portal.utility.UITools;
import com.vci.corba.common.PLException;
import com.vci.corba.portal.data.PLAction;
import com.vci.starter.web.exception.VciBaseException;
import com.vci.web.pageModel.UIActionVO;
import com.vci.web.service.WebActionServiceI;
import com.vci.web.util.WebUtil;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import plm.corba.portal.PLAction;
import plm.portal.utility.Tool;
/**
 * Action服务
@@ -29,13 +29,13 @@
    public UIActionVO getActionByOid(String oid) throws VciBaseException {
        WebUtil.alertNotNull(oid,"action的主键");
        try {
            PLAction action = Tool.getService()
            PLAction action = UITools.getService()
                    .getPLActionById(oid);
            if(action == null || StringUtils.isBlank(action.plOId)){
                throw new VciBaseException("这个action在系统中不存在");
            }
            return convertWebAction(action);
        } catch (VCIError vciError) {
        } catch (PLException vciError) {
           throw WebUtil.getVciBaseException(vciError);
        }
    }
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/WebBoServiceImpl.java
@@ -1,11 +1,11 @@
package com.vci.web.service.impl;
import com.vci.client.bof.ClientBusinessObject;
import com.vci.client.common.oq.OQTool;
import com.vci.client.common.providers.ServiceProvider;
import com.vci.common.qt.object.*;
import com.vci.common.utility.ObjectUtility;
import com.vci.corba.common.PLException;
import com.vci.corba.common.VCIError;
import com.vci.corba.omd.data.AttributeValue;
import com.vci.corba.omd.data.BusinessObject;
import com.vci.corba.omd.qtm.QTInfo;
@@ -341,11 +341,11 @@
                    if(key.indexOf("_start")>-1){
                        String attr = key.replace("_start", "");
                        thisConditionMap.put(attr, value);
                        condition = Tool.getCondition(thisConditionMap);
                        condition = OQTool.getCondition(thisConditionMap);
                        if(conditionMap.containsKey(attr + "_end")){//如果没有结束,其实也是允许的;
                            Map<String,String> endConditonMap = new HashMap<String, String>();
                            endConditonMap.put(attr, conditionMap.get(attr + "_end"));
                            condition = Tool.mergeCondition(condition, Tool.getCondition(endConditonMap), Connector.AND);
                            condition = OQTool.mergeCondition(condition, OQTool.getCondition(endConditonMap), Connector.AND);
                        }
                    }
                }else{
@@ -366,12 +366,12 @@
                    }else {
                        thisConditionMap.put(key, value);
                    }
                    condition = Tool.getCondition(thisConditionMap);
                    condition = OQTool.getCondition(thisConditionMap);
                }
                if(mergeCondition == null){
                    mergeCondition = condition;
                }else{
                    mergeCondition = Tool.mergeCondition(mergeCondition, condition, isOr? Connector.OR:Connector.AND);
                    mergeCondition = OQTool.mergeCondition(mergeCondition, condition, isOr? Connector.OR:Connector.AND);
                }
            }
        }
@@ -601,7 +601,7 @@
        conditionMap = WebUtil.getNotNullMap(conditionMap);
        Condition condition = getConditionByMap(conditionMap);
        if(qt.getCondition() !=null) {
            qt.setCondition(Tool.mergeCondition(qt.getCondition(), condition, Connector.AND));
            qt.setCondition(OQTool.mergeCondition(qt.getCondition(), condition, Connector.AND));
        }else {
            qt.setCondition(condition);
        }
@@ -620,11 +620,11 @@
            ObjectQueryService.FindBTMObjectsV3Result bos = null;
//            String invo = JSONObject.toJSONString(InvocationUtility.getInvocation());
            try{
                //bos = qtService.findBTMObjectsV3(invo,qt.getId(), Tool.qtTOXMl(qt).asXML(),count,refOpts.toArray(new BtmRefQueryOption[0]));
                bos = qtService.findBTMObjectsV3(qt.getId(), Tool.qtTOXMl(qt).asXML(), refOpts.toArray(new BtmRefQueryOption[0]));
                //bos = qtService.findBTMObjectsV3(invo,qt.getId(), OQTool.qtTOXMl(qt).asXML(),count,refOpts.toArray(new BtmRefQueryOption[0]));
                bos = qtService.findBTMObjectsV3(qt.getId(), OQTool.qtTOXMl(qt).asXML(), refOpts.toArray(new BtmRefQueryOption[0]));
            }catch (PLException e){
                //bos = qtService.findBTMObjectsV4(invo,qt.getId(), Tool.qtTOXMl(qt).asXML(),count,refOpts.toArray(new BtmRefQueryOption[0]));
                bos = qtService.findBTMObjectsV3(qt.getId(), Tool.qtTOXMl(qt).asXML(), refOpts.toArray(new BtmRefQueryOption[0]));
                //bos = qtService.findBTMObjectsV4(invo,qt.getId(), OQTool.qtTOXMl(qt).asXML(),count,refOpts.toArray(new BtmRefQueryOption[0]));
                bos = qtService.findBTMObjectsV3(qt.getId(), OQTool.qtTOXMl(qt).asXML(), refOpts.toArray(new BtmRefQueryOption[0]));
            }
            if (bos != null && bos.count > 0) {
                for (com.vci.corba.omd.data.BusinessObject bo : bos.returnValue) {
@@ -952,7 +952,7 @@
            VciBaseUtil.alertNotNull(name,"查询模板的名称");
            // QTWrapper wrapper = platformClientUtil.getQueryService().getQT(name);
            QTInfo wrapper = ServiceProvider.getOMDService().getQTDService().getQT(name);
            qt = Tool.getQTByDoc(DocumentHelper.parseText(wrapper.qtText), name);
            qt = OQTool.getQTByDoc(DocumentHelper.parseText(wrapper.qtText), name);
            //因为之前平台的Tool.replaceQTValues 没有处理 ${xxx}。, 为了忽略大小写,我们这里单独处理 weidy@2021-3-10
            //我们转换为小写
            Condition condition = qt.getCondition();
@@ -990,9 +990,9 @@
                });
            }
        }catch(PLException e){
            //logger.error(e.error_code,e);
            //throw WebUtil.getVciBaseException(e);
        } catch (DocumentException | VCIError e) {
            logger.error(e.code,e);
            throw WebUtil.getVciBaseException(e);
        } catch (DocumentException e) {
            logger.error("查询模板转换",e);
            throw new VciBaseException(this.msgCodePrefix + "qtError", new Object[]{name});
        }
@@ -1032,24 +1032,18 @@
        conditionMap = WebUtil.getNotNullMap(conditionMap);
        Condition condition = getConditionByMap(conditionMap);
        if(qt.getCondition() !=null) {
            qt.setCondition(Tool.mergeCondition(qt.getCondition(), condition, Connector.AND));
            qt.setCondition(OQTool.mergeCondition(qt.getCondition(), condition, Connector.AND));
        }else {
            qt.setCondition(condition);
        }
        int count = 0;
        long count = 0;
        try{
//            count = platformClientUtil.getQueryService().findTotalCount();
            count = Integer.parseInt(String.valueOf(ServiceProvider.getOQService().findTotalCount(qt.getId(), Tool.qtTOXMl(qt).asXML())));
            count = platformClientUtil.getQueryService().findTotalCount(qt.getId(), OQTool.qtTOXMl(qt).asXML());
        }catch (PLException e) {
            try {
//                count = platformClientUtil.getQueryService().findTotalCount(qt.getId(), Tool.qtTOXMl(qt).asXML());
                count = Integer.parseInt(String.valueOf(ServiceProvider.getOQService().findTotalCount(qt.getId(), Tool.qtTOXMl(qt).asXML())));
            }catch (PLException ee) {
//                logger.error(ee.error_code,ee);
//                throw WebUtil.getVciBaseException(ee);
            }
            logger.error(e.code,e);
            throw WebUtil.getVciBaseException(e);
        } 
        return count;
        return (int) count;
    }
    /**
Source/platformProject/vci-platform-web/src/main/java/com/vci/web/service/impl/WebBtmIOServiceImpl.java
@@ -1,9 +1,20 @@
package com.vci.web.service.impl;
import com.vci.client.omd.linktype.util.Tool;
import com.vci.client.omd.provider.BtmProvider;
import com.vci.client.omd.provider.LinkTypeProvider;
import com.vci.corba.common.PLException;
import com.vci.corba.omd.atm.AttributeDef;
import com.vci.corba.omd.btm.BTMServicePrx;
import com.vci.corba.omd.btm.BizType;
import com.vci.corba.omd.etm.EnumItem;
import com.vci.corba.omd.etm.EnumType;
import com.vci.corba.omd.lcm.Bound;
import com.vci.corba.omd.lcm.LifeCycle;
import com.vci.corba.omd.lcm.TransitionVO;
import com.vci.corba.omd.lcm.TransitionVOEvent;
import com.vci.corba.omd.ltm.LinkType;
import com.vci.corba.omd.stm.StatePool;
import com.vci.starter.poi.bo.WriteExcelData;
import com.vci.starter.poi.bo.WriteExcelOption;
import com.vci.starter.poi.util.ExcelUtil;
@@ -30,12 +41,15 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import com.vci.corba.omd.etm.EnumItem;
import plm.ddlTool.client.DDLToolClient;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
import java.util.stream.Collectors;
import static com.vci.client.omd.attribpool.ui.VTDataTypePanel.*;
/**
@@ -246,7 +260,7 @@
        List<LifeCycle> unExistLifeCycleList = new ArrayList<LifeCycle>();
        List<LifeCycle> editLifeCycleList = new ArrayList<LifeCycle>();
        String userId = WebUtil.getCurrentUserId();
        String now = VciDateUtil.getNowString(VciDateUtil.DateTimeFormat);
        long now = VciDateUtil.getTime(VciDateUtil.getNow());
        //循环分析需要添加还是修改
        for(OsLifeCycleDTO lifeCycleDTO : lifeCycleDTOList){
            String lifeCycleId = lifeCycleDTO.getId().toLowerCase().trim();
@@ -257,8 +271,8 @@
                lifeCyle.oid = "";
                lifeCyle.id = "";
                lifeCyle.creator = userId;
                lifeCyle.createTime = System.currentTimeMillis();
                lifeCyle.ts = now;
                lifeCyle.createTime = now;
                lifeCyle.ts = VciDateUtil.getNowString(VciDateUtil.DateTimeMillFormat);
                lifeCyle.name = lifeCycleDTO.getId();
            }else {
                lifeCyle = lifeCycleService.lifeCycleVO2DO( allLifeCycleLowMap.get(lifeCycleId));
@@ -268,7 +282,7 @@
            lifeCyle.description = lifeCycleDTO.getDescription() == null?"":lifeCycleDTO.getDescription();
            lifeCyle.startState = lifeCycleDTO.getStartStatus() == null?"":lifeCycleDTO.getStartStatus();
            lifeCyle.modifier = userId;
            lifeCyle.modifyTime = System.currentTimeMillis();
            lifeCyle.modifyTime = now;
            //找区域
            List<OsLifeCycleLineDTO> lineDTOList = lifeCycleDTO.getLineDTOList();
            if(CollectionUtils.isEmpty(lineDTOList)){
@@ -362,28 +376,28 @@
    private void importAttributes(Collection<OsAttributeDTO> attributeDTOList) throws VciBaseException {
        Set<String> existAttributeList = attrService.selectAllAttributeMap().keySet();
        Map<String, OsAttributeVO> allAttributeMap = attrService.selectAllAttributeMap();
        List<AttribItem> unExistAttrList = new ArrayList<AttribItem>();
        List<AttribItem> editAttrList = new ArrayList<AttribItem>();
        List<AttributeDef> unExistAttrList = new ArrayList<AttributeDef>();
        List<AttributeDef> editAttrList = new ArrayList<AttributeDef>();
        String userId = WebUtil.getCurrentUserId();
        String now = VciDateUtil.getNowString(VciDateUtil.DateTimeFormat);
        long now = VciDateUtil.getTime(VciDateUtil.getNow());
        //循环分析需要添加还是修改
        for (OsAttributeDTO attributeDTO : attributeDTOList) {
            String attrId = attributeDTO.getId().toLowerCase().trim();
            AttribItem attribItem = null;
            AttributeDef attribItem = null;
            boolean edit = false;
            if (!existAttributeList.contains(attrId)) {
                attribItem = new AttribItem();
                attribItem = new AttributeDef();
                attribItem.oid = "";
                attribItem.ts = now;
                attribItem.ts = VciDateUtil.getNowString(VciDateUtil.DateTimeMillFormat);
                attribItem.creator = userId;
                attribItem.createTime = now;
            }else {
                OsAttributeVO attributeVO = allAttributeMap.get(attrId);
                attribItem =new AttribItem();
                attribItem =new AttributeDef();
                attribItem.oid = attributeVO.getOid();
                attribItem.ts = VciDateUtil.date2Str(attributeVO.getTs(),VciDateUtil.DateTimeMillFormat);
                attribItem.creator = attributeVO.getCreator();
                attribItem.createTime = VciDateUtil.date2Str(attributeVO.getCreateTime(),VciDateUtil.DateTimeFormat);
                attribItem.createTime = VciDateUtil.getTime(attributeVO.getCreateTime());
                edit = true;
            }
            attribItem.modifier = userId;
@@ -562,16 +576,16 @@
        //查询已经存在的业务类型
        Map<String, OsBtmTypeVO> allBtmMap = btmService.selectAllBtmMap();
        Set<String> exitBtmList = allBtmMap.keySet();
        List<BtmItem> unExistBtmList = new ArrayList<BtmItem>();
        List<BtmItem> editBtmList = new ArrayList<BtmItem>();
        List<BizType> unExistBtmList = new ArrayList<BizType>();
        List<BizType> editBtmList = new ArrayList<BizType>();
        String userId = WebUtil.getCurrentUserId();
        String now = VciDateUtil.getNowString(VciDateUtil.DateTimeFormat);
        long now = VciDateUtil.getTime(VciDateUtil.getNow());
        for (OsBtmTypeDTO btmTypeDTO : btmTypeDTOList) {
            String btmId = btmTypeDTO.getId().toLowerCase().trim();
            if (!exitBtmList.contains(btmId)) {
                //老平台的内容中,实际不关心关联的数据是否真实存在,所以直接添加就行
                BtmItem btmItem = new BtmItem();
                BizType btmItem = new BizType();
                btmItem.oid = "";
                btmItem.ts = now;
                btmItem.creator = userId;
@@ -582,16 +596,16 @@
                wrapperBtmItem(btmItem,btmTypeDTO);
                unExistBtmList.add(btmItem);
            } else {
                BtmItem btmItem = new BtmItem();
                BizType btmItem = new BizType();
                OsBtmTypeVO btmTypeVO = allBtmMap.get(btmId);
                btmItem.name = btmTypeDTO.getId().toLowerCase();
                btmItem.oid = btmTypeVO.getOid();
                btmItem.creator = btmTypeVO.getCreator();
                btmItem.createTime = VciDateUtil.date2Str(btmTypeVO.getCreateTime(),VciDateUtil.DateTimeFormat);
                btmItem.createTime = VciDateUtil.getTime(btmTypeVO.getCreateTime());
                //修改
                btmItem.modifier = userId;
                btmItem.modifyTime = now;
                btmItem.ts = VciDateUtil.date2Str(btmTypeVO.getTs(),VciDateUtil.DateTimeMillFormat);
                btmItem.ts = VciDateUtil.getTime(btmTypeVO.getTs());
                wrapperBtmItem(btmItem,btmTypeDTO);
                editBtmList.add(btmItem);
            }
@@ -608,16 +622,16 @@
     * @param btmItems 业务类型的对象
     */
    @Override
    public void batchAddBtm(Collection<BtmItem> btmItems){
    public void batchAddBtm(Collection<BizType> btmItems){
        if(!CollectionUtils.isEmpty(btmItems)){
            Map<String, OsAttributeVO> attributeMap = attrService.selectAllAttributeMap();
            for(BtmItem btmItem : btmItems){
                BTMServiceOperations btmService = platformClientUtil.getBtmService();
            for(BizType btmItem : btmItems){
                try{
                    btmService.addBtmItem(btmItem);
                    BTMServicePrx btmService = platformClientUtil.getBtmService();
                    btmService.addBizType(btmItem);
                    //执行完成了需要创建表
                    //获取的时候不一定刷新了缓存,这样就获取不到信息
                    String btmTableName = BtmProvider.getInstance().getBTMTableName(btmItem.name);
                    String btmTableName = BtmProvider.getInstance().getBTTableName(btmItem.name);
                    String sql = "create Table " + btmTableName + "(" + "\n\tOID VARCHAR2(36) not null,\n\tREVISIONOID VARCHAR2(36),\n\tNAMEOID VARCHAR2(36),\n\tBtmName VARCHAR2(36),\n\tISLastR CHAR(1),\n\tISFirstR CHAR(1),\n\tISLastV CHAR(1),\n\tISFirstV CHAR(1),\n\tCreator VARCHAR2(36),\n\tCreateTime TIMESTAMP,\n\tLastModifier VARCHAR2(36),\n\tLastModifyTime TIMESTAMP,\n\tRevisionRule VARCHAR2(36),\n\tVersionRule VARCHAR2(36),\n\tRevisionSeq NUMBER,\n\tRevisionValue VARCHAR2(10),\n\tVersionSeq NUMBER,\n\tVersionValue VARCHAR2(10),\n\tLCTID VARCHAR2(36),\n\tLCStatus VARCHAR2(36),\n\tTS TIMESTAMP,\n\tID VARCHAR2(36),\n\tNAME VARCHAR2(128),\n\tDESCRIPTION VARCHAR2(255),\n\tOWNER VARCHAR2(36),\n\tCHECKINBY VARCHAR2(36),\n\tCHECKINTIME TIMESTAMP,\n\tCHECKOUTBY VARCHAR2(36),\n\tCHECKOUTTIME TIMESTAMP,\n\tCOPYFROMVERSION VARCHAR2(36),\n\t";
                    String[] apNameArray = btmItem.apNameArray;
                    if(apNameArray!=null && apNameArray.length>0){
@@ -636,7 +650,7 @@
                    sql = sql + "\n)";
                    DDLToolClient.getService().executeUpdateOracle(sql);
                    DDLToolClient.getService().executeUpdateOracle(alterSql);
                }catch (VCIError vciError){
                }catch (PLException vciError){
                    throw WebUtil.getVciBaseException(vciError);
                }
            }
@@ -648,10 +662,10 @@
     * @param btmItems 业务类型的对象
     */
    @Override
    public void batchEditBtm(Collection<BtmItem> btmItems){
    public void batchEditBtm(Collection<BizType> btmItems){
        Map<String, OsBtmTypeVO> btmTypeVOMap = btmService.selectAllBtmMap();
        if(!CollectionUtils.isEmpty(btmItems)){
            for(BtmItem btmItem : btmItems){
            for(BizType btmItem : btmItems){
                String btmId = btmItem.name;
                List<String> addAttrList = new ArrayList<String>();
                //修改这里判断不了,是靠属性整体调整的
@@ -674,8 +688,8 @@
                    }
                }
                try{
                    platformClientUtil.getBtmService().updateBtmItem(btmItem);
                }catch (VCIError vciError){
                    platformClientUtil.getBtmService().updateBizType(btmItem);
                }catch (PLException vciError){
                    throw WebUtil.getVciBaseException(vciError);
                }
                addAttrToDB(addAttrList,btmId,false);
@@ -1108,11 +1122,11 @@
     */
    private void addAttrToDB(Collection<String> addedAbList,String btmType,boolean linkType){
        if (!CollectionUtils.isEmpty(addedAbList)) {
            String tableName = linkType?LinkTypeProvider.getInstance().getLTTableName(btmType):BtmProvider.getInstance().getBTMTableName(btmType);
            String tableName = linkType? LinkTypeProvider.getInstance().getLTTableName(btmType):BtmProvider.getInstance().getBTTableName(btmType);
            String addSql = "alter table " + tableName + " add(";
            Map<String, OsAttributeVO> attributeMap = attrService.selectAllAttributeMap();
            for (String abName : addedAbList) {
                AttribItem abItem = attrService.attributeVO2DO(attributeMap.get(abName));
                AttributeDef abItem = attrService.attributeVO2DO(attributeMap.get(abName));
                addSql = addSql + Tool.getInstance().getAbSql(abItem);
            }
            addSql = VciBaseUtil.removeComma(addSql.replace("\n\t",""));
@@ -1128,7 +1142,7 @@
     */
    private void removeAttrToDB(Collection<String> removeAbList,String btmType,boolean linkType){
        if (!CollectionUtils.isEmpty(removeAbList)) {
            String tableName = linkType?LinkTypeProvider.getInstance().getLTTableName(btmType):BtmProvider.getInstance().getBTMTableName(btmType);
            String tableName = linkType?LinkTypeProvider.getInstance().getLTTableName(btmType):BtmProvider.getInstance().getBTTableName(btmType);
            String removeSql = "alter table " + tableName + " drop(";
            for (String abName : removeAbList) {
                removeSql = removeSql + abName + ",";
@@ -1148,7 +1162,7 @@
     * @param btmItem 业务类型的对象
     * @param btmTypeDTO 业务类型的数据传输对象
     */
    private void wrapperBtmItem(BtmItem btmItem ,OsBtmTypeDTO btmTypeDTO){
    private void wrapperBtmItem(BizType btmItem ,OsBtmTypeDTO btmTypeDTO){
        btmItem.label = btmTypeDTO.getName();
        btmItem.description = btmTypeDTO.getDescription() == null ? "" : btmTypeDTO.getDescription();
        btmItem.isAbstract = false;
@@ -1161,7 +1175,7 @@
        if (StringUtils.isBlank(btmTypeDTO.getRevisionRuleId())) {
            btmItem.revLevel = 0;
        } else {
            btmItem.revLevel = (StringUtils.isNotBlank(btmTypeDTO.getVersionRule()) && VciBtmType.VciBtmTypeVersionRule.NONE.getValue().equalsIgnoreCase(btmTypeDTO.getVersionRule())) ? 1 : 2;
            btmItem.revLevel = (StringUtils.isNotBlank(btmTypeDTO.getVersionRule()) && VciBtmType.VciBtmTypeVersionRule.NONE.getValue().equalsIgnoreCase(btmTypeDTO.getVersionRule())) ? (short) 1 : (short)2;
        }
        btmItem.revInput = btmTypeDTO.isInputRevisionFlag();
        btmItem.revRuleName = btmTypeDTO.getRevisionRuleId()==null?"":btmTypeDTO.getRevisionRuleId();
@@ -1194,7 +1208,7 @@
        List<LinkType> addLinkTypeList = new ArrayList<LinkType>();
        List<LinkType> editLinkTypeList = new ArrayList<LinkType>();
        String userId = WebUtil.getCurrentUserId();
        String now = VciDateUtil.getNowString(VciDateUtil.DateTimeFormat);
        long now = VciDateUtil.getTime(VciDateUtil.getNow());
        for(OsLinkTypeDTO linkTypeDTO : linkTypeDTOS){
            String linkId = linkTypeDTO.getId().toLowerCase().trim();
            LinkType linkType = null;
@@ -1210,8 +1224,8 @@
                OsLinkTypeVO linkTypeVO = allLinkMap.get(linkId);
                linkType.oid = linkTypeVO.getOid();
                linkType.creator = linkTypeVO.getCreator();
                linkType.createTime = VciDateUtil.date2Str(linkTypeVO.getCreateTime(),VciDateUtil.DateTimeFormat);
                linkType.ts = VciDateUtil.date2Str(linkTypeVO.getTs(),VciDateUtil.DateTimeMillFormat);
                linkType.createTime = VciDateUtil.getTime(linkTypeVO.getCreateTime());
                linkType.ts = VciDateUtil.getTime(linkTypeVO.getTs());
                editFlag = true;
            }
            linkType.modifier = userId;
@@ -1273,7 +1287,7 @@
                    sql = sql + "\n)";
                    DDLToolClient.getService().executeUpdateOracle(sql);
                    DDLToolClient.getService().executeUpdateOracle(LinkTypeProvider.getInstance().getAddPKSql(linkType.name));
                }catch (VCIError vciError){
                }catch (PLException vciError){
                    throw WebUtil.getVciBaseException(vciError);
                }
            }
@@ -1314,7 +1328,7 @@
                    addAttrToDB(addAttrList,linkTypeId,true);
                    removeAttrToDB(deleteAttrList,linkTypeId,true);
                }catch (VCIError vciError){
                }catch (PLException vciError){
                    throw WebUtil.getVciBaseException(vciError);
                }
            }