/// <summary> /// From FORMDATA To REQUESTDATA /// </summary> /// <param name="newsletterMailFormData"></param> /// <returns></returns> public static NewsletterMailRequestData ToRequestData(this NewsletterMailFormData newsletterMailFormData) { if (newsletterMailFormData == null) { return(new NewsletterMailRequestData()); } return(new NewsletterMailRequestData { NewsletterMailDto = newsletterMailFormData.ToItemData() }); }
/// <summary> /// FROM ITEM DATA TO FORM DATA. /// </summary> /// <param name="itemData">the itemData to convert</param> /// <returns>the formdata result</returns> public static NewsletterMailFormData ToFormData(this NewsletterMailItemData itemData) { if (itemData == null) { return(new NewsletterMailFormData()); } NewsletterMailFormData formData = new NewsletterMailFormData { NewsletterMailId = itemData.NewsletterMailId, }; return(formData); }
/// <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> /// Get newsletterMail form to create. /// </summary> /// <returns></returns> public async Task <ActionResult> GetCreateNewsletterMail() { NewsletterMailFormData newsletterMailFormData = new NewsletterMailFormData { TranslationsList = new List <NewsletterMailTranslationFormData>() }; LanguageResultData result = await WebApiClient.GetAsync <LanguageResultData>(Constant.WebApiControllerLanguages, Constant.WebApiLanguageList); if (result != null && result.OperationSuccess && result.LanguageDtoList != null) { foreach (var language in result.LanguageDtoList) { var translation = new NewsletterMailTranslationFormData { LanguagePrefix = language.LanguagePrefix, LanguageId = language.LanguageId, }; newsletterMailFormData.TranslationsList.Add(translation); } } ViewBag.Action = "CreateNewsletterMail"; return(PartialView("Partials/_ManageNewsletterMail", newsletterMailFormData)); }
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)); }