using Nirvana.Common;
using Nirvana.Common.ApiBase;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using YBDevice.Entity;

namespace YBDevice.NApi
{
    /// <summary>
    /// 科普资讯、轮播图、开屏广告管理
    /// </summary>
    public interface IZXService
    {
        /// <summary>
        /// 科普资讯列表
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        Task<ParamReturnData<SecInfoApiListModel>> GetInfoListAsync(ParamQuery param);

        /// <summary>
        /// 科普资讯详情
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<ResultInfo> InfoDetailAsync(Guid id);
        /// <summary>
        /// 更新点击数
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<ResultInfo> UpdateClickCountAsync(Guid id);

        /// <summary>
        /// 类型列表
        /// </summary>
        /// <param name="appid">小程序appid</param>
        /// <returns></returns>
        Task<ResultInfo> GetInfoTagListAsync(string appid);

        /// <summary>
        /// 轮播图列表
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        Task<ParamReturnData<BannerApiListModel>> GetBannerListAsync(BannerListC2SDto param);

        /// <summary>
        /// 轮播图详情
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<ResultInfo> BannerDetailAsync(int id);
    }
}
