Exemplo n.º 1
0
        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);
        }
Exemplo n.º 2
0
 public async Task <APIResult <Page <ArticleModel> > > GetPages([FromBody] GetArticlePagesRequest request) => await _service.GetPagesAsync(request);