Ejemplo n.º 1
0
        /// <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));
        }
Ejemplo n.º 2
0
        /// <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));
        }
Ejemplo n.º 3
0
        /// <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);
        }
Ejemplo n.º 4
0
        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));
        }