Exemplo n.º 1
0
        public async Task <Domain.Orders.Order> InserOrderItem(long orderId, Domain.OrderItems.OrderItem item)
        {
            if (item == null)
            {
                throw new ArgumentNullException(nameof(item));
            }

            var dbOrderItem = item.ToDalOrNull(OrderItems.DbEntites.OrderItemConverter.ToDalNew);

            var dbOrder = await _orders
                          .Include(o => o.Items)
                          .Where(o => o._id == orderId)
                          .SingleOrDefaultAsync();

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

            dbOrder.Items.Add(dbOrderItem);

            await context.SaveChangesAsync();

            return(dbOrder.ToDomainOrNull(OrderConverter.ToDomain));
        }
Exemplo n.º 2
0
        public async Task <Domain.Orders.Order> InserOrderItem(Domain.Orders.Order order, Domain.OrderItems.OrderItem item)
        {
            if (order == null)
            {
                throw new ArgumentNullException(nameof(order));
            }

            if (item == null)
            {
                throw new ArgumentNullException(nameof(item));
            }

            var dbOrderItem = item.ToDalOrNull(OrderItems.DbEntites.OrderItemConverter.ToDalNew);

            var dbOrder = order.ToDalOrNull(OrderConverter.ToDal);

            dbOrder.Items.Add(dbOrderItem);

            await context.SaveChangesAsync();

            return(dbOrder.ToDomainOrNull(OrderConverter.ToDomain));
        }