namespace SafeCampus.Application.Services;

public interface IApiBaseInterface<T, TList, in TS> where TS : BasePageInput where T : class where TList : class
{
    /// <summary>
    /// 添加
    /// </summary>
    /// <param name="vm"></param>
    /// <returns></returns>
    public Task<bool> Add(T vm);
    /// <summary>
    /// 删除
    /// </summary>
    /// <param name="Id"></param>
    /// <returns></returns>
    public Task<bool> Delete(long Id);
    /// <summary>
    /// 修改
    /// </summary>
    /// <param name="vm"></param>
    /// <returns></returns>
    public Task<bool> Update(T vm);
    /// <summary>
    /// 根据id获取信息
    /// </summary>
    /// <param name="Id"></param>
    /// <returns></returns>
    public Task<T> GetInfo(long Id);
    /// <summary>
    /// 获取列表
    /// </summary>
    /// <param name="search"></param>
    /// <returns></returns>
    public Task<SqlSugarPagedList<TList>> GetList(TS search);
   
}