public async Task <ArticleModel> CreateArticleAsync(ClaimsPrincipal claimsPrincipal, ArticleModel criterias) { var currentUserId = GetCurrentUserId(claimsPrincipal); var article = new ArticleModifyRequest { CreatedById = currentUserId, UpdatedById = currentUserId, Content = criterias.Content, Name = criterias.Name, ArticleCategoryId = criterias.ArticleCategoryId }; if (criterias.Picture != null) { article.Picture = new PictureRequest() { Base64Data = criterias.Picture.Base64Data, ContentType = criterias.Picture.ContentType, FileName = criterias.Picture.FileName }; } var id = await _articleService.CreateAsync(article); criterias.Id = id; return(criterias); }
public async Task <bool> ActiveAsync(ArticleModifyRequest request) { await _articlePictureRepository.UpdateStatusByArticleIdAsync(new ArticlePictureModifyRequest { ArticleId = request.Id, UpdatedById = request.UpdatedById }, PictureStatus.Actived); return(await _articleRepository.ActiveAsync(request)); }
public async Task <bool> ActiveAsync(ArticleModifyRequest request) { await _articleRepository.Get(x => x.Id == request.Id) .Set(x => x.StatusId, ArticleStatus.Actived.GetCode()) .Set(x => x.UpdatedById, request.UpdatedById) .Set(x => x.UpdatedDate, DateTimeOffset.UtcNow) .UpdateAsync(); return(true); }
public async Task <bool> UpdateAsync(ArticleModifyRequest request) { var exist = _articleRepository.FirstOrDefault(x => x.Id == request.Id); exist.Name = request.Name; exist.ArticleCategoryId = request.ArticleCategoryId; exist.UpdatedById = request.UpdatedById; exist.UpdatedDate = request.UpdatedDate; exist.Content = request.Content; await _articleRepository.UpdateAsync(exist); return(true); }
public async Task <int> CreateAsync(ArticleModifyRequest request) { var newArticle = new Article() { ArticleCategoryId = request.ArticleCategoryId, Content = request.Content, CreatedById = request.CreatedById, UpdatedById = request.UpdatedById, CreatedDate = request.CreatedDate, UpdatedDate = request.UpdatedDate, Description = request.Description, Name = request.Name, StatusId = ArticleStatus.Pending.GetCode() }; return(await _articleRepository.AddWithInt32EntityAsync(newArticle)); }
public async Task <IActionResult> Update(ArticleModel model) { if (!ModelState.IsValid) { return(RedirectToErrorPage()); } var article = new ArticleModifyRequest { Id = model.Id, CreatedById = model.CreatedById, ArticleCategoryId = model.ArticleCategoryId, Content = model.Content, Description = model.Description, Name = model.Name, Picture = new PictureRequest { Base64Data = model.Picture, ContentType = model.PictureFileType, FileName = model.PictureFileName }, UpdatedById = LoggedUserId, }; if (article.Id <= 0) { return(RedirectToErrorPage()); } var exist = await _articleService.FindAsync(new IdRequestFilter <long> { Id = article.Id, CanGetDeleted = true, CanGetInactived = true }); if (exist == null) { return(RedirectToErrorPage()); } await _articleService.UpdateAsync(article); return(RedirectToAction(nameof(Detail), new { id = article.Id })); }
public async Task <ArticleModel> UpdateArticleAsync(ClaimsPrincipal claimsPrincipal, ArticleModel criterias) { var exist = await _articleService.FindAsync(new IdRequestFilter <long> { Id = criterias.Id, CanGetInactived = true }); if (exist == null) { throw new CaminoApplicationException($"The article with id {criterias.Id} has not been found"); } var currentUserId = GetCurrentUserId(claimsPrincipal); if (currentUserId != exist.CreatedById) { throw new UnauthorizedAccessException(); } var article = new ArticleModifyRequest { Id = criterias.Id, CreatedById = currentUserId, UpdatedById = currentUserId, Content = criterias.Content, Name = criterias.Name, ArticleCategoryId = criterias.ArticleCategoryId }; if (criterias.Picture != null) { article.Picture = new PictureRequest { Base64Data = criterias.Picture.Base64Data, ContentType = criterias.Picture.ContentType, FileName = criterias.Picture.FileName, Id = criterias.Picture.PictureId }; } await _articleService.UpdateAsync(article); return(criterias); }
public async Task <IActionResult> Put([FromBody] ArticleModifyRequest request) { var foundArticle = await _context.ConsumptionArticles.FirstOrDefaultAsync(c => c.Id == request.Id); if (foundArticle == null) { return(NotFound("Article wasn't found")); } foundArticle.Name = request.Name; foundArticle.IsActive = request.IsActive; _context.ConsumptionArticles.Update(foundArticle); await _context.SaveChangesAsync(); return(Ok(await _context.ConsumptionArticles.ProjectTo <ArticleDetailResponse>(_mapper.ConfigurationProvider) .FirstOrDefaultAsync(x => x.Id == request.Id))); }
public async Task <IActionResult> CreateCommon([FromBody] ArticleModifyRequest request) { var max = await _context.ConsumptionArticles.MaxAsync(x => x.Id); var art = _mapper.Map <ConsumptionArticle>(request); art.IsActive = true; art.IsCommon = true; art.Id = max + 1; var res = await _context.ConsumptionArticles.AddAsync(art); await _context.SaveChangesAsync(); return(CreatedAtAction(nameof(CreateOne), await _context.ConsumptionArticles.ProjectTo <ArticleDetailResponse>(_mapper.ConfigurationProvider) .FirstOrDefaultAsync(x => x.Id == res.Entity.Id))); }
public async Task <bool> UpdateAsync(ArticleModifyRequest article) { var modifiedDate = DateTimeOffset.UtcNow; article.UpdatedDate = modifiedDate; var isUpdated = await _articleRepository.UpdateAsync(article); if (isUpdated) { await _articlePictureRepository.UpdateAsync(new ArticlePictureModifyRequest { ArticleId = article.Id, CreatedById = article.CreatedById, UpdatedById = article.UpdatedById, CreatedDate = modifiedDate, UpdatedDate = modifiedDate, Picture = article.Picture }); } return(true); }
public async Task <int> CreateAsync(ArticleModifyRequest article) { var modifiedDate = DateTimeOffset.UtcNow; article.CreatedDate = modifiedDate; article.UpdatedDate = modifiedDate; var id = await _articleRepository.CreateAsync(article); if (article.Picture != null) { await _articlePictureRepository.CreateAsync(new ArticlePictureModifyRequest { ArticleId = id, CreatedById = article.CreatedById, UpdatedById = article.UpdatedById, CreatedDate = modifiedDate, UpdatedDate = modifiedDate, Picture = article.Picture }); } return(id); }