using Microsoft.AspNetCore.Mvc; using ZR.Model.Public; using ZR.Model.Public.Dto; using ZR.Service.Public.IPublicService; //创建时间:2024-05-11 namespace ZR.Admin.WebApi.Controllers.Public { /// /// 广告管理 /// [Route("public/BannerConfig")] public class BannerConfigController : BaseController { /// /// 广告管理接口 /// private readonly IBannerConfigService _BannerConfigService; public BannerConfigController(IBannerConfigService BannerConfigService) { _BannerConfigService = BannerConfigService; } /// /// 查询广告管理列表 /// /// /// [HttpGet("list")] [ActionPermissionFilter(Permission = "bannerconfig:list")] public IActionResult QueryBannerConfig([FromQuery] BannerConfigQueryDto parm) { var response = _BannerConfigService.GetList(parm); return SUCCESS(response); } /// /// 查询广告管理详情 /// /// /// [HttpGet("{Id}")] [ActionPermissionFilter(Permission = "bannerconfig:query")] public IActionResult GetBannerConfig(int Id) { var response = _BannerConfigService.GetInfo(Id); var info = response.Adapt(); return SUCCESS(info); } /// /// 添加广告管理 /// /// [HttpPost] [ActionPermissionFilter(Permission = "bannerconfig:add")] [Log(Title = "广告管理", BusinessType = BusinessType.INSERT)] public IActionResult AddBannerConfig([FromBody] BannerConfigDto parm) { var modal = parm.Adapt().ToCreate(HttpContext); var response = _BannerConfigService.AddBannerConfig(modal); return SUCCESS(response); } /// /// 更新广告管理 /// /// [HttpPut] [ActionPermissionFilter(Permission = "bannerconfig:edit")] [Log(Title = "广告管理", BusinessType = BusinessType.UPDATE)] public IActionResult UpdateBannerConfig([FromBody] BannerConfigDto parm) { var modal = parm.Adapt(); var response = _BannerConfigService.UpdateBannerConfig(modal); return ToResponse(response); } /// /// 删除广告管理 /// /// [HttpDelete("delete/{ids}")] [ActionPermissionFilter(Permission = "bannerconfig:delete")] [Log(Title = "广告管理", BusinessType = BusinessType.DELETE)] public IActionResult DeleteBannerConfig([FromRoute] string ids) { var idArr = Tools.SplitAndConvert(ids); return ToResponse(_BannerConfigService.Delete(idArr, "删除广告管理")); } /// /// 导出广告管理 /// /// [Log(Title = "广告管理", BusinessType = BusinessType.EXPORT, IsSaveResponseData = false)] [HttpGet("export")] [ActionPermissionFilter(Permission = "bannerconfig:export")] public IActionResult Export([FromQuery] BannerConfigQueryDto parm) { parm.PageNum = 1; parm.PageSize = 100000; var list = _BannerConfigService.ExportList(parm).Result; if (list == null || list.Count <= 0) { return ToResponse(ResultCode.FAIL, "没有要导出的数据"); } var result = ExportExcelMini(list, "广告管理", "广告管理"); return ExportExcel(result.Item2, result.Item1); } /// /// 保存排序 /// /// 主键 /// 排序值 /// [ActionPermissionFilter(Permission = "bannerconfig:edit")] [HttpGet("ChangeSort")] [Log(Title = "保存排序", BusinessType = BusinessType.UPDATE)] public IActionResult ChangeSort(int id = 0, int value = 0) { if (id <= 0) { return ToResponse(ApiResult.Error(101, "请求参数错误")); } var response = _BannerConfigService.Update(w => w.Id == id, it => new BannerConfig() { SortId = value, }); return ToResponse(response); } /// /// 查询广告管理列表 /// /// /// [HttpGet("bannerList")] [AllowAnonymous] public IActionResult QueryBannerList([FromQuery] BannerConfigQueryDto parm) { var response = _BannerConfigService.GetBannerList(parm); return SUCCESS(new { list = response }); } } }