예제 #1
0
        /// <summary>
        /// Get the occurences list.
        /// </summary>
        /// <returns></returns>
        private async Task <OccurrencesViewData> GetOccurrences()
        {
            OccurrenceResultData occurrenceResultData =
                await WebApiClient.GetAsync <OccurrenceResultData>(Constant.WebApiControllerOccurrences,
                                                                   Constant.WebApiOccurrenceList);

            List <OccurrenceViewData> occurrencesList = new List <OccurrenceViewData>();

            if (occurrenceResultData == null || !occurrenceResultData.OperationSuccess ||
                occurrenceResultData.OccurrenceDtoList == null)
            {
                return(null);
            }
            foreach (var occurrenceDto in occurrenceResultData.OccurrenceDtoList)
            {
                OccurrenceViewData occurrence = new OccurrenceViewData
                {
                    TranslationsList = new List <OccurrenceTranslationItemData>(),
                    Occurrence       = occurrenceDto
                };
                occurrence.TranslationsList = await GetOccurrenceTranslations(occurrenceDto.OccurrenceId);

                occurrencesList.Add(occurrence);
            }

            OccurrencesViewData occurrencesViewData = new OccurrencesViewData {
                Occurrences = occurrencesList
            };

            return(occurrencesViewData);
        }
예제 #2
0
        /// <summary>
        /// Delete Occurrence
        /// </summary>
        /// <param name="occurrenceId"></param>
        /// <returns></returns>
        public async Task <ActionResult> DeleteOccurrence(int occurrenceId)
        {
            JsonReturnData data = new JsonReturnData();

            if (occurrenceId > 0)
            {
                string param = $"{nameof(occurrenceId)}={occurrenceId}";
                OccurrenceResultData result = await WebApiClient.DeleteAsync <OccurrenceResultData>(Constant.WebApiControllerOccurrences, Constant.WebApiRemoveOccurrence, 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)
                {
                    data.SuccessMessage   = UserResources.Ok;
                    data.OperationSuccess = true;
                }
            }
            else
            {
                data.ErrorMessage     = UserResources.RequiredUserId;
                data.OperationSuccess = false;
            }
            return(new OmsJsonResult(data));
        }
예제 #3
0
        /// <summary>
        /// Get Occurrence Model for Update
        /// </summary>
        /// <param name="occurrenceId"></param>
        /// <returns></returns>
        public async Task <ActionResult> GetUpdateOccurrence(int?occurrenceId)
        {
            OccurrenceFormData occurrenceFormData = new OccurrenceFormData
            {
                TranslationsList = new List <OccurrenceTranslationFormData>()
            };

            if (occurrenceId.HasValue)
            {
                OccurrenceRequestData findOccurrenceRequest = new OccurrenceRequestData
                {
                    OccurrenceDto = new OccurrenceItemData {
                        OccurrenceId = occurrenceId.Value
                    },
                    FindOccurrenceDto = FindOccurrenceItemData.OccurrenceId
                };
                OccurrenceResultData resultOccurrence =
                    await WebApiClient.PostFormJsonAsync <OccurrenceRequestData, OccurrenceResultData>(
                        Constant.WebApiControllerOccurrences, Constant.WebApiFindOccurrences, findOccurrenceRequest);

                if (resultOccurrence != null && resultOccurrence.OperationSuccess && resultOccurrence.OccurrenceDto != null)
                {
                    occurrenceFormData = resultOccurrence.OccurrenceDto.ToFormData();
                    OccurrenceTranslationRequestData findOccurrenceTranslationRequest = new OccurrenceTranslationRequestData()
                    {
                        OccurrenceTranslationDto = new OccurrenceTranslationItemData {
                            OccurrenceId = occurrenceId.Value
                        },
                        FindOccurrenceTranslationDto = FindOccurrenceTranslationItemData.OccurrenceId
                    };
                    OccurrenceTranslationResultData resultOccurrenceTranslation =
                        await WebApiClient
                        .PostFormJsonAsync <OccurrenceTranslationRequestData, OccurrenceTranslationResultData>(
                            Constant.WebApiControllerOccurrences, Constant.WebApiFindOccurrenceTranslations,
                            findOccurrenceTranslationRequest);

                    if (resultOccurrenceTranslation != null && resultOccurrenceTranslation.OperationSuccess && resultOccurrenceTranslation.OccurrenceTranslationDtoList != null)
                    {
                        occurrenceFormData.TranslationsList = resultOccurrenceTranslation.OccurrenceTranslationDtoList.ToFormDataList();
                    }
                }
            }
            ViewBag.Action = "UpdateOccurrence";
            return(PartialView("Partials/_ManageOccurrence", occurrenceFormData));
        }
예제 #4
0
        public async Task <OmsJsonResult> UpdateOccurrence(OccurrenceFormData occurrenceFormData)
        {
            JsonReturnData data = new JsonReturnData();

            if (ModelState.IsValid)
            {
                OccurrenceRequestData request          = occurrenceFormData.ToRequestData();
                OccurrenceResultData  occurrenceResult =
                    await WebApiClient.PostFormJsonAsync <OccurrenceRequestData, OccurrenceResultData>(
                        Constant.WebApiControllerOccurrences, Constant.WebApiUpdateOccurrence, request);

                if (occurrenceResult != null && occurrenceResult.OperationSuccess)
                {
                    OccurrenceTranslationRequestData occurrenceTranslationRequestData = new OccurrenceTranslationRequestData
                    {
                        OccurrenceTranslationDtoList = occurrenceFormData.TranslationsList.ToItemDataList()
                    };

                    OccurrenceTranslationResultData occurrenceTranslationResultData =
                        await WebApiClient
                        .PostFormJsonAsync <OccurrenceTranslationRequestData, OccurrenceTranslationResultData>(
                            Constant.WebApiControllerOccurrences, Constant.WebApiUpdateOccurrenceTranslationRange,
                            occurrenceTranslationRequestData);

                    if (occurrenceTranslationResultData == null)
                    {
                        data.ErrorMessage     = SharedResources.ServerError;
                        data.OperationSuccess = false;
                    }
                    else if (!occurrenceTranslationResultData.OperationSuccess && occurrenceTranslationResultData.Errors != null && occurrenceTranslationResultData.Errors.Count > 0)
                    {
                        data.ErrorMessage     = occurrenceTranslationResultData.Errors.First();
                        data.OperationSuccess = false;
                    }
                    else if (occurrenceTranslationResultData.OperationSuccess)
                    {
                        data.SuccessMessage   = UserResources.Ok;
                        data.OperationSuccess = true;
                    }
                }
                else if (occurrenceResult == null)
                {
                    data.ErrorMessage     = SharedResources.ServerError;
                    data.OperationSuccess = false;
                }
                else if (!occurrenceResult.OperationSuccess && occurrenceResult.Errors != null && occurrenceResult.Errors.Count > 0)
                {
                    data.ErrorMessage     = occurrenceResult.Errors.First();
                    data.OperationSuccess = false;
                }
                else if (occurrenceResult.OperationSuccess)
                {
                    data.SuccessMessage   = UserResources.Ok;
                    data.OperationSuccess = true;
                }
            }
            else
            {
                data = new JsonReturnData
                {
                    ErrorMessage     = OccurrenceResources.RequiredFields,
                    OperationSuccess = false
                };
            }
            return(new OmsJsonResult(data));
        }