using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Nirvana.Common; using Nirvana.Common.ApiBase; using System; using System.Threading.Tasks; using YBDevice.Entity; namespace YBDevice.NApi.Controllers { /// /// 广告管理 /// [Route("api/[controller]/[action]")] [ApiController] public class AdController : ControllerBase { private readonly IZXService _zxService; private readonly IHttpContextAccessor _httpContextAccessor; public AdController(IZXService zXService, IHttpContextAccessor httpContextAccessor) { _zxService = zXService; _httpContextAccessor = httpContextAccessor; } /// /// 科普资讯列表 /// /// /// [HttpPost] public async Task GetInfoListAsync([FromBody] ParamQuery param) { var token = _httpContextAccessor.HttpContext.Request.Headers["token"].ToString(); var ip = _httpContextAccessor.HttpContext.Connection.RemoteIpAddress.ToString(); await BaseService.DecodeTokenAsync(token, ip); var list = await _zxService.GetInfoListAsync(param); return new ResultInfo(ResultState.SUCCESS, "success", list); } /// /// 科普资讯详情 /// /// /// [HttpGet] public async Task InfoDetailAsync(Guid id) { var data = await _zxService.InfoDetailAsync(id); return data; } /// /// 更新点击数 /// /// /// [HttpGet] public async Task UpdateClickCountAsync(Guid id) { return await _zxService.UpdateClickCountAsync(id); } /// /// 科普资讯标签列表 /// /// [HttpGet] public async Task GetInfoTagListAsync(string appid="") { var data = await _zxService.GetInfoTagListAsync(appid); return data; } /// /// 轮播图列表 /// /// /// [HttpPost] public async Task GetBannerListAsync([FromBody] BannerListC2SDto param) { //var token = _httpContextAccessor.HttpContext.Request.Headers["token"].ToString(); //var ip = _httpContextAccessor.HttpContext.Connection.RemoteIpAddress.ToString(); //await BaseService.DecodeTokenAsync(token, ip); var list = await _zxService.GetBannerListAsync(param); return new ResultInfo(ResultState.SUCCESS, "success", list); } /// /// 轮播图详情 /// /// /// [HttpGet] public async Task BannerDetailAsync(int id) { var data = await _zxService.BannerDetailAsync(id); return data; } } }