using SlnMesnac.Model.domain;
using SlnMesnac.Model.Enum;
using SlnMesnac.Repository.service.@base;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;

namespace SlnMesnac.Repository.service
{
    public interface IAGVSettingService : IBaseService<AGVSetting>
    {
        /// <summary>
        /// 查询所有AGV状态
        /// </summary>
        /// <returns></returns>
        List<AGVSetting> GetAllAgvSetting();

        /// <summary>
        /// 根据AgvGuid获取单条AGV设置
        /// </summary>
        /// <returns></returns>
        AGVSetting GetAgvSettingByAgvGuid(string guid);

        /// <summary>
        /// 根据AGVID获取AGV类型
        /// </summary>  
        /// <param name="id"></param>
        /// <returns></returns>
        string GetAgvTypeByAGVGuid(string guid);

        /// <summary>
        /// 插入AGV设置
        /// </summary>
        /// <param name="agvSetting"></param>
        /// <returns></returns>
        bool InsertAgvSetting(AGVSetting agvSetting);

        /// <summary>
        /// 根据ID删除AGV设置
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        bool DeleteAgvSettingByID(int id);
    }
}