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 async Task <IActionResult> Show(int id)
        {
            Announcement announcement = await AnnouncementService.FindByIdAsync(id);

            if (announcement == null)
            {
                return(NotFound());
            }

            await InteractionService.AddInteractionAsync(CurrentUser, announcement, Interaction.InteractionType.VIEW);

            var response = new Serializer.AnnouncementSerializer.ShowSerializer(announcement, CurrentUser);

            return(Ok(response.Response));
        }