示例#1
0
        PagedList <GetPagedListResulrModel> IOrderStrategy.GetPagedList(GetPagedListRequestModel input, ShopDbContext db)
        {
            var query = db.Query <ConglomerationOrder>()
                        .Where(m => m.PayTime.HasValue && m.PayTime != null)
                        .Where(m => m.ShopId == input.ShopId)
                        .Where(m => m.OrderNumber.Contains(input.SearchId) || m.PickupCode.Contains(input.SearchId))
                        .Include(m => m.ConglomerationSetUp)

                        .AsNoTracking()
                        .OrderByDescending(m => m.CreateTime)
                        .ToPagedList(input.PageIndex, input.PageSize);

            foreach (var item in query)
            {
                if (item.Type == ConsignmentType.快递)
                {
                    item.ConglomerationExpress = db.ConglomerationExpress.Find(item.ConglomerationExpressId);
                }
            }
            var result = _mapper.Map <PagedList <GetPagedListResulrModel> >(query);

            result.PageIndex      = query.PageIndex;
            result.PageSize       = query.PageSize;
            result.TotalItemCount = query.TotalItemCount;
            return(result);
        }
示例#2
0
        PagedList <GetPagedListResulrModel> IOrderStrategy.GetPagedList(GetPagedListRequestModel input, ShopDbContext db)
        {
            var query = db.Query <ShopOrder>()
                        .Where(m => m.PayTime.HasValue && m.PayTime != null)
                        .Where(m => m.IsTakeOut)
                        .Where(m => m.ShopId == input.ShopId)
                        .Where(m => m.OrderNumber.Contains(input.SearchId))
                        .AsNoTracking()
                        .OrderByDescending(m => m.AddTime)
                        .ToPagedList(input.PageIndex, input.PageSize);

            var result = _mapper.Map <PagedList <GetPagedListResulrModel> >(query);

            foreach (var resultItem in result)
            {
                var takoutInfo = db.ShopOrderTakeouts.FirstOrDefault(m => m.ShopOrderId.Equals(resultItem.OrderId));
                if (takoutInfo != null)
                {
                    resultItem.Address       = takoutInfo.Address;
                    resultItem.TakeOutPhone  = takoutInfo.Phone;
                    resultItem.TakeOutName   = takoutInfo.Name;
                    resultItem.TakeOutStatus = takoutInfo.Status;
                    resultItem.TakeWay       = takoutInfo.TakeWay;
                }
            }

            result.PageIndex      = query.PageIndex;
            result.PageSize       = query.PageSize;
            result.TotalItemCount = query.TotalItemCount;
            return(result);
        }
示例#3
0
        //[Authorize]
        public APIResult GetPagedList([FromBody] GetPagedListRequestModel args)
        {
            CheckShopActor(args.ShopId, ShopActorType.超级管理员);
            var orderContext = new OrderContext(args.OrderType, _mapper);
            var list         = orderContext.ExecuteGetPagedList(args, db);


            return(Success(new
            {
                PageIndex = list.PageIndex,
                PageSize = list.PageSize,
                TotalCount = list.TotalItemCount,
                Items = list.ToList()
            }));
        }
示例#4
0
        PagedList <GetPagedListResulrModel> IOrderStrategy.GetPagedList(GetPagedListRequestModel input, ShopDbContext db)
        {
            var query = db.Query <ShopOrder>()
                        .Where(m => m.PayTime.HasValue)
                        .Where(m => m.ShopOrderSelfHelpId.HasValue)
                        .Where(m => m.ShopId == input.ShopId)
                        .Where(m => m.OrderNumber.Contains(input.SearchId))
                        .OrderByDescending(m => m.AddTime)
                        .AsNoTracking()
                        .ToPagedList(input.PageIndex, input.PageSize);

            var result = _mapper.Map <PagedList <GetPagedListResulrModel> >(query);

            result.PageIndex      = query.PageIndex;
            result.PageSize       = query.PageSize;
            result.TotalItemCount = query.TotalItemCount;
            return(result);
        }
示例#5
0
 public PagedList <GetPagedListResulrModel> ExecuteGetPagedList(GetPagedListRequestModel input, ShopDbContext db)
 {
     return(strategy.GetPagedList(input, db));
 }