From b965bdfc974d777a94d601420fe56d5ef26125d5 Mon Sep 17 00:00:00 2001 From: "AERWEN\\26795" <123456789a> Date: Wed, 25 Oct 2023 17:29:30 +0800 Subject: [PATCH] =?UTF-8?q?feat=20=E6=B7=BB=E5=8A=A0=E6=90=9C=E7=B4=A2?= =?UTF-8?q?=E6=8E=A8=E8=8D=90=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SearchRecommends/SearchRecommendApiDto.cs | 33 +++++++ .../SearchRecommends/SearchRecommendDto.cs | 51 ++++++++++ .../SearchRecommends/SearchRecommend.cs | 57 +++++++++++ .../SearchRecommends/SearchRecommendApiVo.cs | 37 +++++++ .../SearchRecommends/SearchRecommendVo.cs | 43 ++++++++ .../SearchRecommendRepository.cs | 20 ++++ .../SearchRecommendServiceApi.cs | 89 +++++++++++++++++ .../ISearchRecommendServiceApi.cs | 36 +++++++ .../SearchRecommendService.cs | 92 +++++++++++++++++ .../ISearchRecommendService.cs | 41 ++++++++ .../SearchRecommendApiController.cs | 81 +++++++++++++++ .../SearchRecommendController.cs | 98 +++++++++++++++++++ 12 files changed, 678 insertions(+) create mode 100644 ARW.Model/Dto/Api/Advertisement/SearchRecommends/SearchRecommendApiDto.cs create mode 100644 ARW.Model/Dto/Business/Advertisement/SearchRecommends/SearchRecommendDto.cs create mode 100644 ARW.Model/Models/Business/Advertisement/SearchRecommends/SearchRecommend.cs create mode 100644 ARW.Model/Vo/Api/Advertisement/SearchRecommends/SearchRecommendApiVo.cs create mode 100644 ARW.Model/Vo/Business/Advertisement/SearchRecommends/SearchRecommendVo.cs create mode 100644 ARW.Repository/Business/Advertisement/SearchRecommends/SearchRecommendRepository.cs create mode 100644 ARW.Service/Api/BusinessService/Advertisement/SearchRecommends/SearchRecommendServiceApi.cs create mode 100644 ARW.Service/Api/IBusinessService/Advertisement/SearchRecommends/ISearchRecommendServiceApi.cs create mode 100644 ARW.Service/Business/BusinessService/Advertisement/SearchRecommends/SearchRecommendService.cs create mode 100644 ARW.Service/Business/IBusinessService/Advertisement/SearchRecommends/ISearchRecommendService.cs create mode 100644 ARW.WebApi/Controllers/Api/Advertisement/SearchRecommends/SearchRecommendApiController.cs create mode 100644 ARW.WebApi/Controllers/Business/Advertisement/SearchRecommends/SearchRecommendController.cs diff --git a/ARW.Model/Dto/Api/Advertisement/SearchRecommends/SearchRecommendApiDto.cs b/ARW.Model/Dto/Api/Advertisement/SearchRecommends/SearchRecommendApiDto.cs new file mode 100644 index 0000000..e627d59 --- /dev/null +++ b/ARW.Model/Dto/Api/Advertisement/SearchRecommends/SearchRecommendApiDto.cs @@ -0,0 +1,33 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using ARW.Model.Models.Business.Advertisement.SearchRecommends; + +namespace ARW.Model.Dto.Api.Advertisement.SearchRecommends +{ + + /// + /// 搜索推荐查询对象Api + /// + /// @author lwh + /// @date 2023-10-25 + /// + public class SearchRecommendQueryDtoApi : PagerInfo + { + public string SearchRecommendTitle { get; set; } + } + + + /// + /// 搜索推荐详情输入对象Api + /// + /// @author lwh + /// @date 2023-10-25 + /// + public class SearchRecommendDtoApi + { + [Required(ErrorMessage = "SearchRecommendGuid不能为空")] + public long SearchRecommendGuid { get; set; } + } + +} diff --git a/ARW.Model/Dto/Business/Advertisement/SearchRecommends/SearchRecommendDto.cs b/ARW.Model/Dto/Business/Advertisement/SearchRecommends/SearchRecommendDto.cs new file mode 100644 index 0000000..2ace9d4 --- /dev/null +++ b/ARW.Model/Dto/Business/Advertisement/SearchRecommends/SearchRecommendDto.cs @@ -0,0 +1,51 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using ARW.Model.Models.Business.Advertisement.SearchRecommends; + +namespace ARW.Model.Dto.Business.Advertisement.SearchRecommends +{ + /// + /// 搜索推荐输入对象 + /// + /// @author lwh + /// @date 2023-10-25 + /// + public class SearchRecommendDto + { + + public int SearchRecommendId { get; set; } + + public long SearchRecommendGuid { get; set; } + + [Required(ErrorMessage = "搜索推荐标题不能为空")] + public string SearchRecommendTitle { get; set; } + + [Required(ErrorMessage = "排序不能为空")] + public int SearchRecommendSort { get; set; } + + + + + + } + + + /// + /// 搜索推荐查询对象 + /// + /// @author lwh + /// @date 2023-10-25 + /// + public class SearchRecommendQueryDto : PagerInfo + { + + public string SearchRecommendTitle { get; set; } + + public string ids { get; set; } + } + + + + +} diff --git a/ARW.Model/Models/Business/Advertisement/SearchRecommends/SearchRecommend.cs b/ARW.Model/Models/Business/Advertisement/SearchRecommends/SearchRecommend.cs new file mode 100644 index 0000000..8dcdbdf --- /dev/null +++ b/ARW.Model/Models/Business/Advertisement/SearchRecommends/SearchRecommend.cs @@ -0,0 +1,57 @@ +using System; +using System.Collections.Generic; +using SqlSugar; +using OfficeOpenXml.Attributes; +using Newtonsoft.Json; + +namespace ARW.Model.Models.Business.Advertisement.SearchRecommends +{ + /// + /// 搜索推荐,数据实体对象 + /// + /// @author lwh + /// @date 2023-10-25 + /// + [SugarTable("tb_search_recommend")] + public class SearchRecommend : BusinessBase + { + + /// + /// 描述 : + /// 空值 : false + /// + [SugarColumn(IsPrimaryKey = true, IsIdentity = true, ColumnName = "search_recommend_id")] + public int SearchRecommendId { get; set; } + + + /// + /// 描述 : + /// 空值 : false + /// + [JsonConverter(typeof(ValueToStringConverter))] + [SugarColumn(IsPrimaryKey = true, IsIdentity = false, ColumnName = "search_recommend_guid")] + public long SearchRecommendGuid { get; set; } + + + /// + /// 描述 :搜索推荐标题 + /// 空值 : false + /// + [SugarColumn(ColumnName = "search_recommend_title")] + public string SearchRecommendTitle { get; set; } + + + /// + /// 描述 :排序 + /// 空值 : false + /// + [SugarColumn(ColumnName = "search_recommend_sort")] + public int SearchRecommendSort { get; set; } + + + + + + + } +} \ No newline at end of file diff --git a/ARW.Model/Vo/Api/Advertisement/SearchRecommends/SearchRecommendApiVo.cs b/ARW.Model/Vo/Api/Advertisement/SearchRecommends/SearchRecommendApiVo.cs new file mode 100644 index 0000000..c5bdeb1 --- /dev/null +++ b/ARW.Model/Vo/Api/Advertisement/SearchRecommends/SearchRecommendApiVo.cs @@ -0,0 +1,37 @@ +using Newtonsoft.Json; +using OfficeOpenXml.Attributes; +using SqlSugar; +using System; + +namespace ARW.Model.Vo.Api.Advertisement.SearchRecommends +{ + /// + /// 搜索推荐展示对象Api + /// + /// @author lwh + /// @date 2023-10-25 + /// + public class SearchRecommendVoApi + { + + /// + /// 描述 :搜索推荐标题 + /// + public string Title { get; set; } + } + + + /// + /// 搜索推荐详情展示对象Api + /// + public class SearchRecommendApiDetailsVo + { + public int SearchRecommendId { get; set; } + [JsonConverter(typeof(ValueToStringConverter))] + public long SearchRecommendGuid { get; set; } + public string SearchRecommendTitle { get; set; } + public int SearchRecommendSort { get; set; } + + } + +} diff --git a/ARW.Model/Vo/Business/Advertisement/SearchRecommends/SearchRecommendVo.cs b/ARW.Model/Vo/Business/Advertisement/SearchRecommends/SearchRecommendVo.cs new file mode 100644 index 0000000..48cffa5 --- /dev/null +++ b/ARW.Model/Vo/Business/Advertisement/SearchRecommends/SearchRecommendVo.cs @@ -0,0 +1,43 @@ +using Newtonsoft.Json; +using OfficeOpenXml.Attributes; +using SqlSugar; +using System; + +namespace ARW.Model.Vo.Business.Advertisement.SearchRecommends +{ + /// + /// 搜索推荐展示对象 + /// + /// @author lwh + /// @date 2023-10-25 + /// + public class SearchRecommendVo + { + + + /// + /// 描述 : + /// + public int SearchRecommendId { get; set; } + + + /// + /// 描述 : + /// + [JsonConverter(typeof(ValueToStringConverter))] + public long SearchRecommendGuid { get; set; } + + + /// + /// 描述 :搜索推荐标题 + /// + public string SearchRecommendTitle { get; set; } + + + /// + /// 描述 :排序 + /// + public int SearchRecommendSort { get; set; } + + } +} diff --git a/ARW.Repository/Business/Advertisement/SearchRecommends/SearchRecommendRepository.cs b/ARW.Repository/Business/Advertisement/SearchRecommends/SearchRecommendRepository.cs new file mode 100644 index 0000000..16bca2d --- /dev/null +++ b/ARW.Repository/Business/Advertisement/SearchRecommends/SearchRecommendRepository.cs @@ -0,0 +1,20 @@ +using System; +using Infrastructure.Attribute; +using ARW.Repository.System; +using ARW.Model.Models.Business.Advertisement.SearchRecommends; + +namespace ARW.Repository.Business.Advertisement.SearchRecommends +{ + /// + /// 搜索推荐仓储 + /// + /// @author lwh + /// @date 2023-10-25 + /// + [AppService(ServiceLifetime = LifeTime.Transient)] + public class SearchRecommendRepository : BaseRepository + { + #region 业务逻辑代码 + #endregion + } +} \ No newline at end of file diff --git a/ARW.Service/Api/BusinessService/Advertisement/SearchRecommends/SearchRecommendServiceApi.cs b/ARW.Service/Api/BusinessService/Advertisement/SearchRecommends/SearchRecommendServiceApi.cs new file mode 100644 index 0000000..c787450 --- /dev/null +++ b/ARW.Service/Api/BusinessService/Advertisement/SearchRecommends/SearchRecommendServiceApi.cs @@ -0,0 +1,89 @@ +using Infrastructure.Attribute; +using Microsoft.AspNetCore.Http; +using SqlSugar; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using ARW.Model; +using ARW.Repository; +using ARW.Repository.Business.Advertisement.SearchRecommends; +using ARW.Service.Api.IBusinessService.Advertisement.SearchRecommends; +using ARW.Model.Dto.Api.Advertisement.SearchRecommends; +using ARW.Model.Models.Business.Advertisement.SearchRecommends; +using ARW.Model.Vo.Api.Advertisement.SearchRecommends; + +namespace ARW.Service.Api.BusinessService.Advertisement.SearchRecommends +{ + /// + /// 搜索推荐接口实现类Api + /// + /// @author lwh + /// @date 2023-10-25 + /// + [AppService(ServiceType = typeof(ISearchRecommendServiceApi), ServiceLifetime = LifeTime.Transient)] + public class SearchRecommendServiceImplApi : BaseService, ISearchRecommendServiceApi + { + private readonly SearchRecommendRepository _SearchRecommendRepository; + + public SearchRecommendServiceImplApi(SearchRecommendRepository SearchRecommendRepository) + { + this._SearchRecommendRepository = SearchRecommendRepository; + } + + #region Api接口代码 + + + /// + /// 查询搜索推荐列表(Api) + /// + /// + /// + public async Task> GetSearchRecommendListApi(SearchRecommendQueryDtoApi parm) + { + //开始拼装查询条件d + var predicate = Expressionable.Create(); + + predicate = predicate.AndIF(!string.IsNullOrEmpty(parm.SearchRecommendTitle), s => s.SearchRecommendTitle.Contains(parm.SearchRecommendTitle)); + var query = _SearchRecommendRepository + .Queryable() + .Where(predicate.ToExpression()) + .OrderBy(s => s.SearchRecommendSort, OrderByType.Asc) + .Select(s => new SearchRecommendVoApi + { + Title = s.SearchRecommendTitle, + }); + + + return await query.ToListAsync(); + } + + /// + /// 查询搜索推荐详情(Api) + /// + /// + /// + public async Task GetSearchRecommendDetails(SearchRecommendDtoApi parm) + { + + var query = _SearchRecommendRepository + .Queryable() + .Where(s => s.SearchRecommendGuid == parm.SearchRecommendGuid) + .Select(s => new SearchRecommendApiDetailsVo + { + SearchRecommendId = s.SearchRecommendId, + SearchRecommendGuid = s.SearchRecommendGuid, + SearchRecommendTitle = s.SearchRecommendTitle, + SearchRecommendSort = s.SearchRecommendSort, + }).Take(1); + + + return await query.ToJsonAsync(); + } + + + #endregion + + } +} diff --git a/ARW.Service/Api/IBusinessService/Advertisement/SearchRecommends/ISearchRecommendServiceApi.cs b/ARW.Service/Api/IBusinessService/Advertisement/SearchRecommends/ISearchRecommendServiceApi.cs new file mode 100644 index 0000000..0b9c381 --- /dev/null +++ b/ARW.Service/Api/IBusinessService/Advertisement/SearchRecommends/ISearchRecommendServiceApi.cs @@ -0,0 +1,36 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using ARW.Model; +using ARW.Model.Dto.Api.Advertisement.SearchRecommends; +using ARW.Model.Models.Business.Advertisement.SearchRecommends; +using ARW.Model.Vo.Api.Advertisement.SearchRecommends; + +namespace ARW.Service.Api.IBusinessService.Advertisement.SearchRecommends +{ + /// + /// 搜索推荐接口类Api + /// + /// @author lwh + /// @date 2023-10-25 + /// + public interface ISearchRecommendServiceApi : IBaseService + { + /// + /// 获取搜索推荐列表(Api) + /// + /// + /// + Task> GetSearchRecommendListApi(SearchRecommendQueryDtoApi parm); + + /// + /// 获取搜索推荐详情(Api) + /// + /// + /// + Task GetSearchRecommendDetails(SearchRecommendDtoApi parm); + + } +} diff --git a/ARW.Service/Business/BusinessService/Advertisement/SearchRecommends/SearchRecommendService.cs b/ARW.Service/Business/BusinessService/Advertisement/SearchRecommends/SearchRecommendService.cs new file mode 100644 index 0000000..c32dac7 --- /dev/null +++ b/ARW.Service/Business/BusinessService/Advertisement/SearchRecommends/SearchRecommendService.cs @@ -0,0 +1,92 @@ +using Infrastructure.Attribute; +using Microsoft.AspNetCore.Http; +using SqlSugar; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Infrastructure; +using ARW.Model; +using ARW.Repository; +using ARW.Repository.Business.Advertisement.SearchRecommends; +using ARW.Service.Business.IBusinessService.Advertisement.SearchRecommends; +using ARW.Model.Dto.Business.Advertisement.SearchRecommends; +using ARW.Model.Models.Business.Advertisement.SearchRecommends; +using ARW.Model.Vo.Business.Advertisement.SearchRecommends; + +namespace ARW.Service.Business.BusinessService.Advertisement.SearchRecommends +{ + /// + /// 搜索推荐接口实现类 + /// + /// @author lwh + /// @date 2023-10-25 + /// + [AppService(ServiceType = typeof(ISearchRecommendService), ServiceLifetime = LifeTime.Transient)] + public class SearchRecommendServiceImpl : BaseService, ISearchRecommendService + { + private readonly SearchRecommendRepository _SearchRecommendRepository; + + public SearchRecommendServiceImpl(SearchRecommendRepository SearchRecommendRepository) + { + this._SearchRecommendRepository = SearchRecommendRepository; + } + + #region 业务逻辑代码 + + + /// + /// 查询搜索推荐分页列表 + /// + public async Task> GetSearchRecommendList(SearchRecommendQueryDto parm) + { + //开始拼装查询条件d + var predicate = Expressionable.Create(); + + predicate = predicate.AndIF(!string.IsNullOrEmpty(parm.SearchRecommendTitle), s => s.SearchRecommendTitle.Contains(parm.SearchRecommendTitle)); + var query = _SearchRecommendRepository + .Queryable() + .Where(predicate.ToExpression()) + .OrderBy(s => s.SearchRecommendSort,OrderByType.Asc) + .Select(s => new SearchRecommendVo + { + SearchRecommendId = s.SearchRecommendId, + SearchRecommendGuid = s.SearchRecommendGuid, + SearchRecommendTitle = s.SearchRecommendTitle, + SearchRecommendSort = s.SearchRecommendSort, + }); + + + return await query.ToPageAsync(parm); + } + + /// + /// 添加或修改搜索推荐 + /// + public async Task AddOrUpdateSearchRecommend(SearchRecommend model) + { + if (model.SearchRecommendId != 0) + { + var response = await _SearchRecommendRepository.UpdateAsync(model); + return "修改成功!"; + } + else + { + + var response = await _SearchRecommendRepository.InsertReturnSnowflakeIdAsync(model); + return "添加成功!"; + } + } + + #region Excel处理 + + + #endregion + + + +#endregion + + } +} diff --git a/ARW.Service/Business/IBusinessService/Advertisement/SearchRecommends/ISearchRecommendService.cs b/ARW.Service/Business/IBusinessService/Advertisement/SearchRecommends/ISearchRecommendService.cs new file mode 100644 index 0000000..982a824 --- /dev/null +++ b/ARW.Service/Business/IBusinessService/Advertisement/SearchRecommends/ISearchRecommendService.cs @@ -0,0 +1,41 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using ARW.Model; +using ARW.Model.Dto.Business.Advertisement.SearchRecommends; +using ARW.Model.Models.Business.Advertisement.SearchRecommends; +using ARW.Model.Vo.Business.Advertisement.SearchRecommends; + +namespace ARW.Service.Business.IBusinessService.Advertisement.SearchRecommends +{ + /// + /// 搜索推荐接口类 + /// + /// @author lwh + /// @date 2023-10-25 + /// + public interface ISearchRecommendService : IBaseService + { + /// + /// 获取搜索推荐分页列表 + /// + /// + /// + Task> GetSearchRecommendList(SearchRecommendQueryDto parm); + + + /// + /// 添加或修改搜索推荐 + /// + /// + /// + Task AddOrUpdateSearchRecommend(SearchRecommend parm); + + + + + + } +} diff --git a/ARW.WebApi/Controllers/Api/Advertisement/SearchRecommends/SearchRecommendApiController.cs b/ARW.WebApi/Controllers/Api/Advertisement/SearchRecommends/SearchRecommendApiController.cs new file mode 100644 index 0000000..ed30cf7 --- /dev/null +++ b/ARW.WebApi/Controllers/Api/Advertisement/SearchRecommends/SearchRecommendApiController.cs @@ -0,0 +1,81 @@ +using Infrastructure; +using Infrastructure.Attribute; +using Infrastructure.Enums; +using Infrastructure.Model; +using Mapster; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; +using ARW.Admin.WebApi.Extensions; +using ARW.Admin.WebApi.Filters; +using ARW.Common; +using ARW.Admin.WebApi.Controllers; +using ARW.Model.Dto.Api.Advertisement.SearchRecommends; +using ARW.Service.Api.IBusinessService.Advertisement.SearchRecommends; +using ARW.Model.Models.Business.Advertisement.SearchRecommends; +using ARW.Model.Vo.Api.Advertisement.SearchRecommends; +using Microsoft.AspNetCore.Authorization; +using Geocoding; + +namespace ARW.WebApi.Controllers.Api.Advertisement.SearchRecommends +{ + /// + /// 搜索推荐控制器Api + /// + /// @author lwh + /// @date 2023-10-25 + /// + //[Verify] + [Route("api/[controller]")] + public class SearchRecommendApiController : BaseController + { + private readonly ISearchRecommendServiceApi _SearchRecommendServiceApi; + + /// + /// 依赖注入 + /// + /// 搜索推荐搜索推荐Api服务 + public SearchRecommendApiController(ISearchRecommendServiceApi SearchRecommendServiceApi) + { + _SearchRecommendServiceApi = SearchRecommendServiceApi; + } + + + /// + /// 获取搜索推荐列表(Api) + /// + /// 查询参数 + /// + [HttpGet("getSearchRecommendList")] + public async Task GetSearchRecommendListApi([FromQuery] SearchRecommendQueryDtoApi parm) + { + var res = await _SearchRecommendServiceApi.GetSearchRecommendListApi(parm); + return SUCCESS(res); + } + + /// + /// 获取SearchRecommend详情(Api) + /// + /// 查询参数 + /// + [HttpGet("getSearchRecommendDetails")] + public async Task GetSearchRecommendDetails([FromQuery] SearchRecommendDtoApi parm) + { + //if (parm == null) throw new CustomException("参数错误!"); + + var res = await _SearchRecommendServiceApi.GetSearchRecommendDetails(parm); + + if (res != "[]") + { + res = res.Remove(0, 1); + res = res.Substring(0, res.Length - 1); + var data = res.FromJSON(); + return SUCCESS(data); + } + else + { + return SUCCESS(res); + } + } + + } +} diff --git a/ARW.WebApi/Controllers/Business/Advertisement/SearchRecommends/SearchRecommendController.cs b/ARW.WebApi/Controllers/Business/Advertisement/SearchRecommends/SearchRecommendController.cs new file mode 100644 index 0000000..7c99f59 --- /dev/null +++ b/ARW.WebApi/Controllers/Business/Advertisement/SearchRecommends/SearchRecommendController.cs @@ -0,0 +1,98 @@ +using Infrastructure; +using Infrastructure.Attribute; +using Infrastructure.Enums; +using Infrastructure.Model; +using Mapster; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; +using ARW.Admin.WebApi.Extensions; +using ARW.Admin.WebApi.Filters; +using ARW.Common; +using ARW.Model.Dto.Business.Advertisement.SearchRecommends; +using ARW.Service.Business.IBusinessService.Advertisement.SearchRecommends; +using ARW.Admin.WebApi.Controllers; +using ARW.Model.Models.Business.Advertisement.SearchRecommends; +using ARW.Model.Vo.Business.Advertisement.SearchRecommends; +using Microsoft.AspNetCore.Authorization; +using ARW.Admin.WebApi.Framework; + + +namespace ARW.WebApi.Controllers.Business.Advertisement.SearchRecommends +{ + /// + /// 搜索推荐控制器 + /// + /// @author lwh + /// @date 2023-10-25 + /// + [Verify] + [Route("business/[controller]")] + public class SearchRecommendController : BaseController + { + private readonly ISearchRecommendService _SearchRecommendService; + + /// + /// 依赖注入 + /// + /// 搜索推荐服务 + public SearchRecommendController(ISearchRecommendService SearchRecommendService) + { + _SearchRecommendService = SearchRecommendService; + } + + + /// + /// 获取搜索推荐列表 + /// + /// 查询参数 + /// + [HttpGet("getSearchRecommendList")] + [ActionPermissionFilter(Permission = "business:searchrecommend:list")] + public async Task GetSearchRecommendList([FromQuery] SearchRecommendQueryDto parm) + { + var res = await _SearchRecommendService.GetSearchRecommendList(parm); + return SUCCESS(res); + } + + /// + /// 添加或修改搜索推荐 + /// + /// + /// + [HttpPost("addOrUpdateSearchRecommend")] + [ActionPermissionFilter(Permission = "business:searchrecommend:addOrUpdate")] + [Log(Title = "添加或修改搜索推荐", BusinessType = BusinessType.ADDORUPDATE)] + public async Task AddOrUpdateSearchRecommend([FromBody] SearchRecommendDto parm) + { + if (parm == null) { throw new CustomException("请求参数错误"); } + + var modal = new SearchRecommend(); + if (parm.SearchRecommendId != 0) modal = parm.Adapt().ToUpdate(HttpContext); + else modal = parm.Adapt().ToCreate(HttpContext); + + var res = await _SearchRecommendService.AddOrUpdateSearchRecommend(modal); + return SUCCESS(res); + } + + /// + /// 删除搜索推荐 + /// + /// + [HttpDelete("{ids}")] + [ActionPermissionFilter(Permission = "business:searchrecommend:delete")] + [Log(Title = "搜索推荐删除", BusinessType = BusinessType.DELETE)] + public IActionResult Delete(string ids) + { + long[] idsArr = Tools.SpitLongArrary(ids); + if (idsArr.Length <= 0) { return ToResponse(ApiResult.Error($"删除失败Id 不能为空")); } + var response = _SearchRecommendService.Delete(idsArr); + return SUCCESS("删除成功!"); + } + + + + + + + } +}