public async Task <IDataResult <ArticleDto> > Add(ArticleAddDto articleAddDto, string createdByName) { var article = _mapper.Map <Article>(articleAddDto); article.CreatedByName = createdByName; article.ModifiedByName = createdByName; article.UserId = 1; var articleStore = await _unitOfWork.Articles.AddAsync(article); await _unitOfWork.SaveAsync(); return(new DataResult <ArticleDto>(ResultStatus.Success, $"{articleAddDto.Title} başlıklı makale başarıyla eklenmiştir.", new ArticleDto { Article = articleStore, Message = $"{articleAddDto.Title} başlıklı makale başarıyla eklenmiştir.", ResultStatus = ResultStatus.Success })); }
public async Task <IDataResult <ArticleDto> > AddAsync(ArticleAddDto articleAddDto, string createdByName, int userId) { var article = Mapper.Map <Article>(articleAddDto); article.CreatedByName = createdByName; article.ModifiedByName = createdByName; article.UserId = userId; var addedArticle = await UnitOfWork.Articles.AddAsync(article); await UnitOfWork.SaveAsync(); return(new DataResult <ArticleDto>(ResultStatus.Success, Messages.Article.Add(addedArticle.Title), new ArticleDto { Article = addedArticle, ResultStatus = ResultStatus.Success, Message = Messages.Article.Add(addedArticle.Title) })); }
public async Task <IDataResult <ArticleDto> > Add(ArticleAddDto articleAddDto, string createdByName) { var article = _mapper.Map <Article>(articleAddDto); //AutoMapper doğrudan articleAddDto degiskenini Article ' a çeviriyor article.CreatedByName = createdByName; article.ModifiedbyName = createdByName; article.UserId = 1; var addedArticle = await _unitOfWork.Articles.AddAsync(article); await _unitOfWork.SaveAsync(); return(new DataResult <ArticleDto>(ResultStatus.Success, $"{articleAddDto.Title} baslıklı makale basarıyla eklenmistir.", new ArticleDto() { Article = addedArticle, ResultStatus = ResultStatus.Success, Message = $"{articleAddDto.Title} baslıklı makale basarıyla eklenmistir." })); }
public async Task <IActionResult> Add(ArticleAddDto articleAddDto, IFormFile fileImg) { if (ModelState.IsValid) { if (fileImg != null) { string imgExtension = Path.GetExtension(fileImg.FileName); string imgName = Guid.NewGuid() + imgExtension; string imgPath = Path.Combine(Directory.GetCurrentDirectory(), $"wwwroot/uploads/img/{imgName}"); using var streamImg = new FileStream(imgPath, FileMode.Create); await fileImg.CopyToAsync(streamImg); articleAddDto.Thumbnail = $"/uploads/img/{imgName}"; } await _articleService.Add(articleAddDto, "Hasan Erdal"); return(RedirectToAction("Index")); } var categories = await _categoryService.GetAllByNonDeleteAndActive(); ViewBag.CategoryList = categories.Data.Categories; return(View(articleAddDto)); }
public ActionResult Put(int id, [FromForm] ArticleAddDto articleDto) { return(GetStatusCodeResult(_articlesService.Update(articleDto, id, GetCurrentUser()))); }
public ActionResult Post([FromForm] ArticleAddDto articleDto) { return(GetStatusCodeResult(_articlesService.Insert(articleDto, GetCurrentUser()))); }
public ResultMessage Update(ArticleAddDto article, int articleId, IUserDto user) { _logger.LogInformation($"START: Article.Update: Name:{article.Name}"); var validationResult = _addValidator.Validate(article); if (!validationResult.IsValid) { _logger.LogInformation($"END: Article.Update: Id:{articleId} -- VALIDATION"); return(new ResultMessage { Status = HttpStatusCode.BadRequest, ValidationMessages = validationResult.GetErrorsList() }); } try { var articleData = _unitOfWork.ArticlesRepository.GetById(articleId); if (articleData == null || articleData.IsDraft) { _logger.LogInformation($"END: Article.Update: Id:{articleId} -- NOTFOUND"); return(new ResultMessage { Status = HttpStatusCode.NotFound, }); } if (user.IsAdmin || (user.Id == articleData.CreatedBy && (!articleData.IsActive.HasValue || !articleData.IsActive.Value))) { article.Adapt(articleData, typeof(ArticleAddDto), typeof(DBModels.Articles)); articleData.UpdatedAt = DateTime.Now; articleData.UpdatedBy = user.Id; var sliderDto = new SliderDto { attachmentType = AttachmentTypesEnum.Articles, Items = article.UpdatedImages ?? new List <SliderItemDto>(), SubFolderName = articleData.SubFolderName, ParentId = articleId }; //check profile picture if (sliderDto.Items.Count > 0) { articleData.ProfilePicture = _sliderManager.GetProfilePicturePath(sliderDto, article.ProfilePicture); } _unitOfWork.ArticlesRepository.Update(articleData); _unitOfWork.Commit(); // update files if (sliderDto.Items.Count > 0) { _sliderManager.Update(sliderDto); } _logger.LogInformation($"END: Article.Update: ID:{articleId} --SUCCESS"); return(new ResultMessage { Status = HttpStatusCode.OK }); } else { _logger.LogInformation($"END: Article.Update: Id:{articleId} -- UNAuthorized"); return(new ResultMessage { Status = HttpStatusCode.Unauthorized }); } } catch (Exception ex) { _logger.LogError(ex, string.Empty); return(new ResultMessage { Status = HttpStatusCode.InternalServerError }); } }
public ResultMessage Insert(ArticleAddDto article, IUserDto user) { _logger.LogInformation($"START: Article.Insert: Name:{article.Name}"); var validationResult = _addValidator.Validate(article); if (!validationResult.IsValid) { _logger.LogInformation($"END: Article.Insert: Name:{article.Name} --VALIDATION"); return(new ResultMessage { Status = HttpStatusCode.BadRequest, ValidationMessages = validationResult.GetErrorsList() }); } try { var articleEntity = article.Adapt <DBModels.Articles>(); articleEntity.CreatedAt = DateTime.Now; articleEntity.CreatedBy = user.Id; var articleFolderName = Guid.NewGuid().ToString(); var sliderDto = new SliderDto { attachmentType = AttachmentTypesEnum.Articles, Items = article.UpdatedImages, SubFolderName = articleFolderName }; if (sliderDto.Items.Count > 0) { articleEntity.ProfilePicture = _sliderManager.GetProfilePicturePath(sliderDto); } articleEntity.SubFolderName = articleFolderName; articleEntity.Images = null; articleEntity.IsActive = null; if (user.IsAdmin) { articleEntity.IsActive = true; } _unitOfWork.ArticlesRepository.Insert(articleEntity); _unitOfWork.Commit(); sliderDto.ParentId = articleEntity.Id; _sliderManager.Add(sliderDto); _logger.LogInformation($"END: Article.Insert: Name:{article.Name} --SUCCESS"); return(new ResultMessage { Status = HttpStatusCode.OK }); } catch (Exception ex) { _logger.LogError(ex, string.Empty); return(new ResultMessage() { ErrorCode = (int)ProductsErrorsCodeEnum.ProductsInsertError, Status = HttpStatusCode.InternalServerError }); } }
public IActionResult Add(ArticleAddDto dto) { var list = _articleAppService.Add(dto); return(RedirectToAction("Index")); }