Esempio n. 1
0
        public List <OrderSummaryViewModel> GetAllOrderSummaries(AppUser appUser)
        {
            List <OrderSummaryViewModel> model = new List <OrderSummaryViewModel>();

            var orders = _orderService.GetAllOrders().Where(I => I.CustomerId == appUser.Id).ToList();

            foreach (var order in orders)
            {
                var           orderDetails  = _orderDetailService.GetAllOrderDetails().Where(I => I.OrderId == order.Id).ToList();
                List <int>    productIds    = orderDetails.Select(I => I.ProductId).ToList();
                List <string> productImages = new List <string>();

                foreach (var productId in productIds)
                {
                    productImages.Add(_productService.Products.Single(I => I.Id == productId).Image1);
                }

                string paymentMethod      = _paymentService.GetPaymentNameWithId(order.PaymentId);
                string orderOwnerFullName = _appUserService.GetOrderOwnerFullNameWithUserId(order.CustomerId);


                model.Add(new OrderSummaryViewModel()
                {
                    OrderId          = order.Id,
                    OrderDate        = order.OrderDate,
                    CustomerFullName = orderOwnerFullName,
                    ShipStatus       = order.IsShipped ? "Kargoya Verildi" : "Kargoya Verilmedi",
                    AllowStatus      = order.IsAllowed ? "Onaylandı" : "Onay Bekliyor",
                    ProductCount     = _orderDetailService.ComputeTotalProductCount(order.Id),
                    TotalPrice       = _orderDetailService.ComputeTotalPriceOfOrder(order.Id),
                    ProductImages    = productImages
                });
            }

            return(model);
        }