public async Task <APIResult <Page <ArticleModel> > > GetPagesAsync(GetArticlePagesRequest request) { var res = new APIResult <Page <ArticleModel> >(); try { var result = await _ctx.Query <Article>() .HasWhere(request.Title, p => p.Title.Contains(request.Title)) .HasWhere(request.Category, p => p.Category.Contains(request.Category)) .HasWhere(request.Tag, p => p.Tag.Contains(request.Tag)) .OrderByDescending(p => p.Id) .ThenByDescending(p => p.IsTop) .ThenByDescending(p => p.CreateTime) .ToPageAsync(request.PageIndex, request.PageSize); if (result == null || result.Items == null || result.Items.Count == 0) { res.Message = "暂无数据."; return(res); } res.Data = result.ToViewPage(model => new ArticleModel { Key = model.Id.ToString(), Guid = model.Guid, CreateTime = model.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"), Id = model.Id, Sort = model.Sort, IsEnabled = model.IsEnabled, Title = model.Title, Summary = model.Summary, // Content = model.Content, Keyword = model.Keyword, Description = model.Description, Tag = model.Tag, Category = model.Category, IsTop = model.IsTop, CanComment = model.CanComment }); res.Success = true; res.Message = "获取成功."; } catch (Exception ex) { res.StatusCode = 500; res.Message = ex.Message; } return(res); }
public async Task <APIResult <Page <ArticleModel> > > GetPages([FromBody] GetArticlePagesRequest request) => await _service.GetPagesAsync(request);