Ejemplo n.º 1
0
        public IEnumerable <PartsDTO> GetPartsForDetail(DetailSelectedRequest request)
        {
            var detail = _ordersContext.OrderDetails
                         .Include(x => x.Order)
                         .ThenInclude(x => x.Address)
                         .ThenInclude(x => x.Customer)
                         .FirstOrDefault(x => x.ProductId == request.ProductId && x.Order.Address.Customer.Email == request.EmailAddress);

            if (detail == null)
            {
                return(null);
            }

            var product = _productsContext.Products.Include(x => x.PartLinks)
                          .ThenInclude(x => x.Part)
                          .First(x => x.Id == request.ProductId);

            var parts = product.PartLinks.Select(x => x.Part).Select(x => new PartsDTO()
            {
                PartId    = x.Id,
                PartImage = x.PartImageUrl,
                PartName  = x.PartName
            });

            return(parts);
        }
Ejemplo n.º 2
0
        public IActionResult DetailSelected(DetailSelectedRequest request)
        {
            var parts = _partOrderingService.GetPartsForDetail(request);

            var vm = new ViewPartsViewModel()
            {
                Parts        = parts,
                EmailAddress = request.EmailAddress,
                OrderId      = request.OrderReference,
                ProductId    = request.ProductId
            };

            return(View(vm));
        }