public IHttpActionResult GetMyOrders(int truckOwnerId)
        {
            var orderBids = _context.OrderBids
                .Where(b => b.TruckOwnerId == truckOwnerId)
                .Select(b => b.OrderId)
                .ToList();

            var cancelledOrders = _context.Orders
                .Where(o => orderBids.Contains(o.OrderId))
                .Where(o => o.OrderStatus == Constants.OrderStatus.CANCELLED.ToString())
                .ToList();

            var completedOrders = _context.Orders
                .Where(o => orderBids.Contains(o.OrderId))
                .Where(o => o.OrderStatus == Constants.OrderStatus.COMPLETED.ToString())
                .ToList();

            var runningOrders = _context.Orders
                .Where(o => orderBids.Contains(o.OrderId))
                .Where(o => o.OrderStatus == Constants.OrderStatus.CONFIRMED.ToString())
                .ToList();

            var list = cancelledOrders.Select(Mapper.Map<Order, OrderDto>);

            GetOrderListDto ordersList = new GetOrderListDto
            {
                RunningOrders = runningOrders.Select(Mapper.Map<Order, OrderDto>),
                CompletedOrders = completedOrders.Select(Mapper.Map<Order, OrderDto>),
                CancelledOrders = cancelledOrders.Select(Mapper.Map<Order, OrderDto>)
            };

            return Ok(ordersList);
        }
Exemple #2
0
 public Task <PagedResultDto <OrderDto> > GetListAsync(GetOrderListDto input)
 {
     return(_service.GetListAsync(input));
 }