public async Task <OrderListSearchResult> GetModelListAsync(long?orderId, string keyword, DateTime?startTime, DateTime?endTime, int pageIndex, int pageSize) { using (MyDbContext dbc = new MyDbContext()) { OrderListSearchResult result = new OrderListSearchResult(); var entities = dbc.GetAll <OrderListEntity>().Include(o => o.Goods).Include(o => o.Order).AsNoTracking(); if (orderId != null) { entities = entities.Where(a => a.OrderId == orderId); } if (!string.IsNullOrEmpty(keyword)) { entities = entities.Where(g => g.Goods.Name.Contains(keyword) || g.Goods.Code.Contains(keyword)); } if (startTime != null) { entities = entities.Where(a => a.CreateTime >= startTime); } if (endTime != null) { entities = entities.Where(a => SqlFunctions.DateDiff("day", endTime, a.CreateTime) <= 0); } result.PageCount = (int)Math.Ceiling((await entities.LongCountAsync()) * 1.0f / pageSize); var orderListResult = await entities.OrderByDescending(a => a.CreateTime).Skip((pageIndex - 1) * pageSize).Take(pageSize).ToListAsync(); result.OrderLists = orderListResult.Select(a => ToDTO(a)).ToArray(); return(result); } }
public OrderListDTO[] GetModelList(long?orderId) { using (MyDbContext dbc = new MyDbContext()) { OrderListSearchResult result = new OrderListSearchResult(); var entities = dbc.GetAll <OrderListEntity>(); if (orderId != null) { entities = entities.Where(a => a.OrderId == orderId); } return(entities.ToList().Select(o => ToDTO(o)).ToArray()); } }
public async Task <ActionResult> GetDetail(long id) { OrderDTO dto = await orderService.GetModelAsync(id); OrderListSearchResult result = await orderListService.GetModelListAsync(dto.Id, null, null, null, 1, 100); DeliverDetailViewModel model = new DeliverDetailViewModel(); model.Order = dto; model.OrderList = result.OrderLists; return(Json(new AjaxResult { Status = 1, Data = model })); }
public async Task <ActionResult> GetDetail(long id) { OrderDTO dto = await orderService.GetModelAsync(id); OrderListSearchResult result = await orderListService.GetModelListAsync(dto.Id, null, null, null, 1, 100); ReturnDetailViewModel model = new ReturnDetailViewModel(); model.Order = dto; model.OrderList = result.OrderLists; model.GoodsAmount = result.OrderLists.Sum(o => o.TotalFee); return(Json(new AjaxResult { Status = 1, Data = model })); }