Ejemplo n.º 1
0
        public ActionResult <OrderOutputDTO> PurchaseItem(OrderInputDTO itemPurchased)
        {
            ClaimsIdentity ci       = HttpContext.User.Identities.FirstOrDefault();
            Claim          c        = ci.FindFirst("UserName");
            string         username = c.Value;
            Order          o        = new Order {
                UserName = username, ProductID = itemPurchased.ProductID, Quantity = itemPurchased.Quantity
            };
            Order          newOrder = _repository.newOrder(o); //ProductID is always valid in A2
            OrderOutputDTO orderOut = new OrderOutputDTO {
                Id        = newOrder.Id,
                UserName  = newOrder.UserName,
                ProductID = newOrder.ProductID,
                Quantity  = newOrder.Quantity
            };

            return(Ok(orderOut));
        }
Ejemplo n.º 2
0
        public OrderOutputDTO GetOrderById(int orderId)
        {
            Order order = this.customerService.GetOrderById(orderId);
            IList <ConfiguratedMealDTO> configuredMeal = new List <ConfiguratedMealDTO>();

            if (order.ConfiguredMeals != null)
            {
                IList <string> garnishiesNames = new List <string>();
                foreach (var cm in order.ConfiguredMeals)
                {
                    ConfiguratedMealDTO configMeal = new ConfiguratedMealDTO();
                    if (order.ConfiguredMeals != null)
                    {
                        if (cm.SelectedGarnishes != null)
                        {
                            foreach (var g in cm.SelectedGarnishes)
                            {
                                garnishiesNames.Add(g.Name);
                            }
                        }

                        configMeal.Meal = new MealOutputDTO
                        {
                            Id             = cm.Meal.Id,
                            Days           = cm.Meal.Days,
                            Description    = cm.Meal.Description,
                            GarnishiesName = garnishiesNames,
                            Name           = cm.Meal.Name,
                            Price          = cm.Meal.Price
                        };
                        configuredMeal.Add(configMeal);
                    }
                }
            }
            OrderOutputDTO orderDTO = new OrderOutputDTO
            {
                Id     = order.Id,
                Seller = new UserOutputDTO
                {
                    Id    = order.Seller.Id,
                    Name  = order.Seller.Name,
                    Email = order.Seller.Email
                },
                Customer = new UserOutputDTO
                {
                    Id    = order.Customer.Id,
                    Name  = order.Customer.Name,
                    Email = order.Customer.Email
                },
                ConfiguredMeals = configuredMeal,
                Status          = (OrderStatusEnumDTO)order.Status,
                Withdrawal      = new WithdrawalInputDTO
                {
                    CEP         = order.Withdrawal.CEP,
                    FinalHour   = Convert.ToString(order.Withdrawal.FinalHour),
                    InitialHour = Convert.ToString(order.Withdrawal.InitialHour),
                    Latitude    = order.Withdrawal.Latitude,
                    Longitude   = order.Withdrawal.Longitude,
                    Number      = order.Withdrawal.Number,
                    SellerId    = order.Withdrawal.Seller.Id,
                    Street      = order.Withdrawal.Street
                }
            };

            return(orderDTO);
        }