Пример #1
0
        public async Task <PagedResultDto <ArticleDto> > GetAllServerPaging(ArticleInputDto input)
        {
            var query = (from ct in _ArticleRepos.GetAll()
                         join c in _categoryRepos.GetAll() on ct.CategoryId equals c.Id
                         select new ArticleDto
            {
                Id = ct.Id,
                CategoryId = ct.CategoryId,
                Description = ct.Description,
                Details = ct.Details,
                Title = ct.Title,
                File = ct.File,
                IsActive = ct.IsActive,
                SortOrder = ct.SortOrder,
                RoleLevel = ct.RoleLevel,
                CategoryName = c.Title
            })
                        .WhereIf(!string.IsNullOrEmpty(input.Filter), p => p.Title.Contains(input.Filter.Trim()))
                        .WhereIf(input.CategoryId > 0, p => p.CategoryId == input.CategoryId);

            var rowCount = await query.CountAsync();

            var dataGrids = await query
                            .OrderBy(p => p.Id)
                            .PageBy(input)
                            .ToListAsync();

            return(new PagedResultDto <ArticleDto>(rowCount, dataGrids));
        }
Пример #2
0
        /// <summary>
        /// 修改文章
        /// </summary>
        /// <returns></returns>
        public OperateResult UpdateArticle(ArticleInputDto input)
        {
            if (_unitOfWork.GetRepository <CmsArticle>().Table.Any(s => s.Id != input.Id && s.ArtTitle == input.ArtTitle))
            {
                return(OperateResult.Error("已存在此文章"));
            }
            input.EntryName = string.IsNullOrEmpty(input.EntryName) ? RandomHelper.NewGuid() : input.EntryName;
            if (_unitOfWork.GetRepository <CmsArticle>().Table.Any(s => s.Id != input.Id && s.EntryName == input.EntryName))
            {
                return(OperateResult.Error("已存在此友好地址名"));
            }
            var existItem = _unitOfWork.GetRepository <CmsArticle>().Table.FirstOrDefault(s => s.Id == input.Id);

            if (existItem == null)
            {
                return(OperateResult.Error("数据不存在"));
            }
            existItem.ArtTitle    = input.ArtTitle;
            existItem.EntryName   = input.EntryName;
            existItem.ArtContent  = input.ArtContent;
            existItem.ArtDesc     = input.ArtDesc;
            existItem.CategoryId  = input.CategoryId;
            existItem.IsRelease   = input.IsRelease;
            existItem.ReleaseTime = input.ReleaseTime;
            existItem.Tags        = input.Tags;

            existItem.UpdatedAt = DateTime.Now;
            var row = _unitOfWork.SaveChanges();

            return(row > 0 ? OperateResult.Succeed("修改成功") : OperateResult.Error("修改失败"));
        }
Пример #3
0
        /// <summary>
        /// 创建文章
        /// </summary>
        /// <returns></returns>
        public OperateResult CreateArticle(ArticleInputDto input)
        {
            if (_unitOfWork.GetRepository <CmsArticle>().Table.Any(s => s.ArtTitle == input.ArtTitle))
            {
                return(OperateResult.Error("已存在此文章"));
            }
            input.EntryName = string.IsNullOrEmpty(input.EntryName) ? RandomHelper.NewGuid() : input.EntryName;
            if (_unitOfWork.GetRepository <CmsArticle>().Table.Any(s => s.EntryName == input.EntryName))
            {
                return(OperateResult.Error("已存在此友好地址名"));
            }
            var entity = AutoMapper.Mapper.Map <CmsArticle>(input);

            _unitOfWork.GetRepository <CmsArticle>().Insert(entity);
            var row = _unitOfWork.SaveChanges();

            return(row > 0 ? OperateResult.Succeed("创建成功") : OperateResult.Error("创建失败"));
        }
Пример #4
0
        public IActionResult ArticleEdit([FromBody] ArticleInputDto input)
        {
            var result = _articleService.UpdateArticle(input);

            return(Ok(result));
        }