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;
}
}
}