Esempio n. 1
0
        public static Task <RESTServiceResponse <T> > ReadFromJson <T>(string jsonFileName, Encoding encoding = null)
        {
            try
            {
                //string jsonFileName = "Assets.TestJsonFile.json";
                //RESTServiceResponse<T> result = new RESTServiceResponse<T>();

                var    assembly = typeof(MainPage).GetTypeInfo().Assembly;
                Stream stream   = assembly.GetManifestResourceStream($"{assembly.GetName().Name}.{jsonFileName}");

                if (stream != null)
                {
                    var encodage = (encoding == null) ? Encoding.UTF8 : encoding;
                    using (var reader = new StreamReader(stream, encodage))
                    {
                        var jsonString = reader.ReadToEnd();

                        //Converting JSON Array Objects into generic list
                        RESTServiceResponse <T> result = JsonConvert.DeserializeObject <RESTServiceResponse <T> >(jsonString);
                        return(Task.FromResult(result));
                    }
                }
                else
                {
                    return(Task.FromResult(new RESTServiceResponse <T>(false, Assets.Strings.ErreurMessage)));
                }
            }
            catch (Exception ex)
            {
                return(Task.FromResult(new RESTServiceResponse <T>(false, Assets.Strings.ErreurMessage)));
            }
        }
Esempio n. 2
0
        private async Task GetFilteredDemandes(FilterStationDemandesModel FilterStationDemandes, int page)
        {
            try
            {
                //if (
                //    FilterStationDemandes.StartDate == default &&
                //    FilterStationDemandes.EndDate == default &&
                //    string.IsNullOrEmpty(FilterStationDemandes?.StatutId))
                //{
                //    return;
                //}

                //if (FilterStationDemandes?.StartDate == null && FilterStationDemandes?.EndDate == null && string.IsNullOrEmpty(FilterStationDemandes?.StatutId))


                if (page < _filterLastPage || _filterLastPage == 0)
                {
                    AppHelper.ALoadingShow("Chargement...");

                    var RequestResult = new RESTServiceResponse <PaginateDemandeModel>();
                    if (Offset != 0)
                    {
                        RequestResult = await ApiCalls.FilterStationDemandes(page, FilterStationDemandes, Offset);
                    }
                    else
                    {
                        RequestResult = await ApiCalls.FilterStationDemandes(page, filterStationDemandes : FilterStationDemandes);
                    }

                    if (RequestResult.success)
                    {
                        _filterCurentPage = RequestResult.data.current_page;
                        _filterLastPage   = RequestResult.data.last_page;

                        if (_filterCurentPage == 1)
                        {
                            StationDemandes.Clear();
                        }

                        if (RequestResult.data.data.Count == 0)
                        {
                            RefreshBtnVisible = true;
                            ContentVisible    = false;
                        }
                        else
                        {
                            foreach (var item in RequestResult.data.data)
                            {
                                StationDemandes.Add(item);
                            }
                            ContentVisible    = true;
                            RefreshBtnVisible = false;
                        }

                        _filterCurentPage++;
                    }
                    else
                    {
                        if (StationDemandes.Count <= 0)
                        {
                            ContentVisible    = false;
                            RefreshBtnVisible = true;
                        }
                        AppHelper.ASnack(message: RequestResult.message, type: SnackType.Error);
                    }
                }
                else
                {
                    AppHelper.ASnack(message: Assets.Strings.NoMoreResultMessage, type: SnackType.Info);
                }
            }
            catch (Exception ex)
            {
                AppHelper.ASnack(message: Assets.Strings.ErreurMessage, type: SnackType.Error);
            }
            finally
            {
                AppHelper.ALoadingHide();
            }
        }
Esempio n. 3
0
        private async Task GetDemandes(int page)
        {
            try
            {
                if (page < _lastPage || _lastPage == 0)
                {
                    AppHelper.ALoadingShow("Chargement...");

                    var RequestResult = new RESTServiceResponse <PaginateDemandeModel>();
                    if (Offset != 0)
                    {
                        RequestResult = await ApiCalls.GetStationDemandes(page, Offset);
                    }
                    else
                    {
                        RequestResult = await ApiCalls.GetStationDemandes(page);
                    }

                    if (RequestResult.success)
                    {
                        _curentPage = RequestResult.data.current_page;
                        _lastPage   = RequestResult.data.last_page;

                        if (RequestResult.data.data.Count == 0)
                        {
                            RefreshBtnVisible = true;
                            ContentVisible    = false;
                        }
                        else
                        {
                            foreach (var item in RequestResult.data.data)
                            {
                                StationDemandes.Add(item);
                            }
                            ContentVisible    = true;
                            RefreshBtnVisible = false;
                        }
                    }
                    else
                    {
                        if (StationDemandes.Count <= 0)
                        {
                            ContentVisible    = false;
                            RefreshBtnVisible = true;
                        }
                        AppHelper.ASnack(message: RequestResult.message, type: SnackType.Error);
                    }
                }
                else
                {
                    AppHelper.ASnack(message: Assets.Strings.NoMoreResultMessage, type: SnackType.Info);
                }
            }
            catch (Exception ex)
            {
                AppHelper.ASnack(message: Assets.Strings.ErreurMessage, type: SnackType.Error);
            }
            finally
            {
                AppHelper.ALoadingHide();
            }
        }