public static void FillTheDatabase() { DatabaseQueryProcessor.CreateNewProduct("Lavazza", 1500, "./img.jpg", "100% Arabica", "Good"); DatabaseQueryProcessor.CreateNewProduct("Vergnano", 2500, "./img.jpg", "100% Robusta", "Strong"); DatabaseQueryProcessor.CreateNewWorker(WorkerRole.a, "*****@*****.**", "240be518fabd2724ddb6f04eeb1da5967448d7e831c08c8fa822809f74c720a9"); DatabaseQueryProcessor.CreateNewWorker(WorkerRole.b, "*****@*****.**", "240be518fabd2724ddb6f04eeb1da5967448d7e831c08c8fa822809f74c720a9"); DatabaseQueryProcessor.CreateNewClient("*****@*****.**", "Jane", "Doe", "240be518fabd2724ddb6f04eeb1da5967448d7e831c08c8fa822809f74c720a9", "*****@*****.**"); DatabaseQueryProcessor.CreateNewAddress(0, "Poland", "Gdynia", "Rzemieslnicza", 30445, 12, "1a"); DatabaseQueryProcessor.CreateNewAddress(0, "Poland", "Warsaw", "Grodzka", 25487, 23, ""); DatabaseQueryProcessor.CreateNewOrder(0, 0, 0, 1, "2018-05-12"); DatabaseQueryProcessor.CreateNewOrderEntry(0, 0, 1); DatabaseQueryProcessor.CreateNewOrderEntry(0, 1, 2); DatabaseQueryProcessor.CreateNewOrder(0, 1, 1, 0, "2018-10-12"); DatabaseQueryProcessor.CreateNewOrderEntry(1, 0, 1); DatabaseQueryProcessor.UpdateOrder(1, 1); DatabaseQueryProcessor.UpdateOrder(1, "2018-10-14"); DatabaseQueryProcessor.CreateNewComplaint(1, 1, "I am dissatisfied", "2018-10-15", true); DatabaseQueryProcessor.CreateNewClient("*****@*****.**", "John", "Doe", "240be518fabd2724ddb6f04eeb1da5967448d7e831c08c8fa822809f74c720a9", "*****@*****.**"); DatabaseQueryProcessor.CreateNewAddress(1, "Poland", "Cracow", "Krakowska", 30000, 1, ""); DatabaseQueryProcessor.CreateNewOrder(1, 0, 2, 0, "2018-06-12"); DatabaseQueryProcessor.CreateNewOrderEntry(2, 1, 1); DatabaseQueryProcessor.CreateNewClient("*****@*****.**", "Anne", "Bottom", "240be518fabd2724ddb6f04eeb1da5967448d7e831c08c8fa822809f74c720a9", "*****@*****.**"); }
public IResult Handle(AddOrderCommand command) { int clientId = SessionRepository.GetClientIdOfSession(command.sessionToken); if (clientId == -1) { throw new Exception(); } var address = DatabaseQueryProcessor.GetAddress( clientId, command.address.country, command.address.city, command.address.street, command.address.ZIPCode, command.address.buildingNumber, command.address.apartmentNumber ); if (address == null) { throw new Exception(); } var products = DatabaseQueryProcessor.GetProducts(); var totalPrice = 0; foreach (var orderEntry in command.orderEntries) { var foundProducts = products.FindAll(p => p.name == orderEntry.name); if (foundProducts.Count != 1) { throw new Exception(); } totalPrice += foundProducts[0].price / 100 * orderEntry.quantity; } if (totalPrice.ToString("F", CultureInfo.InvariantCulture) != command.totalPrice) { throw new Exception(); } var orderId = DatabaseQueryProcessor.CreateNewOrder( clientId, 0, address.addressId, 0, DateTime.Now.ToString("yyyy-MM-dd") ); foreach (var orderEntry in command.orderEntries) { var foundProducts = products.FindAll(p => p.name == orderEntry.name); DatabaseQueryProcessor.CreateNewOrderEntry( orderId, foundProducts[0].productId, orderEntry.quantity ); } return(new SuccessInfoDto() { isSuccess = true }); }