package net.northking.cctp.se.plan.servcie;

import net.northking.cctp.se.plan.bean.EnginePlanInfo;
import net.northking.cctp.se.plan.bean.EnginePlanQuery;

import java.util.List;

public interface EnginePlanInfoService {
    /**
     * 委托计划
     */
    Integer entrustEnginPlan(EnginePlanQuery planParam);

    /**
     * 移除计划批次
     */
    Integer removeEnginePlan(String batchId);

    /**
     * 根据类型移除计划批次
     */
    void removeEnginePlanByType(String batchId,String type);

    /**
     * 根据设备id获取计划批次信息
     */
    List<EnginePlanInfo> queryInfoByDeviceId(String deviceId,String type);

    /**
     * 获取所有设备id
     */
    List<String> queryAllDeviceId(String type);

    /**
     * 获取所有计划批次信息
     */
    List<EnginePlanInfo> queryAllPlanInfo();
    
    /**
     * 根据id删除计划批次信息
     */
    void deletePlanInfoById(String id);

    /**
     * 上传未完成的执行结果文件
     */
    void uploadFinishedFile();

}
