package com.cmvr.test.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.cmvr.test.model.domain.TeTaskOrchestration;
import com.cmvr.test.model.dto.TeQueryTaskDetailDTO;
import com.cmvr.test.model.vo.TeQueryTaskOrchestraItemVO;
import com.cmvr.test.model.vo.TeTaskOrchestraVO;

import java.util.List;

/**
 * 任务编排Service接口
 *
 * @author cmvr-iot
 */
public interface ITeTaskOrchestrationService extends IService<TeTaskOrchestration> {

    /**
     * 根据任务ID查询任务编排
     *
     * @param taskId 任务ID
     * @return 任务编排
     */
    List<TeQueryTaskOrchestraItemVO> queryByTaskId(String taskId);

    /**
     * 新增任务编排
     *
     * @param taskOrchestraVO 任务编排
     * @return 结果
     */
    boolean insertTeTaskOrchestration(TeTaskOrchestraVO taskOrchestraVO);

    /**
     * 根据任务ID 删除编排信息
     *
     * @param id 任务id
     */
    void deleteByTaskId(String id);

    /**
     * 根据任务ID数组 删除编排信息
     *
     * @param idArr 任务id数组
     */
    void deleteByTaskIds(String[] idArr);

    /**
     * 查询任务详情
     */
    List<TeQueryTaskDetailDTO> queryTaskDetail(String taskId);

    /**
     * 构建试运行任务
     */
    String buildTrialTask(String itemId);
}
