public virtual ActionResult Delete(AnnouncementDTO announcement)
        {
            var service = Globals.Resolve <IAnnouncementService>();
            var responseAnnouncement = service.DeleteAnnouncement(new DeleteAnnouncementRequest
            {
                AnnouncementId = announcement.AnnouncementId
            });

            return(Json(responseAnnouncement));
        }
        public virtual ActionResult Save(AnnouncementDTO announcement)
        {
            if (announcement.ExpirationDate != null &&
                announcement.StartDate > announcement.ExpirationDate.Value)
            {
                return(Json(new
                {
                    IsValid = false,
                    ErrorMessage = "Expiration_Date"
                }));
            }

            if (!ModelState.IsValid)
            {
                return(Json(new
                {
                    IsValid = false,
                    ErrorMessage = Localization.GetText("Required fields missing")
                }));
            }

            var service = Globals.Resolve <IAnnouncementService>();

            if (announcement.AnnouncementId <= 0)
            {
                var responseCreate = service.CreateAnnouncement(new CreateAnnouncementRequest
                {
                    Announcement = announcement
                });

                return(Json(responseCreate));
            }

            var responseUpdate = service.UpdateAnnouncement(new UpdateAnnouncementRequest
            {
                Announcement = announcement
            });

            return(Json(responseUpdate));
        }