Esempio n. 1
0
 public virtual async Task <BlogDto> UpdateAsync(Guid id, UpdateBlogDto input)
 {
     return(await RequestAsync <BlogDto>(nameof(UpdateAsync), new ClientProxyRequestTypeValue
     {
         { typeof(Guid), id },
         { typeof(UpdateBlogDto), input }
     }));
 }
Esempio n. 2
0
        public async Task <BlogDto> Update(Guid id, UpdateBlogDto input)
        {
            var blog = await _blogRepository.GetAsync(id);

            blog.SetName(input.Name);
            blog.SetShortName(input.ShortName);
            blog.Description = input.Description;

            return(ObjectMapper.Map <Blog, BlogDto>(blog));
        }
Esempio n. 3
0
        public async Task <IActionResult> Update(int id, [FromBody] UpdateBlogDto updateBlogDto)
        {
            updateBlogDto.Id = id;
            var result = await _unitOfWork.BlogService.Update(updateBlogDto);

            if (!result.Success)
            {
                return(result.ApiResult);
            }
            return(NoContent());
        }
Esempio n. 4
0
    public virtual async Task <BlogDto> UpdateAsync(Guid id, UpdateBlogDto input)
    {
        var blog = await BlogRepository.GetAsync(id);

        blog = await BlogManager.UpdateAsync(blog, input.Name, input.Slug);

        blog.SetConcurrencyStampIfNotNull(input.ConcurrencyStamp);

        await BlogRepository.UpdateAsync(blog);

        return(ObjectMapper.Map <Blog, BlogDto>(blog));
    }
Esempio n. 5
0
        public async Task <IActionResult> Update(UpdateBlogDto updateBlogDto)
        {
            var updateBlogVM = CustomMapper.GetUpdateBlogViewModel(updateBlogDto);

            var validationResult = await _blogService.Update(updateBlogVM);

            if (validationResult.IsValid)
            {
                return(Ok());
            }

            return(BadRequest(validationResult.Errors));
        }
Esempio n. 6
0
        public void UpdatePost(int id, UpdateBlogDto dto)
        {
            var post = _context.Posts.FirstOrDefault(x => x.Id == id);

            if (post == null)
            {
                throw new Exception("Post nie istnieje");
            }
            post.Date              = DateTime.Now;
            post.Description       = dto.Description;
            post.Title             = dto.Title;
            post.MainPictureAdress = dto.MainPictureAdress;
            _context.SaveChanges();
        }
        public void Put([FromBody] UpdateBlogDto updateBlogDto)
        {
            //eg.1 更新指定列
            //_fsql.Update<Blog>(updateBlogDto.BlogId).Set(a => new Blog()
            //{
            //    Title = updateBlogDto.Title,
            //    Content = updateBlogDto.Content
            //}).ExecuteAffrows();

            //eg.2将这个实体更新到数据库中。当更新时,会把其他列的值,如CreateTime也更新掉。
            //使用IgnoreColumns可忽略某一些列。

            Blog blog = _mapper.Map <Blog>(updateBlogDto);

            _fsql.Update <Blog>().SetSource(blog).IgnoreColumns(r => r.CreateTime).ExecuteAffrows();
        }
Esempio n. 8
0
        public async Task<Result> Update(UpdateBlogDto updateBlogDto)
        {
            var blog = await FirstOrDefaultAsync(c => c.Id == updateBlogDto.Id);
            if (blog.BlogCategoryId != updateBlogDto.BlogCategoryId)
            {
                var blogCategory =
                    await Context.BlogCategories.FirstOrDefaultAsync(u => u.Id == updateBlogDto.BlogCategoryId);
                if (blogCategory == null)
                    return Result.Failed(new BadRequestObjectResult(new ApiMessage
                        {Message = ResponseMessage.InvalidBlogCategoryId}));
                blog.BlogCategory = blogCategory;
            }

            _mapper.Map(updateBlogDto, blog);
            await Context.SaveChangesAsync();

            return Result.SuccessFull();
        }
        public virtual async Task <Blog> UpdateBlogTagIdentityAsync(UpdateBlogDto updateBlogDto)
        {
            Blog blog = _mapper.Map <Blog>(updateBlogDto);

            blog.UpdateTime = DateTime.Now;
            await _blogRepository.UpdateAsync(blog);

            await _tagService.CreateTagIdentityAsync(
                new Tag()
            {
                IsDeleted = false,
                TagName   = updateBlogDto.Title,
                PostId    = blog.Id
            });

            if (updateBlogDto.Title == "abcd")
            {
                throw new Exception("ff");
            }
            return(blog);
        }
Esempio n. 10
0
        public async Task <IActionResult> UpdateBlogAsync(long id, [FromBody] UpdateBlogDto requestDto)
        {
            if (!Guid.TryParse(User.FindFirstValue("sub"), out Guid authorId))
            {
                throw new ArgumentException("Sub claim parsing failed");
            }

            _logger.LogInformation($"User (ID #{authorId}) trying to update blog with identificator {id}");
            var entity = await _blogs.GetBlogAsync(id);

            if (entity == default(Blog))
            {
                _logger.LogWarning($"User (ID #{authorId}) requested not existing blog");
                return(NotFound());
            }

            entity = _mapper.Map(requestDto, entity);

            if (authorId != entity.AuthourId)
            {
                _logger.LogWarning($"User (ID #{authorId}) tried to update not his own blog");
                return(Forbid());
            }

            entity.Sanitize();
            if (!TryValidateModel(entity))
            {
                _logger.LogWarning($"User's DTO does not pass model validation after sanitizing. {requestDto}");
                return(BadRequest());
            }

            entity = await _blogs.UpdateBlogAsync(entity);

            _logger.LogInformation($"User (ID #{authorId}) updated blog with identificator {entity.Id}");

            var result = _mapper.Map <BlogDto>(entity);

            return(Ok(result));
        }
Esempio n. 11
0
 public async Task <Blog> UpdateBlogTransactionalTaskAsync([FromBody] UpdateBlogDto update)
 {
     return(await _blogService.UpdateBlogTransactionalTaskAsync(update));
 }
Esempio n. 12
0
 public async Task <BlogDto> UpdateAsync(Guid id, UpdateBlogDto input)
 {
     return(await _blogManagementAppService.UpdateAsync(id, input));
 }
Esempio n. 13
0
 public async Task <BlogDto> Update(Guid id, UpdateBlogDto input)
 {
     return(await _blogAppService.Update(id, input));
 }
Esempio n. 14
0
 public static UpdateBlogViewModel GetUpdateBlogViewModel(UpdateBlogDto updateBlogDto)
 {
     return(new UpdateBlogViewModel(updateBlogDto.Id, updateBlogDto.Title));
 }
Esempio n. 15
0
 public Task <BlogDto> UpdateAsync(Guid id, UpdateBlogDto input)
 {
     return(BlogAdminAppService.UpdateAsync(id, input));
 }
Esempio n. 16
0
 public async Task <Blog> UpdateBlogTagIdentityAsync([FromBody] UpdateBlogDto update)
 {
     return(await _blogService.UpdateBlogTagIdentityAsync(update));
 }
Esempio n. 17
0
 public async Task <BlogDto> Update(Guid id, UpdateBlogDto input)
 {
     throw new NotImplementedException();
 }
Esempio n. 18
0
 public IActionResult UpdateBlog([FromRoute] int id, [FromBody] UpdateBlogDto dto)
 {
     _blogService.UpdatePost(id, dto);
     return(Ok());
 }
Esempio n. 19
0
        public async Task <bool> UpdateBlogAsync(UpdateBlogDto input)
        {
            PermissionChecker.Authorize(PermissionNames.Page_Blog_Update);
            if (input.Id == 0)
            {
                return(false);
            }
            input.SelectTags = input.SelectTags.Distinct().ToList();
            var blog = await _blogRepository.GetAll().Include(p => p.BlogTags).FirstOrDefaultAsync(p => p.Id == input.Id);

            if (blog != null)
            {
                if (blog.BlogTags != null && blog.BlogTags.Count > 0)
                {
                    //删除没有选择的
                    var delblogTagsList = blog.BlogTags.Where(p => !input.SelectTags.Contains(p.TagId)).ToList();
                    foreach (var iDelObj in delblogTagsList)
                    {
                        blog.BlogTags.Remove(iDelObj);
                    }

                    var blogTagsList = blog.BlogTags.Select(p => p.TagId);

                    var insertList = input.SelectTags.Where(p => !blogTagsList.Contains(p)).ToList();

                    var tags = await _tagRepository.GetAllListAsync(p => insertList.Contains(p.Id));

                    if (tags.Count > 0)
                    {
                        var blogTags = tags.Select(p => new BlogTag()
                        {
                            Tag = p
                        });
                        foreach (var iObj in blogTags)
                        {
                            blog.BlogTags.Add(iObj);
                        }
                    }
                }
                else
                {
                    var tags = await _tagRepository.GetAllListAsync(p => input.SelectTags.Contains(p.Id));

                    if (tags.Count > 0)
                    {
                        blog.BlogTags = new List <BlogTag>();
                        var blogTags = tags.Select(p => new BlogTag()
                        {
                            Tag = p
                        });
                        foreach (var iObj in blogTags)
                        {
                            blog.BlogTags.Add(iObj);
                        }
                    }
                }
                //var blogTagList= this._blogTagRepository.GetAll().Where(p=> input.SelectTags.Contains(p.TagId));
                blog = input.MapTo(blog);//修改必须要
                //await this._blogTagRepository.DeleteAsync(p => input.SelectTags.Contains(p.TagId));
                await _blogRepository.UpdateAsync(blog);

                return(true);
            }
            else
            {
                return(false);
            }
        }