Example #1
0
 internal static Models.Order MapOrderDTO(DTO.Orders.Order input)
 {
     Models.Order output = new Models.Order()
     {
         CreateDate            = DateTime.UtcNow,
         DeliveryAddress       = input.DeliveryAddress,
         DeliveryPosition      = GetGeometry(input.DeliveryPosition),
         DeliveryRequestedDate = input.DeliveryRequestedDate,
         IdRestaurant          = input.IdRestaurant,
         IdStatus  = (int)DTO.Orders.Status.Inserted,
         IdUser    = input.IdUser,
         OrderItem = input.OrderItem
                     .Select(item => new Models.OrderItem()
         {
             IdMenuItem   = item.IdMenuItem,
             MenuItemName = item.MenuItemName,
             Price        = item.Price,
             Quantity     = item.Quantity
         })
                     .ToList(),
         Price              = input.Price, // non calcolo somma degli item per permettere eventuali sconti
         RestaurantAddress  = input.RestaurantAddress,
         RestaurantPosition = GetGeometry(input.RestaurantPosition),
         RestaurantName     = input.RestaurantName,
         UserName           = input.UserName
     };
     return(output);
 }
Example #2
0
        internal static DTO.Orders.Order MapOrderModel(Models.Order orderDb)
        {
            DTO.Orders.Order output = new DTO.Orders.Order()
            {
                Id = orderDb.Id,
                DeliveryAddress       = orderDb.DeliveryAddress,
                DeliveryRequestedDate = orderDb.DeliveryRequestedDate,
                DeliveryPosition      = orderDb.DeliveryPositionCoordinates,
                IdRestaurant          = orderDb.IdRestaurant,
                IdStatus  = (DTO.Orders.Status)orderDb.IdStatus,
                IdUser    = orderDb.IdUser,
                OrderItem = orderDb.OrderItem
                            .Select(item => new DTO.Orders.OrderItem()
                {
                    IdMenuItem   = item.IdMenuItem,
                    MenuItemName = item.MenuItemName,
                    Price        = item.Price,
                    Quantity     = item.Quantity
                })
                            .ToList(),
                Price              = orderDb.Price, // non calcolo somma degli item per permettere eventuali sconti
                RestaurantAddress  = orderDb.RestaurantAddress,
                RestaurantPosition = orderDb.RestaurantPositionCoordinates,
                RestaurantName     = orderDb.RestaurantName,
                UserName           = orderDb.UserName
            };

            return(output);
        }
Example #3
0
        public async Task <int> AddOrder(DTO.Orders.Order order)
        {
            Models.Order newOrder = OrdersMapper.MapOrderDTO(order);
            ordersDbContext.Order.Add(newOrder);
            await ordersDbContext.SaveChangesAsync();

            return(newOrder.Id);
        }
Example #4
0
        public async Task <IActionResult> AddOrder([FromBody] DTO.Orders.Order order)
        {
            var result = await ordersService.AddOrder(order);

            return(Ok(result));
        }