private CUSTOMER_ADDRESS AddCustomerAdress(CustomerTemplate customerTemplate) { CUSTOMER_ADDRESS customerAdress = new CUSTOMER_ADDRESS { Description = customerTemplate.Adress }; Repository.Context.CUSTOMER_ADDRESS.Add(customerAdress); return(customerAdress); }
private CUSTOMER AddCustomer(CustomerTemplate customerTemplate, CUSTOMER_ADDRESS customerAdress) { CUSTOMER customer = new CUSTOMER { Name = customerTemplate.Name, CustomerAdressId = customerAdress.Id }; Repository.Context.CUSTOMER.Add(customer); return(customer); }
private ORDER AddOrder(OrderDetailTemplate orderTemplate, CUSTOMER_ADDRESS customerAdress, CUSTOMER customer) { ORDER order = new ORDER { CustomerId = customer.Id, TotalPrice = orderTemplate.TotalPrice, DiscountPrice = orderTemplate.OrderTotalPrice, CustomerAddressDescription = customerAdress.Description }; Repository.Context.ORDER.Add(order); return(order); }
public ServiceResult <int> CreateOrder(CustomerTemplate customerTemplate, List <OrderTemplate> orderList, OrderDetailTemplate orderTemplate) { var serviceResult = new ServiceResult <int>(); try { CUSTOMER_ADDRESS customerAdress = AddCustomerAdress(customerTemplate); Repository.Commit(); CUSTOMER customer = AddCustomer(customerTemplate, customerAdress); Repository.Commit(); ORDER order = AddOrder(orderTemplate, customerAdress, customer); Repository.Commit(); foreach (var item in orderList) { if (item.Count > 1) { for (int i = 0; i < item.Count; i++) { AddOrderItem(order, item); } } else { AddOrderItem(order, item); } } Repository.Commit(); serviceResult.Result = order.Id; } catch (Exception ex) { serviceResult.Exception = ex; serviceResult.HasError = true; } return(serviceResult); }