Beispiel #1
0
        public async Task <IActionResult> GetQuestionsAsync(
            [FromQuery] Guid?gcId,
            [FromQuery] int?p         = 1,
            [FromQuery] string filter = "")
        {
            if (p == null || p <= 0)
            {
                p = 1;
            }
            ViewBag.p = p.Value;

            var serchInp = new GetGrammarDTO
            {
                Filter            = filter ?? "",
                MaxResultCount    = AppTheme.Limit,
                SkipCount         = (p.Value - 1) * AppTheme.Limit,
                GrammarCategoryId = gcId ?? null
            };
            var res = await _Grammarervice.GetBaseListAsync(serchInp);

            if (gcId == null || gcId == Guid.Empty)
            {
                ViewBag.GroupName = L["All"];
            }
            else
            {
                var qg = await _GrammarCategoryService.GetAsync(gcId.Value);

                if (!qg.Success || qg.Data == null)
                {
                    ViewBag.GroupName = L["Unknow"];
                }
                else
                {
                    ViewBag.GroupName = qg.Data.Name;
                }
            }
            if (res.Success)
            {
                PagedResultDto <GrammarBaseDTO> Containers = res.Data;

                string listRes = string.Format("Showing {0} to {1} of {2} entries",
                                               res.Data.TotalCount > 0 ? serchInp.SkipCount + 1 : 0, serchInp.SkipCount + res.Data.Items.Count, res.Data.TotalCount);
                if (!filter.IsNullOrEmpty())
                {
                    listRes += string.Format(" for \"{0}\"", serchInp.Filter);
                }
                ViewBag.ListState = listRes;

                ViewBag.Filter     = filter;
                ViewBag.Pagination = PaginateHelper.Generate(
                    "javascript:syncGrammar('" + gcId + "','{0}', '" + filter + "');",
                    p.Value, Containers.TotalCount, AppTheme.Limit);
                return(PartialView("~/Pages/Manager/Grammars/Partials/Grammars.cshtml", Containers));
            }
            else
            {
                return(PartialView(AppTheme.ContentNothing));
            }
        }
Beispiel #2
0
        public async Task <IActionResult> GetWordClassesAsync(
            [FromQuery] Guid?gcId,
            [FromQuery] int?p         = 1,
            [FromQuery] string filter = "")
        {
            if (p == null || p <= 0)
            {
                p = 1;
            }
            ViewBag.p = p.Value;

            ViewBag.Cate = L["All"];
            if (gcId != null && gcId != Guid.Empty)
            {
                var gc = await _GrammarCategoryService.GetAsync(gcId.Value);

                if (gc.Success && gc.Data != null)
                {
                    ViewBag.Cate = gc.Data.Name;
                }
            }

            var serchInp = new GetGrammarDTO
            {
                Filter            = filter ?? "",
                MaxResultCount    = AppTheme.Limit,
                SkipCount         = (p.Value - 1) * AppTheme.Limit,
                GrammarCategoryId = gcId
            };
            var res = await _GrammarService.GetBaseListAsync(serchInp);

            if (res.Success)
            {
                PagedResultDto <GrammarBaseDTO> Containers = res.Data;

                string listRes = string.Format("Showing {0} to {1} of {2} entries",
                                               res.Data.TotalCount > 0 ? serchInp.SkipCount + 1 : 0, serchInp.SkipCount + res.Data.Items.Count, res.Data.TotalCount);
                if (!filter.IsNullOrEmpty())
                {
                    listRes += string.Format(" for \"{0}\"", serchInp.Filter);
                }
                ViewBag.ListState = listRes;

                ViewBag.Filter     = filter;
                ViewBag.Pagination = PaginateHelper.Generate(
                    "javascript:syncVt('" + gcId + "','{0}', '" + filter + "');",
                    p.Value, Containers.TotalCount, AppTheme.Limit);
                return(PartialView(TableView, Containers));
            }
            else
            {
                return(PartialView(AppTheme.ContentNothing));
            }
        }