public async Task <IActionResult> Update(AnnouncementResource announcementResource, int id) { Announcement announcement = await AnnouncementService.FindByIdAsync(id); if (announcement == null) { return(NotFound()); } if (!announcement.User.Equals(CurrentUser)) { return(Unauthorized()); } if (!ModelState.IsValid) { return(UnprocessableEntity(ModelState.GetErrorMessages())); } announcement = Mapper.Map <AnnouncementResource, Announcement>(announcementResource); announcement = await AnnouncementService.UpdateAnnouncement(announcement, id); if (announcement == null) { return(UnprocessableEntity(new { message = "Duyuru güncellenemedi" })); } var response = new Serializer.AnnouncementSerializer.ShowSerializer(announcement, CurrentUser); return(Ok(response.Response)); }
public void InsertPhotoToAnnouncementResources(Announcement announcementModel, BlobModel blobModel) { int newFileID = InsertBlobToFileLocationStorage(blobModel, "Announcement"); AnnouncementResource announcementResource = new AnnouncementResource() { FileID = newFileID, AnnouncementID = announcementModel.AnnouncementID }; dbObject.AnnouncementResources.Add(announcementResource); dbObject.SaveChanges(); }
public async Task <IActionResult> CreateAnnouncement([FromBody] AnnouncementResource announcementResource) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var announcement = mapper.Map <AnnouncementResource, Announcement>(announcementResource); repository.AddAnnouncement(announcement); await unitOfWork.Complete(); announcement = await repository.GetAnnouncement(announcement.AnnouncementId); await SendMailAsync(announcement.Content); var result = mapper.Map <Announcement, AnnouncementResource>(announcement); return(Ok(result)); }
public async Task <IActionResult> Create(AnnouncementResource announcementResource) { if (!ModelState.IsValid) { return(UnprocessableEntity(ModelState.GetErrorMessages())); } Announcement announcement = Mapper.Map <AnnouncementResource, Announcement>(announcementResource); announcement = await AnnouncementService.AddAnnouncement(announcement, CurrentUser); if (announcement == null) { return(UnprocessableEntity(new { message = "Duyuru eklenemedi" })); } var response = new Serializer.AnnouncementSerializer.CreateSerializer(announcement, CurrentUser); return(Created($"/api/announcement/${announcement.Id}", response.Response)); }
/* * Deletes the selected the image of an announcement and deletes it from database and the azure blob storage. * */ public ActionResult RemoveAnnouncementBlob(string file, int?fileID) { try { if (User.IsInRole("Administrator")) { if (file == null || fileID == null) { return(RedirectToAction("Announcement", "WebsiteContent")); } else { if (websiteActions.DeleteAnnouncementFile(file)) //para kung hindi nabura yung image, hindi na buburahin sa database { AnnouncementResource announcementResource = websiteActions.GetAnnouncementResourceByFileID((int)fileID); websiteActions.DeleteFromAnnouncementResources(announcementResource); FileLocationStorage fileLocationStorage = websiteActions.GetFileLocationStorageByFileID((int)fileID); websiteActions.DeleteFromFileLocationStorage(fileLocationStorage); return(RedirectToAction("Announcements", "Admin")); } else { TempData["errorMessage"] = "There was an error in the server. Please try again"; return(RedirectToAction("Announcement", "WebsiteContent")); } //actions2.DeleteAnnouncementFile(file); } } else { TempData["errorMessage"] = "Sorry you do not have access."; return(RedirectToAction("Announcement", "WebsiteContent")); } } catch (Exception e) { TempData["errorMessage"] = "There was an error in removing the photo you have selected."; return(RedirectToAction("Announcement", "WebsiteContent")); } }
public async Task <IActionResult> UpdateAnnouncement(int id, [FromBody] AnnouncementResource announcementResource) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var announcement = await repository.GetAnnouncement(id); if (announcement == null) { return(NotFound()); } mapper.Map <AnnouncementResource, Announcement>(announcementResource, announcement); repository.UpdateAnnouncementUsers(announcement, announcementResource); await unitOfWork.Complete(); var result = mapper.Map <Announcement, AnnouncementResource>(announcement); return(Ok(result)); }
public void DeleteFromAnnouncementResources(AnnouncementResource announcementResource) { dbObject.AnnouncementResources.Remove(announcementResource); dbObject.SaveChanges(); }
void IAnnouncementRepository.UpdateAnnouncementUsers(Announcement announcement, AnnouncementResource announcementResource) { if (announcementResource.AnnouncementUsers != null && announcementResource.AnnouncementUsers.Count >= 0) { //remove old announcementUsers announcement.AnnouncementUsers.Clear(); //add new enrollments var newAnnouncementUsers = context.AnnouncementUser.Where(e => announcementResource.AnnouncementUsers.Any(id => id == e.AnnouncementUserId)).ToList(); foreach (var a in newAnnouncementUsers) { announcement.AnnouncementUsers.Add(a); } } }