using Edge.Core.Domain.FccStationInfo.Input;
using Edge.Core.Domain.FccStationInfo.Output;

namespace FccLite.Web.Services.FccStaionInfo
{
    public interface IStationService
    {
        /// <summary>
        /// 新增/修改站点基本信息
        /// </summary>
        /// <param name="stationInfoDTO">新增/修改内容</param>
        /// <returns>保存结果</returns>
        Task<StationSetOutput> UploadBaseInfo(StationInfoInput stationInfoDTO);

        /// <summary>
        /// 分页查询
        /// </summary>
        /// <param name="page">页码</param>
        /// <param name="size">每页查询条数</param>
        /// <param name="id">过滤条件——id</param>
        /// <param name="name">过滤条件——站名</param>
        /// <param name="longitude">过滤条件——经度</param>
        /// <param name="latitude">过滤条件——纬度</param>
        /// <returns></returns>
        Task<StationInfoOutput> GetBaseInfo(int page,int size, long? id, string? name, decimal? longitude, decimal? latitude);

        /// <summary>
        /// 删除站点信息
        /// </summary>
        /// <param name="id">站点id</param>
        /// <returns></returns>
        Task<StationSetOutput> DeleteBaseInfo(long id);

        /// <summary>
        /// 获取订单过滤信息
        /// </summary>
        /// <returns></returns>
        Task<OrderFilterOutput> GetOrderFilter();
    }
}
