コード例 #1
0
        public async Task <IActionResult> Index(string keyword, int pageIndex = 1, int pageSize = 5)
        {
            var request = new GetProcessCompletePaging()
            {
                Keyword   = keyword,
                PageIndex = pageIndex,
                PageSize  = pageSize
            };
            var data = await _processingDetailApiClient.GetProcessComplete(request);

            ViewBag.Keyword = keyword;

            return(View(data.ResultObj));
        }
コード例 #2
0
        public async Task <IActionResult> GetProcessComplete([FromQuery] GetProcessCompletePaging bundle)
        {
            var result = await _processingDetailService.GetProcessComplete(bundle);

            return(Ok(result));
        }
コード例 #3
0
        public async Task <ApiResult <PagedResult <ProcessingVoucherVm> > > GetProcessComplete(GetProcessCompletePaging bundle)
        {
            var process = _context.ProcessingVouchers.Include(x => x.ProcessingVoucherDetails)
                          .Include(x => x.ProcessPlan).Include(x => x.Creator);

            IQueryable <ProcessingVoucher> processResult;

            if (!string.IsNullOrEmpty(bundle.Keyword))
            {
                processResult = process
                                .Include(x => x.ProcessPlan.Responsible)
                                .Where(x => x.Code.Contains(bundle.Keyword) || x.ProcessPlan.Code.Contains(bundle.Keyword) ||
                                       x.ProcessPlan.Responsible.Code.Contains(bundle.Keyword));
            }
            else
            {
                processResult = process.Include(x => x.ProcessPlan.Responsible);
            }

            processResult = processResult.Where(x => x.Status == true);
            int totalRow = await processResult.CountAsync();

            var data = await processResult
                       .Skip((bundle.PageIndex - 1) *bundle.PageSize)
                       .Take(bundle.PageSize)
                       .Select(x => new ProcessingVoucherVm()
            {
                Id              = x.Id,
                Code            = x.Code,
                CreateDate      = x.CreateDate.ToString("dd-MM-yyyy"),
                IdPlan          = x.IdPlan,
                CodePlan        = x.ProcessPlan.Code,
                Creator         = x.Creator.Code,
                NameResponsible = x.ProcessPlan.Responsible.Code
            }).ToListAsync();

            var pagedResult = new PagedResult <ProcessingVoucherVm>()
            {
                TotalRecords = totalRow,
                PageIndex    = bundle.PageIndex,
                PageSize     = bundle.PageSize,
                Items        = data
            };

            return(new ApiSuccessResult <PagedResult <ProcessingVoucherVm> >(pagedResult));
        }
コード例 #4
0
        public async Task <ApiResult <PagedResult <ProcessingVoucherVm> > > GetProcessComplete(GetProcessCompletePaging bundle)
        {
            var url = $"/api/ProcessingDetail/paging?pageIndex=" +
                      $"{bundle.PageIndex}&pageSize={bundle.PageSize}&keyword={bundle.Keyword}";
            var result = await GetListAsync <ProcessingVoucherVm>(url);

            return(result);
        }