package com.cmvr.test.flow.runtime.engine;

import com.cmvr.test.model.vo.TeTaskExecuteNormalVO;
import com.cmvr.test.model.vo.TeTaskExecuteProjectVO;
import com.cmvr.test.model.vo.TeTaskExecuteTrailVO;

/**
 * 任务运行服务接口，定义任务调度运行相关的操作。
 * 可用于统一调度、试运行、终止、暂停、状态查询等行为。
 */
public interface FlowTaskRuntimeService {

    /**
     * 执行正式任务（NORMAL 模式）
     *
     * @param taskExecuteNormalVO 任务执行请求对象（包含终端ID、任务ID等）
     * @return 返回任务实例ID（instId）
     */
    String executeTask(TeTaskExecuteNormalVO taskExecuteNormalVO);


    /**
     * 执行试运行任务（TRIAL 模式）
     *
     * @param taskExecuteTrailVO 试运行任务请求对象（包含检测项ID、流程图等）
     * @return 返回任务实例ID（instId）
     */
    String executeTrialTask(TeTaskExecuteTrailVO taskExecuteTrailVO);

    /**
     * 执行（语音交互-项目）任务
     * 将方案注册成流程，并进行编排，然后串行执行
     */
    String executeProjectTask(TeTaskExecuteProjectVO taskExecuteProjectVO);
}
