// отправка информации public IActionResult OnPost() { if (ModelState.IsValid) { if (Photo != null) { if (Publication.PhotoPath != null) { string filePath = Path.Combine(_webHostEnvironment.WebRootPath, "images", Publication.PhotoPath); if (Publication.PhotoPath != "noimage.png") { System.IO.File.Delete(filePath); } } Publication.PhotoPath = ProcessUploadFile(); } if (Publication.Id > 0) { Publication = _publicationRepository.Update(Publication); TempData["SuccessMessage"] = $"Update {Publication.Name} successful!"; } else { Publication = _publicationRepository.Add(Publication); TempData["SuccessMessage"] = $"Adding {Publication.Name} successful!"; } return(RedirectToPage("/Admin/AdminEmpl/AdPublications")); } return(Page()); }
//для отправки информации на сервер используется POST public IActionResult OnPost() { if (ModelState.IsValid) { if (Photo != null) { if (Publication.PhotoPath != null) //если фото не равняется null(удаление) { string filePath = Path.Combine(_webHostEnvironment.WebRootPath, "images", Publication.PhotoPath); //присваивется путь фото (путь к www.root, папка images, название фото) if (Publication.PhotoPath != "noimage.png") //проверка на noimage { System.IO.File.Delete(filePath); //удаление } } Publication.PhotoPath = ProcessUploadFile(); } if (Publication.Id > 0) { Publication = _publicationRepository.Update(Publication); TempData["SuccessMessage"] = $"Update {Publication.Name} successful!"; } else { Publication = _publicationRepository.Add(Publication); TempData["SuccessMessage"] = $"Adding {Publication.Name} successful!"; } return(RedirectToPage("Publications")); } return(Page()); }
public IActionResult Create(PublicationViewModel viewModel) { if (ModelState.IsValid) { var model = viewModel.MapToPublicationModel(); if (viewModel.ImageFile1 != null) { model.Image1 = _fileService.UploadImageUrlNew(viewModel.ImageFile1); } if (viewModel.ImageFile2 != null) { model.Image2 = _fileService.UploadImageUrlNew(viewModel.ImageFile2); } if (viewModel.ImageFile3 != null) { model.Image3 = _fileService.UploadImageUrlNew(viewModel.ImageFile3); } _publicationRepository.Add(model); _toastNotification.AddSuccessToastMessage(ToasrMessages.AddSuccess); _eventLogger.LogInfoEvent(HttpContext.User.Identity.Name, Common.ActivityEnum.Add, "Home Page > Publication > Add", viewModel.EnTitle1); return(RedirectToAction(nameof(Index))); } return(View(viewModel)); }
public void Add(PublicationModel model) { var entity = PublicationFactory.Create(model); _publicationRepository.Add(entity); model.Id = entity.Id; }
public async Task <Publication> CreateOrUpdate(Guid?publicationId, PublicationDto createdPublicationData) { if (publicationId == null) { var publication = _publicationRepository.Add(createdPublicationData); await _domainContext.SaveChangesAsync(); return(await _publicationRepository.GetAsync(publication.Id)); } await _publicationRepository.UpdateAsync(publicationId.Value, createdPublicationData); await _domainContext.SaveChangesAsync(); return(await _publicationRepository.GetAsync(publicationId.Value)); }
public bool Post(Publication publication) { User user = _userRepository.FindBy(x => x.Id == publication.UserId).FirstOrDefault(); try { // Vérification d'ajout de publication toutes les 10min if (user.CanPublish == true) { _publicationRepository.Add(publication); _publicationRepository.Save(); } else { return(false); } } catch (Exception e) { throw new Exception(e.Message); } return(true); }
public async Task <ActionResult <Dtos.PublicationOutputModel> > AddPublication( Dtos.PublicationInputModel publicationInputModel) { var publicationToInsert = _mapper.Map <Domain.Models.Publication>(publicationInputModel); publicationToInsert.Id = Guid.NewGuid(); var authorIdsFromInput = publicationInputModel.AuthorIds; var publicationAuthors = new List <Domain.Models.PublicationAuthors>(); foreach (var authorId in authorIdsFromInput) { var authorFromRepo = await _authorRepository.GetAsync(authorId); if (authorFromRepo == null) { return(NotFound($"Author with id: {authorId} was not found")); } var publicationAuthor = new Domain.Models.PublicationAuthors() { Author = authorFromRepo, AuthorId = authorFromRepo.Id, Publication = publicationToInsert, PublicationId = publicationToInsert.Id }; publicationAuthors.Add(publicationAuthor); } var categoryIdsFromInput = publicationInputModel.CategoryIds; var publicationCategories = new List <Domain.Models.PublicationCategories>(); foreach (var categoryId in categoryIdsFromInput) { var categoryFromRepo = await _categoryRepository.GetAsync(categoryId); if (categoryFromRepo == null) { return(NotFound($"Category with id: {categoryId} was not found")); } var publicationCategory = new Domain.Models.PublicationCategories() { Category = categoryFromRepo, CategoryId = categoryId, Publication = publicationToInsert, PublicationId = publicationToInsert.Id }; publicationCategories.Add(publicationCategory); } var publicationHouseFromInput = await _publicationHouseRepository .GetAsync(publicationInputModel.PublicationHouseId); if (publicationHouseFromInput == null) { return(NotFound($"Publication House with id: {publicationHouseFromInput.Id} was not found")); } publicationToInsert.PublicationAuthors = publicationAuthors; publicationToInsert.PublicationCategories = publicationCategories; publicationToInsert.PublicationHouseId = publicationHouseFromInput.Id; _publicationRepository.Add(publicationToInsert); await _publicationRepository.SaveChangesAsync(); var publicationOutput = await GetPublication(publicationToInsert.Id); return(CreatedAtRoute("GetPublication", new { publicationId = publicationToInsert.Id } , publicationOutput.Result)); }