package com.yeejoin.amos.boot.module.ugp.api.service;

import com.yeejoin.amos.boot.module.ugp.api.dto.OverProjectDto;
import com.yeejoin.amos.boot.module.ugp.api.entity.Project;

public interface IProjectInitiationService {
    /**
     * 流程启动
     * @return 返回instanceId ，加入项目信息表中
     * @throws Exception
     */
    void start(Project project);

    /**
     * 执行流程节点，并记录日志
     */
    void execute(String instanceId, Object object, String condition,String option);

    /**
     * 竣工结项流程启动
     * @param overProjectDto 结项相关信息
     */
    void overProjectFlowStart(OverProjectDto overProjectDto);

    /**
     * 竣工结项流程执行
     * @param overProjectDto 结项相关信息
     */
    void overProjectFlowExecute(OverProjectDto overProjectDto);
}
