public static OrderItem MapToEntity(this OrderItemModelItem orderItemModel) { var orderItem = new OrderItem(); orderItem.PrintingEditionId = orderItemModel.PrintingEditionId; orderItem.Count = orderItemModel.Count; orderItem.Amount = orderItemModel.Count * orderItemModel.Price; orderItem.Currency = orderItemModel.Currency; return(orderItem); }
public static OrderItem MapModelToEntity(OrderItemModelItem model) { var order = new OrderItem() { Amount = model.Amount, Count = model.Count, CreationDate = DateTime.Now, OrderId = model.OrderId, PrintingEditionId = model.PrintingEditionId }; return(order); }
public static OrderItemModelItem MapEntityToModel(OrderItem entity) { var model = new OrderItemModelItem() { Count = entity.Count, ProductTitle = entity.PrintingEdition.Title, ProductType = (BusinessEnum.Enums.ProductType)entity.PrintingEdition.Type, PrintingEditionId = entity.PrintingEditionId, OrderId = entity.OrderId }; return(model); }
public static OrderModelItem MapToModel(this DataAccess.Entities.Order entity) { var model = new OrderModelItem(); model.Id = entity.Id; model.Date = entity.CreationDate; model.Status = entity.Status; model.Description = entity.Description; model.User = new UserModelItem(); model.User.Id = entity.UserId; model.User.FirstName = entity.User.FirstName; model.User.LastName = entity.User.LastName; model.User.Email = entity.User.Email; model.OrderPrice = entity.OrderPrice; foreach (var item in entity.OrderItems) { if (item == null) { continue; } var orderItem = new OrderItemModelItem(); orderItem.Id = item.Id; orderItem.Amount = item.Amount; orderItem.PrintingEdition = new PrintingEditionModelItem(); orderItem.PrintingEdition.Title = item.PrintingEdition.Title; orderItem.PrintingEdition.Type = item.PrintingEdition.Type; orderItem.PrintingEdition.Price = item.PrintingEdition.Price; model.OrderItems.Add(orderItem); } return(model); }
private async Task <OrderItemModelItem> CreateOrderItemsAsync(CartModelItem model) { var paymentId = await GetPaymentIdAsync(model.TransactionId); var orderId = await GetOrderIdAsync(paymentId); var response = new OrderItemModelItem(); var items = new List <OrderItem>(); foreach (var item in model.OrderItems) { var orderItem = OrderItemMapper.MapModelToEntity(item); orderItem.OrderId = orderId; items.Add(orderItem); } var result = await _orderItemRepository.CreateRangeAsync(items); if (!result) { response.Errors.Add(ErrorConstants.ImpossibleToCreateOrderItem); } response.OrderId = orderId; return(response); }