/// <summary> /// Get NewsletterMail Model for Update /// </summary> /// <param name="newsletterMailId"></param> /// <returns></returns> public async Task <ActionResult> GetUpdateNewsletterMail(int?newsletterMailId) { NewsletterMailFormData newsletterMailFormData = new NewsletterMailFormData { TranslationsList = new List <NewsletterMailTranslationFormData>() }; if (newsletterMailId.HasValue) { NewsletterMailRequestData findNewsletterMailRequest = new NewsletterMailRequestData { NewsletterMailDto = new NewsletterMailItemData { NewsletterMailId = newsletterMailId.Value }, FindNewsletterMailDto = FindNewsletterMailItemData.NewsletterMailId }; NewsletterMailResultData resultNewsletterMail = await WebApiClient.PostFormJsonAsync <NewsletterMailRequestData, NewsletterMailResultData>(Constant.WebApiControllerNewsletters, Constant.WebApiFindNewsletterMails, findNewsletterMailRequest); if (resultNewsletterMail != null && resultNewsletterMail.OperationSuccess && resultNewsletterMail.NewsletterMailDto != null) { newsletterMailFormData.NewsletterMailId = resultNewsletterMail.NewsletterMailDto.NewsletterMailId; NewsletterMailTranslationRequestData findNewsletterMailTranslationRequest = new NewsletterMailTranslationRequestData() { NewsletterMailTranslationDto = new NewsletterMailTranslationItemData { NewsletterMailId = newsletterMailId.Value }, FindNewsletterMailTranslationDto = FindNewsletterMailTranslationItemData.NewsletterMailId }; NewsletterMailTranslationResultData resultNewsletterMailTranslation = await WebApiClient.PostFormJsonAsync <NewsletterMailTranslationRequestData, NewsletterMailTranslationResultData>(Constant.WebApiControllerNewsletters, Constant.WebApiFindNewsletterMailTranslations, findNewsletterMailTranslationRequest); if (resultNewsletterMailTranslation != null && resultNewsletterMailTranslation.OperationSuccess && resultNewsletterMailTranslation.NewsletterMailTranslationDtoList != null) { newsletterMailFormData.TranslationsList = resultNewsletterMailTranslation.NewsletterMailTranslationDtoList.ToFormDataList(); } } } ViewBag.Action = "UpdateNewsletterMail"; return(PartialView("Partials/_ManageNewsletterMail", newsletterMailFormData)); }
/// <summary> /// Delete NewsletterMail /// </summary> /// <param name="newsletterMailId"></param> /// <returns></returns> public async Task <ActionResult> DeleteNewsletterMail(int newsletterMailId) { JsonReturnData data = new JsonReturnData(); if (newsletterMailId > 0) { string param = $"{nameof(newsletterMailId)}={newsletterMailId}"; NewsletterMailResultData result = await WebApiClient.DeleteAsync <NewsletterMailResultData>(Constant.WebApiControllerNewsletters, Constant.WebApiRemoveNewsletterMail, param); if (result == null) { data.ErrorMessage = SharedResources.ServerError; data.OperationSuccess = false; } else if (!result.OperationSuccess && result.Errors != null && result.Errors.Count > 0) { data.ErrorMessage = result.Errors.First(); data.OperationSuccess = false; } else if (result.OperationSuccess) { if (Directory.Exists(Server.MapPath($"~/Images/Newsletters/" + newsletterMailId))) { Directory.Delete(Server.MapPath($"~/Images/Newsletters/" + newsletterMailId), true); } data.SuccessMessage = UserResources.Ok; data.OperationSuccess = true; } } else { data.ErrorMessage = UserResources.RequiredUserId; data.OperationSuccess = false; } return(new OmsJsonResult(data)); }
/// <summary> /// Get the activites list. /// </summary> /// <returns></returns> private async Task <List <NewsletterMailViewData> > GetNewsletterMailsList() { NewsletterMailResultData newsletterMailResultData = await WebApiClient.GetAsync <NewsletterMailResultData>(Constant.WebApiControllerNewsletters, Constant.WebApiNewsletterMailList); List <NewsletterMailViewData> newsletterMailsList = new List <NewsletterMailViewData>(); if (newsletterMailResultData == null || !newsletterMailResultData.OperationSuccess || newsletterMailResultData.NewsletterMailDtoList == null) { return(newsletterMailsList); } foreach (var newsletterMailDto in newsletterMailResultData.NewsletterMailDtoList) { NewsletterMailViewData newsletterMail = new NewsletterMailViewData { TranslationsList = new List <NewsletterMailTranslationItemData>(), NewsletterMail = newsletterMailDto }; newsletterMail.TranslationsList = await GetNewsletterMailTranslations(newsletterMailDto.NewsletterMailId); newsletterMailsList.Add(newsletterMail); } return(newsletterMailsList); }
public async Task <OmsJsonResult> UpdateNewsletterMail(NewsletterMailFormData newsletterMailFormData) { JsonReturnData data = new JsonReturnData(); if (ModelState.IsValid) { NewsletterMailRequestData request = newsletterMailFormData.ToRequestData(); NewsletterMailResultData newsletterMailResult = await WebApiClient.PostFormJsonAsync <NewsletterMailRequestData, NewsletterMailResultData>(Constant.WebApiControllerNewsletters, Constant.WebApiUpdateNewsletterMail, request); if (newsletterMailResult != null && newsletterMailResult.OperationSuccess) { NewsletterMailTranslationRequestData newsletterMailTranslationRequestData = new NewsletterMailTranslationRequestData { NewsletterMailTranslationDtoList = newsletterMailFormData.TranslationsList.ToItemDataList() }; NewsletterMailTranslationResultData newsletterMailTranslationResultData = await WebApiClient.PostFormJsonAsync <NewsletterMailTranslationRequestData, NewsletterMailTranslationResultData>(Constant.WebApiControllerNewsletters, Constant.WebApiUpdateNewsletterMailTranslationRange, newsletterMailTranslationRequestData); if (newsletterMailTranslationResultData == null) { data.ErrorMessage = SharedResources.ServerError; data.OperationSuccess = false; } else if (!newsletterMailTranslationResultData.OperationSuccess && newsletterMailTranslationResultData.Errors != null && newsletterMailTranslationResultData.Errors.Count > 0) { data.ErrorMessage = newsletterMailTranslationResultData.Errors.First(); data.OperationSuccess = false; } else if (newsletterMailTranslationResultData.OperationSuccess) { data.SuccessMessage = UserResources.Ok; data.OperationSuccess = true; } } else if (newsletterMailResult == null) { data.ErrorMessage = SharedResources.ServerError; data.OperationSuccess = false; } else if (!newsletterMailResult.OperationSuccess && newsletterMailResult.Errors != null && newsletterMailResult.Errors.Count > 0) { data.ErrorMessage = newsletterMailResult.Errors.First(); data.OperationSuccess = false; } else if (newsletterMailResult.OperationSuccess) { foreach (var translation in newsletterMailFormData.TranslationsList) { translation.NewsletterMailSource?.SaveAs( Server.MapPath( $"~/Images/Newsletters/" + translation.NewsletterMailId + $"/") + translation.NewsletterMailSource.FileName); } data.SuccessMessage = UserResources.Ok; data.OperationSuccess = true; } } else { data = new JsonReturnData { ErrorMessage = NewsletterMailResources.RequiredFields, OperationSuccess = false }; } return(new OmsJsonResult(data)); }