dangsn
2024-12-03 d0ae279ff3b83358d1c07f4481a041c4ad335026
Source/plt-web/plt-web-parent/plt-web-permission/src/main/java/com/vci/web/service/impl/WebProcessCommandServiceImpl.java
ÎļþÃû´Ó Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/WebProcessCommandServiceImpl.java ÐÞ¸Ä
@@ -1,5 +1,7 @@
package com.vci.web.service.impl;
import com.vci.bo.FlowNoticeInfo;
import com.vci.constant.WFVariablesKeyConstant;
import com.vci.corba.common.PLException;
import com.vci.corba.common.data.UserEntityInfo;
import com.vci.corba.omd.data.BusinessObject;
@@ -7,6 +9,7 @@
import com.vci.corba.workflow.data.FlowInstanceInfo;
import com.vci.corba.workflow.data.MapTransfersInfo;
import com.vci.corba.workflow.data.TasksAssignedInfo;
import com.vci.dto.ProcessStartConfigDTO;
import com.vci.dto.ProcessTemplateVO;
import com.vci.dto.VciFileObjectDTO;
import com.vci.omd.utils.ObjectTool;
@@ -14,23 +17,19 @@
import com.vci.pagemodel.ProcessOutcomeVO;
import com.vci.pagemodel.ProcessTaskVO;
import com.vci.pagemodel.ProcessUserVO;
import com.vci.starter.web.annotation.FlowNotifyAfter;
import com.vci.starter.web.annotation.FlowNotifyBefore;
import com.vci.starter.web.annotation.FlowNotifyWeb;
import com.vci.starter.web.constant.QueryOptionConstant;
import com.vci.starter.web.enumpck.DataSecretEnum;
import com.vci.starter.web.exception.VciBaseException;
import com.vci.starter.web.pagemodel.DataGrid;
import com.vci.starter.web.pagemodel.SessionInfo;
import com.vci.starter.web.util.BusAnnotationUtil;
import com.vci.starter.web.util.LangBaseUtil;
import com.vci.starter.web.util.VciDateUtil;
import com.vci.web.annotation.FlowNotifyAfter;
import com.vci.web.annotation.FlowNotifyBefore;
import com.vci.web.annotation.FlowNotifyWeb;
import com.vci.bo.FlowNoticeInfo;
import com.vci.constant.WFVariablesKeyConstant;
import com.vci.web.dao.WebProcessDaoI;
import com.vci.dto.ProcessStartConfigDTO;
import com.vci.web.properties.WebProperties;
import com.vci.web.service.*;
import com.vci.web.util.BusAnnotationUtil;
import com.vci.web.util.PlatformClientUtil;
import com.vci.web.util.WebUtil;
import org.apache.commons.lang3.StringUtils;
@@ -69,11 +68,7 @@
    private WebProcessDaoI processDao;
    @Autowired
    private OsLifeCycleServiceI lifeCycleService;
    @Autowired
    private WebProperties webProperties;
    private WebLifeCycleServiceI lifeCycleService;
    /**
     * æ–‡ä»¶ä¸Šä¼ æœåŠ¡
@@ -261,7 +256,11 @@
            throw WebUtil.getVciBaseException(e);
        }
        if (StringUtils.isNotBlank(config.getStartStatus())) {
            lifeCycleService.transCboStatus(allCbo, config.getStartStatus());
            try {
                lifeCycleService.transCboStatus(allCbo, config.getStartStatus());
            } catch (Exception e) {
                throw new VciBaseException("启动流程时,批量跃迁生命周期状态失败!", new Object[]{}, e);
            }
        }
        callAfter(processInstanceId,null,null,currentTime);
    }
@@ -634,10 +633,19 @@
        }
        List<Map> mapList = boService.cbos2Map(workItemCbos);
        callBefore(mapList,"suspend",note,currentTime);
        lifeCycleService.transCboStatus(needUpdateCbos, "Suspended");
        try {
            lifeCycleService.transCboStatus(needUpdateCbos, "Suspended");
        } catch (Exception e) {
            throw new VciBaseException("挂起流程时,批量跃迁生命周期状态失败!", new Object[]{}, e);
        }
        callAfter(null,null,mapList,currentTime);
    }
    /**
     * æ¢å¤æµç¨‹
     * @param executionId æµç¨‹ä¸»é”®
     * @throws VciBaseException
     */
    @Override
    public void resumeProcess(String executionId) throws VciBaseException {
        WebUtil.alertNotNull(executionId, "流程执行实例的主键");
@@ -674,7 +682,11 @@
        }
        callBefore(null,"resume","",currentTime);
        lifeCycleService.transCboStatus(needUpdateCbos, "Executing");
        try {
            lifeCycleService.transCboStatus(needUpdateCbos, "Executing");
        } catch (Exception e) {
            throw new VciBaseException("恢复流程时,批量跃迁生命周期状态失败!", new Object[]{}, e);
        }
        callAfter(null,boService.cbos2Map(workItemCbos),null,currentTime);
    }