using Attribute; using Model; using Model.Base; using Repository; using Service; using Microsoft.AspNetCore.Mvc; using Vo.Admin; namespace Services { /// /// 后台项目菜单Service业务层处理 /// [AppService(ServiceType = typeof(IBackgroundProjectMenuService), ServiceLifetime = LifeTime.Transient)] public class BackgroundProjectMenuService : BaseService, IBackgroundProjectMenuService { /// /// 后台项目菜单-列表 /// /// 参数请求体 /// 分页参数 /// 列表 public PagedInfo getBackgroundProjectMenuList([FromQuery] PagerInfo page, [FromQuery] BackgroundProjectMenu param) { //拼装查询条件 var predicate = Expressionable.Create(); predicate = predicate.AndIF(param.bgProjectId > 0, m => m.bgProjectId == param.bgProjectId); predicate = predicate.AndIF(!string.IsNullOrEmpty(param.menuTitle), m => m.menuTitle.Contains(param.menuTitle)); predicate = predicate.AndIF(!string.IsNullOrEmpty(param.menuName), m => m.menuName.Contains(param.menuName)); var response = Queryable() .Where(predicate.ToExpression()) .OrderByDescending(m => m.id) .ToPage(page); return response; } } }