public void AddOrder(DTO.OrderDto currentOrder, DTO.CustomerDto currentCustomer) { var db = new PapaBobEntities(); var dbOrders = db.Orders; var dbCustomers = db.Customers; var newOrder = new Persistence.Order(); CreateNewOrder(currentOrder, out newOrder); var dbCustomersList = db.Customers.ToList(); var check_if_customer_exits = CustomerRepository.CustomerExists(dbCustomersList, currentCustomer); if (!check_if_customer_exits) { var newCustomer = new Customer(); newCustomer = CustomerRepository.CreateNewCustomer(currentCustomer); newOrder.customer_id = newCustomer.customer_id; var tempAmountOwing = currentOrder.payment_type != DTO.Enums.PaymentType.Cash ? currentOrder.cost : 0; newCustomer.amount_owing = double.Parse(tempAmountOwing.ToString()); newOrder.Customer = newCustomer; dbCustomers.Add(newCustomer); } else { var existingCustomer = dbCustomersList?.Find(p => p.phone_number == currentCustomer.phone_number); newOrder.customer_id = existingCustomer.customer_id; var tempAmountOwing = currentOrder.payment_type != DTO.Enums.PaymentType.Cash ? currentOrder.cost : 0; existingCustomer.amount_owing += double.Parse(tempAmountOwing.ToString()); } dbOrders.Add(newOrder); db.SaveChanges(); }
private static void CreateNewOrder(DTO.Order current_order, out Persistence.Order new_order) { new_order = new Persistence.Order(); OrderMapper(current_order, out new_order); System.Guid order_id = Guid.NewGuid(); new_order.order_id = order_id; }
public static void AddOrder(DTO.Order current_order, DTO.Customer current_customer) { PapaBobEntities db = new PapaBobEntities(); System.Data.Entity.DbSet <Order> dbOrders = db.Orders; var dbCustomers = db.Customers; var new_order = new Persistence.Order(); CreateNewOrder(current_order, out new_order); var dbCustomersList = db.Customers.ToList(); bool check_if_customer_exits = CustomerRepository.CustomerExists(dbCustomersList, current_customer); if (!check_if_customer_exits) { var new_customer = new Customer(); CustomerRepository.CreateNewCustomer(current_customer, out new_customer); new_order.customer_id = new_customer.customer_id; new_customer.amount_owing = current_order.payment_type != DTO.Payment.Cash ? current_order.cost : 0; new_order.Customer = new_customer; dbCustomers.Add(new_customer); } else { var existing_customer = dbCustomersList?.Find(p => p.phone_number == current_customer.phone_number); new_order.customer_id = existing_customer.customer_id; existing_customer.amount_owing += current_order.payment_type != DTO.Payment.Cash ? current_order.cost : 0; } dbOrders.Add(new_order); db.SaveChanges(); }
private static void OrderMapper(DTO.Order current_order, out Persistence.Order new_order) { new_order = new Persistence.Order(); new_order.completed = false; new_order.cost = current_order.cost; new_order.crust = (Persistence.Crust)current_order.crust; new_order.payment_type = (Persistence.Payment)current_order.payment_type; new_order.size = (Persistence.Size)current_order.size; new_order.onions = current_order.onions; new_order.green_peppers = current_order.green_peppers; new_order.sausage = current_order.sausage; new_order.pepperoni = current_order.pepperoni; }
private static void OrderMapper(DTO.OrderDto currentOrder, out Persistence.Order newOrder) { newOrder = new Persistence.Order { completed = false, cost = currentOrder.cost, crust = (Persistence.Crust)currentOrder.crust, payment_type = (Persistence.PaymentType)currentOrder.payment_type, size = (Persistence.Size)currentOrder.size, onions = currentOrder.onions, green_peppers = currentOrder.green_peppers, sausage = currentOrder.sausage, pepperoni = currentOrder.pepperoni }; }
private static void OrderMapper(Persistence.Order current_order, out DTO.Order new_order) { new_order = new DTO.Order(); new_order.completed = false; new_order.cost = current_order.cost; new_order.size = (DTO.Size)current_order.size; new_order.crust = (DTO.Crust)current_order.crust; new_order.payment_type = (DTO.Payment)current_order.payment_type; new_order.onions = current_order.onions; new_order.green_peppers = current_order.green_peppers; new_order.sausage = current_order.sausage; new_order.pepperoni = current_order.pepperoni; new_order.customer_id = current_order.customer_id; new_order.order_id = current_order.order_id; DTO.Customer customer = new DTO.Customer(); CustomerRepository.CustomerMapper(current_order.Customer, out customer); new_order.Customer = customer; }
private static void OrderMapper(Persistence.Order currentOrder, out DTO.OrderDto newOrder) { newOrder = new DTO.OrderDto { completed = false, cost = currentOrder.cost, size = (DTO.Enums.Size)currentOrder.size, crust = (DTO.Enums.Crust)currentOrder.crust, payment_type = (DTO.Enums.PaymentType)currentOrder.payment_type, onions = currentOrder.onions, green_peppers = currentOrder.green_peppers, sausage = currentOrder.sausage, pepperoni = currentOrder.pepperoni, customer_id = currentOrder.customer_id, order_id = currentOrder.order_id }; var customer = new DTO.CustomerDto(); CustomerRepository.CustomerMapper(currentOrder.Customer, out customer); newOrder.Customer = customer; }