Commit 4d431add authored by Bhargava Rellu's avatar Bhargava Rellu

naming input, product filtering as per order

parent f39a3a0a
...@@ -14,6 +14,9 @@ dependencies { ...@@ -14,6 +14,9 @@ dependencies {
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1' testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
// https://mvnrepository.com/artifact/mysql/mysql-connector-java // https://mvnrepository.com/artifact/mysql/mysql-connector-java
implementation group: 'mysql', name: 'mysql-connector-java', version: '8.0.16' implementation group: 'mysql', name: 'mysql-connector-java', version: '8.0.16'
// https://mvnrepository.com/artifact/org.projectlombok/lombok
compileOnly group: 'org.projectlombok', name: 'lombok', version: '1.18.12'
} }
test { test {
......
...@@ -7,6 +7,7 @@ import java.sql.SQLException; ...@@ -7,6 +7,7 @@ import java.sql.SQLException;
import java.util.Scanner; import java.util.Scanner;
import java.util.logging.Logger; import java.util.logging.Logger;
import static com.retail_store.order_management.utils.Database.getConnection;
import static com.retail_store.order_management.utils.Utility.getInt; import static com.retail_store.order_management.utils.Utility.getInt;
public class OrderManagement { public class OrderManagement {
...@@ -56,9 +57,15 @@ public class OrderManagement { ...@@ -56,9 +57,15 @@ public class OrderManagement {
"To exit please enter 4"); "To exit please enter 4");
break; break;
case 4: case 4:
flag = false; flag = false;
break; break;
case 5: case 5:
try {
getConnection().close();
} catch (SQLException e) {
logger.warning(e.getMessage());
}
logger.info(menu); logger.info(menu);
break; break;
default: default:
......
...@@ -25,8 +25,8 @@ public class RetailStoreService implements RetailStore, ProductFilter { ...@@ -25,8 +25,8 @@ public class RetailStoreService implements RetailStore, ProductFilter {
boolean productAdded = false; boolean productAdded = false;
String id = productIdGenerator(); String id = productIdGenerator();
getLogger().info("Enter Product details \n Enter Product Name"); getLogger().info("Enter Product details \n Enter Product Name");
String name = getScanner().next(); String name = getScanner().nextLine();
name += getScanner().nextLine(); getLogger().info(name);
Category category = getCategory(true, "Enter Product Category"); Category category = getCategory(true, "Enter Product Category");
Color color = getColor(true, "Select color of the product"); Color color = getColor(true, "Select color of the product");
double price = getDouble(true, "Enter price of the product"); double price = getDouble(true, "Enter price of the product");
...@@ -62,7 +62,6 @@ public class RetailStoreService implements RetailStore, ProductFilter { ...@@ -62,7 +62,6 @@ public class RetailStoreService implements RetailStore, ProductFilter {
return productAdded; return productAdded;
} }
public boolean placeOrders() { public boolean placeOrders() {
Connection connection = getConnection(); Connection connection = getConnection();
int confirmOrder; int confirmOrder;
...@@ -83,8 +82,7 @@ public class RetailStoreService implements RetailStore, ProductFilter { ...@@ -83,8 +82,7 @@ public class RetailStoreService implements RetailStore, ProductFilter {
} }
String orderId = orderIdGenerator(); String orderId = orderIdGenerator();
getLogger().info("Please enter Customer name"); getLogger().info("Please enter Customer name");
String name = getScanner().next(); String name = getScanner().nextLine();
name += getScanner().nextLine();
getLogger().info("Please enter Phone number"); getLogger().info("Please enter Phone number");
String phone = getScanner().next(); String phone = getScanner().next();
Date date = Date.valueOf(LocalDate.now()); Date date = Date.valueOf(LocalDate.now());
...@@ -178,7 +176,6 @@ public class RetailStoreService implements RetailStore, ProductFilter { ...@@ -178,7 +176,6 @@ public class RetailStoreService implements RetailStore, ProductFilter {
"\n-----------------------------\nEnter 2 to place the order" + "\n-----------------------------\nEnter 2 to place the order" +
"\n-----------------------------\nEnter 3 to go back"); "\n-----------------------------\nEnter 3 to go back");
while (menuFlag) { while (menuFlag) {
int order = getInt(); int order = getInt();
switch (order) { switch (order) {
case 1: case 1:
...@@ -346,7 +343,7 @@ public class RetailStoreService implements RetailStore, ProductFilter { ...@@ -346,7 +343,7 @@ public class RetailStoreService implements RetailStore, ProductFilter {
int chooseProductList = getInt(); int chooseProductList = getInt();
switch (chooseProductList) { switch (chooseProductList) {
case 1: case 1:
getLogger().info(order.showProducts()); getLogger().info("\n-----------------------------\n" + order.showProducts() + "\n-----------------------------\n");
break; break;
case 2: case 2:
continue; continue;
...@@ -359,12 +356,13 @@ public class RetailStoreService implements RetailStore, ProductFilter { ...@@ -359,12 +356,13 @@ public class RetailStoreService implements RetailStore, ProductFilter {
public Map<Integer, Order> getOrders(Connection connection) { public Map<Integer, Order> getOrders(Connection connection) {
Map<Integer, Order> ordersMenu = new LinkedHashMap<>(); Map<Integer, Order> ordersMenu = new LinkedHashMap<>();
List<OrderedProduct> orderedProductList = new ArrayList<>(); List<OrderedProduct> orderedProductList;
AtomicInteger number = new AtomicInteger(0); AtomicInteger number = new AtomicInteger(0);
try { try {
PreparedStatement preparedStatement = connection.prepareStatement("select * from orders order by date desc"); PreparedStatement preparedStatement = connection.prepareStatement("select * from orders order by date desc");
ResultSet resultSet = preparedStatement.executeQuery(); ResultSet resultSet = preparedStatement.executeQuery();
while (resultSet.next()) { while (resultSet.next()) {
orderedProductList = new ArrayList<>();
PreparedStatement innerPreparedStatement = connection.prepareStatement("select * from ordered_products where order_id = ?"); PreparedStatement innerPreparedStatement = connection.prepareStatement("select * from ordered_products where order_id = ?");
innerPreparedStatement.setString(1, resultSet.getString(1)); innerPreparedStatement.setString(1, resultSet.getString(1));
ResultSet innerResultSet = innerPreparedStatement.executeQuery(); ResultSet innerResultSet = innerPreparedStatement.executeQuery();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment