Exemple #1
0
        public async Task GetSubmitArticle()
        {
            try
            {
                Nothing = false;
                SubmitArticleCanLoadMore = false;
                LoadingSubmitArticle     = true;
                var api = userDetailAPI.SubmitArticles(mid, SubmitArticlePage, order: (SubmitArticleOrder)SelectOrder);

                var results = await api.Request();

                if (results.status)
                {
                    var data = await results.GetData <JObject>();

                    if (data.code == 0)
                    {
                        var items = JsonConvert.DeserializeObject <ObservableCollection <SubmitArticleItemModel> >(data.data["articles"]?.ToString() ?? "[]");
                        if (SubmitArticleItems == null)
                        {
                            SubmitArticleItems = items;
                        }
                        else
                        {
                            foreach (var item in items)
                            {
                                SubmitArticleItems.Add(item);
                            }
                        }
                        if (SubmitArticlePage == 1 && (SubmitArticleItems == null || SubmitArticleItems.Count == 0))
                        {
                            Nothing = true;
                        }



                        var count = data.data["count"]?.ToInt32() ?? 0;
                        if (SubmitArticleItems.Count >= count)
                        {
                            SubmitArticleCanLoadMore = false;
                        }
                        else
                        {
                            SubmitArticleCanLoadMore = true;
                            SubmitArticlePage++;
                        }
                    }
                    else
                    {
                        Utils.ShowMessageToast(data.message);
                    }
                }
                else
                {
                    Utils.ShowMessageToast(results.message);
                }
            }
            catch (Exception ex)
            {
                var handel = HandelError <AnimeHomeModel>(ex);
                Utils.ShowMessageToast(handel.message);
            }
            finally
            {
                LoadingSubmitArticle = false;
            }
        }