/// <summary> /// 订单分页列表 /// </summary> /// <param name="search"></param> /// <returns></returns> public async Task <PageModelDto <OrderDto> > GetPagedAsync(OrderSearchDto search) { Expression <Func <Order, bool> > whereCondition = x => true; if (search.Id > 0) { whereCondition = whereCondition.And(x => x.Id == search.Id); } var pagedEntity = _orderRepo.PagedAsync(search.PageIndex, search.PageSize, whereCondition, x => x.Id); var pagedDto = _mapper.Map <PageModelDto <OrderDto> >(pagedEntity); if (pagedDto.Data.Count > 0) { //调用maint微服务获取字典,组合商品状态信息 //var rpcReuslt = await _maintRpcSrv.GetDictAsync(10000); //if (rpcReuslt.IsSuccessStatusCode && rpcReuslt.Content.Children.Count > 0) //{ // var dicts = rpcReuslt.Content.Children; // pagedDto.Data.ForEach(x => // { // //x.Status.StatusDescription = dicts.FirstOrDefault(d => d.Name == x.Status.StatusCode.ToSafeString())?.Name; // }); //} } return(pagedDto); }
public List <OrderOutputModel> GetAllOrdersByCustomerId(int customerId) { var searchDto = new OrderSearchDto { CustomerId = customerId }; var orders = _orderRepository.SearchOrder(searchDto); var output = _mapper.Map <List <OrderOutputModel> >(orders); return(output); }
private async Task <IEnumerable <Order> > SearchOrders(OrderSearchDto search) { using (var httpClient = new HttpClient()) { var request = await httpClient .AddQueryParameter("start", search.StartDate.GetValueOrDefault(DateTime.MinValue).ToString(_dateFormat)) .AddQueryParameter("end", search.EndDate.GetValueOrDefault(DateTime.MaxValue).ToString(_dateFormat)) .WithUrl(_apiUrl + "/orders/search/byDate") .GetAsync <JToken>(); var orders = _mapper.Map <List <Order> >(request["_embedded"]["orders"]); return(orders); } }
public async Task <IEnumerable <OrderDto> > Search(OrderSearchDto search) { var orders = SearchOrders(search); var clients = _clientService.SearchClients(search); await Task.WhenAll(orders, clients); var result = orders.Result .Where(order => clients.Result.Any(client => client.Id == order.ClientId)) .Select( order => CreateOrderDto(order, clients.Result) ); return(result); }
public List <OrderDto> SearchOrder(OrderSearchDto searchDto) { try { var result = DbConnection.Query <OrderDto>( "Search_Order", searchDto, commandType: CommandType.StoredProcedure ).ToList(); return(result); } catch (Exception ex) { throw ex; } }
public async Task <IEnumerable <Client> > SearchClients(OrderSearchDto search) { using (var httpClient = new HttpClient()) { var json = await httpClient .AddQueryParameter("name", search.ClientName) .AddQueryParameter("phone", search.Phone) .AddQueryParameter("email", search.Email) .WithUrl(_apiUrl + $"/clients/search/findAllClients") .GetAsync <JToken>(); var clients = _mapper.Map <List <Client> >(json["_embedded"]["clients"]); return(clients); } }
public PaginationDto <OrderDto> GetOrders(OrderSearchDto dto) { var query = _dbContext.Orders .Include(c => c.Details) .ThenInclude(c => c.Product) .AsQueryable() .Where(c => c.IsPaid); IOrderedQueryable <Order> orderedQery = query.OrderByDescending(c => c.Id); var result = orderedQery.ToPaginated(dto).ToDto(); var users = GetUsers(result.Data.Select(c => c.UserId).ToList()); SetUsers(result, users); return(result); }
public async Task <ActionResult <IEnumerable <OrderDto> > > Search( [FromQuery] String name, [FromQuery] String phone, [FromQuery] String email, [FromQuery] DateTime?startDate, [FromQuery] DateTime?endDate ) { var dto = new OrderSearchDto { ClientName = name, Email = email, Phone = phone, StartDate = startDate, EndDate = endDate }; _logger.Log(LogLevel.Information, "Search", dto); return(Ok(await _orderService.Search(dto))); }
/// <summary> /// Az aktuális felhasználóhoz tartozó étteremhez leadott rendelések áttekintő adatainak /// lekérdezése a keresési feltétel alapján. /// </summary> /// <param name="search">A rendelésre vonatkozó keresési feltétel.</param> /// <returns>Az étteremhez beérkező rendelések.</returns> public async Task <PagedListDto <OrderOverviewDto> > GetMyRestaurantOrderOverviewList(OrderSearchDto search) { string userId = httpContext.GetCurrentUserId(); int ownerRestaurantId = await userRepository.GetMyRestaurantId(userId); return(await orderRepository.GetRestaurantOrderOverviewList(ownerRestaurantId, search)); }
/// <summary> /// Az aktuális vendéghez tartozó rendelések áttekintő adatainak lekérdezése a keresési feltétel alapján. /// </summary> /// <param name="search">A rendelésre vonatkozó keresési feltétel.</param> /// <returns>A bejelentkezett vendég rendelési.</returns> public async Task <PagedListDto <OrderOverviewDto> > GetGuestOrderOverviewList(OrderSearchDto search) { string userId = httpContext.GetCurrentUserId(); return(await orderRepository.GetGuestOrderOverviewList(userId, search)); }
/// <summary> /// A megadott étteremhez tartozó rendelések áttekintő adatainak lekérése a keresési feltétel alapján. /// </summary> /// <param name="restaurantId">Az étterem azonosítója.</param> /// <param name="search">A rendelésre vonatkozó keresési feltétel.</param> /// <returns>Az étterem rendeléseinek áttekintő adatai.</returns> public async Task <PagedListDto <OrderOverviewDto> > GetRestaurantOrderOverviewList(int restaurantId, OrderSearchDto search) { return(await dbContext.Orders .Where(o => o.OrderFoods.First().Food.RestaurantId == restaurantId && search.Statuses.Contains(o.Status) && o.Invoice.UserFullName.Contains(search.GuestName) && o.CreatedAt >= search.OrderMinDate && o.CreatedAt < search.OrderMaxDate) .SortBy(search.SortBy) .ToOrderOverviewDtoPagedList(search)); }
/// <summary> /// A megadott vendéghez tartozó rendelések áttekintő adatainak lekérése a keresési feltétel alapján. /// </summary> /// <param name="guestId">A vendég azonosítója.</param> /// <param name="search">A rendelésre vonatkozó keresési feltétel.</param> /// <returns>A vendég rendeléseinek áttekintő adatai.</returns> public async Task <PagedListDto <OrderOverviewDto> > GetGuestOrderOverviewList(string guestId, OrderSearchDto search) { return(await dbContext.Orders .Where(o => o.UserId == guestId && search.Statuses.Contains(o.Status) && o.Invoice.RestaurantName.Contains(search.RestaurantName) && o.CreatedAt >= search.OrderMinDate && o.CreatedAt < search.OrderMaxDate) .SortBy(search.SortBy) .ToOrderOverviewDtoPagedList(search)); }
public async Task <PagedListDto <OrderOverviewDto> > GetMyRestaurantOrderList([FromQuery] OrderSearchDto search) { return(await orderManager.GetMyRestaurantOrderOverviewList(search)); }