diff --git a/error.log b/error.log index e969e7b..30f2c51 100644 --- a/error.log +++ b/error.log @@ -21756,3 +21756,60 @@ Caused by: java.sql.SQLSyntaxErrorException: PROCEDURE onlinestore.DeletetItem d at com.datamasters.DAO.DaoImpl.ItemDaoImpl.remove(ItemDaoImpl.java:201) ... 43 more +Timestamp: 2023-11-24T21:49:38.175871 +An exception occurred: +com.datamasters.DAO.DAOException: Error in SQL + at com.datamasters.DAO.DaoImpl.ItemDaoImpl.insert(ItemDaoImpl.java:75) + at com.datamasters.controlador.Controller.addItem(Controller.java:61) + at com.datamasters.vista.ManageOS.addItems(ManageOS.java:146) + at com.datamasters.vista.ManageOS.manageItems(ManageOS.java:64) + at com.datamasters.vista.ManageOS.run(ManageOS.java:35) + at com.datamasters.vista.OnlineStore.main(OnlineStore.java:10) +Caused by: java.sql.SQLSyntaxErrorException: PROCEDURE onlinestore.InsertItem does not exist + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:121) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:916) + at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:354) + at com.mysql.cj.jdbc.CallableStatement.execute(CallableStatement.java:847) + at com.datamasters.DAO.DaoImpl.ItemDaoImpl.insert(ItemDaoImpl.java:71) + ... 5 more + +Timestamp: 2023-11-24T21:52:34.762068700 +An exception occurred: +com.datamasters.DAO.DAOException: Error in SQL + at com.datamasters.DAO.DaoImpl.ItemDaoImpl.insert(ItemDaoImpl.java:75) + at com.datamasters.controlador.Controller.addItem(Controller.java:61) + at com.datamasters.vista.ManageOS.addItems(ManageOS.java:146) + at com.datamasters.vista.ManageOS.manageItems(ManageOS.java:64) + at com.datamasters.vista.ManageOS.run(ManageOS.java:35) + at com.datamasters.vista.OnlineStore.main(OnlineStore.java:10) +Caused by: java.sql.SQLSyntaxErrorException: PROCEDURE onlinestore.InsertItem does not exist + at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:121) + at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) + at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:916) + at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:354) + at com.mysql.cj.jdbc.CallableStatement.execute(CallableStatement.java:847) + at com.datamasters.DAO.DaoImpl.ItemDaoImpl.insert(ItemDaoImpl.java:71) + ... 5 more + +Timestamp: 2023-11-24T22:08:17.934465800 +An exception occurred: +java.lang.IllegalArgumentException: No enum constant com.datamasters.modelo.CustomerType.STABDAR + at java.base/java.lang.Enum.valueOf(Unknown Source) + at com.datamasters.modelo.CustomerType.valueOf(CustomerType.java:1) + at com.datamasters.vista.ManageOS.addCustomer(ManageOS.java:181) + at com.datamasters.vista.ManageOS.manageCustomers(ManageOS.java:88) + at com.datamasters.vista.ManageOS.run(ManageOS.java:38) + at com.datamasters.vista.OnlineStore.main(OnlineStore.java:10) + +Timestamp: 2023-11-24T23:06:44.472302600 +An exception occurred: +java.lang.IllegalArgumentException: No enum constant com.datamasters.modelo.CustomerType. + at java.base/java.lang.Enum.valueOf(Unknown Source) + at com.datamasters.modelo.CustomerType.valueOf(CustomerType.java:1) + at com.datamasters.vista.ManageOS.addCustomer(ManageOS.java:205) + at com.datamasters.vista.ManageOS.addOrder(ManageOS.java:278) + at com.datamasters.vista.ManageOS.manageOrders(ManageOS.java:139) + at com.datamasters.vista.ManageOS.run(ManageOS.java:47) + at com.datamasters.vista.OnlineStore.main(OnlineStore.java:10) + diff --git a/src/main/java/com/datamasters/modelo/Customer.java b/src/main/java/com/datamasters/modelo/Customer.java index 9530211..e6131d9 100644 --- a/src/main/java/com/datamasters/modelo/Customer.java +++ b/src/main/java/com/datamasters/modelo/Customer.java @@ -9,7 +9,8 @@ public abstract class Customer { private double membershipFee; private double shippingDiscount; - public Customer(String name, String address, String id, String email, CustomerType customerType, double membershipFee, double shippingDiscount) { + public Customer(String name, String address, String id, String email, CustomerType customerType, + double membershipFee, double shippingDiscount) { this.name = name; this.address = address; this.id = id; @@ -51,7 +52,9 @@ public void setEmail(String email) { this.email = email; } - public double getMembershipFee() { return this.membershipFee; } + public double getMembershipFee() { + return this.membershipFee; + } public void setMembershipFee(double membershipFee) { this.membershipFee = membershipFee; @@ -60,6 +63,7 @@ public void setMembershipFee(double membershipFee) { public CustomerType getCustomerType() { return customerType; } + public void setCustomerType(CustomerType customerType) { this.customerType = customerType; } @@ -80,14 +84,15 @@ public void setShippingDiscount(double shippingDiscount) { @Override public String toString() { - return "Customer{" + - "name='" + name + '\'' + - ", address='" + address + '\'' + - ", id='" + id + '\'' + - ", email='" + email + '\'' + - ", customerType=" + customerType + - ", membershipFee=" + membershipFee + - ", shippingDiscount=" + shippingDiscount + - '}'; + StringBuilder stringBuilder = new StringBuilder(); + stringBuilder.append("Nombre: ").append(name).append("\n"); + stringBuilder.append("Direccion: ").append(address).append("\n"); + stringBuilder.append("ID: ").append(id).append("\n"); + stringBuilder.append("Correo electronico: ").append(email).append("\n"); + stringBuilder.append("Tipo de cliente: ").append(customerType).append("\n"); + stringBuilder.append("Tarifa de membresia: ").append(String.format("%.2f", membershipFee)).append("\n"); + stringBuilder.append("Descuento de envio: ").append(String.format("%.2f", shippingDiscount)).append("\n"); + stringBuilder.append("\n----------------------------------------").append("\n"); + return stringBuilder.toString(); } } diff --git a/src/main/java/com/datamasters/modelo/Item.java b/src/main/java/com/datamasters/modelo/Item.java index d49ae9a..f53d4ca 100644 --- a/src/main/java/com/datamasters/modelo/Item.java +++ b/src/main/java/com/datamasters/modelo/Item.java @@ -1,6 +1,6 @@ package com.datamasters.modelo; -public class Item { +public class Item { private String code; private String description; private double sellingPrice; @@ -76,13 +76,14 @@ public void setPreparationTimeMinutes(int preparationTimeMinutes) { @Override public String toString() { - return "Item{" + - "code='" + this.code + '\'' + - ", description='" + this.description + '\'' + - ", sellingPrice=" + this.sellingPrice + - ", shippingCost=" + this.shippingCost + - ", preparationTimeMinutes=" + this.preparationTimeMinutes + - '}'; + StringBuilder stringBuilder = new StringBuilder(); + stringBuilder.append("Codigo: ").append(this.code).append("\n"); + stringBuilder.append("Descripcion: ").append(this.description).append("\n"); + stringBuilder.append("Precio de venta: ").append(this.sellingPrice).append("\n"); + stringBuilder.append("Costo de envio: ").append(this.shippingCost).append("\n"); + stringBuilder.append("Tiempo de preparacion (minutos): ").append(this.preparationTimeMinutes).append("\n"); + stringBuilder.append("\n----------------------------------------").append("\n"); + return stringBuilder.toString(); } -} +} diff --git a/src/main/java/com/datamasters/modelo/Orders.java b/src/main/java/com/datamasters/modelo/Orders.java index a2b76a6..04ba05f 100644 --- a/src/main/java/com/datamasters/modelo/Orders.java +++ b/src/main/java/com/datamasters/modelo/Orders.java @@ -16,8 +16,9 @@ public Orders(int orderNumber, Customer customer, Item item, int quantityUnits, this.item = item; this.quantityUnits = quantityUnits; this.orderDateTime = orderDateTime; - this.preparationTimeMinutes = item.getPreparationTimeMinutes()*quantityUnits; + this.preparationTimeMinutes = item.getPreparationTimeMinutes() * quantityUnits; } + public int getOrderNumber() { return orderNumber; } @@ -87,18 +88,21 @@ public boolean isCancelable(LocalDateTime currentTime) { @Override public String toString() { - return "Order{" + - "orderNumber=" + orderNumber + - ", customer=" + customer.getId() + customer.getName() + - ", item=" + item.getCode() +item.getDescription() + - ", quantityUnits=" + quantityUnits + - ", Item price= " + item.getSellingPrice()+ - ", Order price= " + calculateOrderPrice() + - ", orderDateTime=" + orderDateTime + - ", preparationTimeMinutes=" + this.preparationTimeMinutes + - ", orderIsCancelable=" + isCancelable(LocalDateTime.now()) + - ", shippingCost= " + item.getShippingCost()+ - ", orderIsSent=" + orderIsSent(LocalDateTime.now()) + - '}'; + StringBuilder stringBuilder = new StringBuilder(); + stringBuilder.append("Numero de pedido: ").append(orderNumber).append("\n"); + stringBuilder.append("Cliente: ").append(customer.getId()).append(", ").append(customer.getName()).append("\n"); + stringBuilder.append("Articulo: ").append(item.getCode()).append(", ").append(item.getDescription()) + .append("\n"); + stringBuilder.append("Cantidad de unidades: ").append(quantityUnits).append("\n"); + stringBuilder.append("Precio del articulo: ").append(item.getSellingPrice()).append("\n"); + stringBuilder.append("Precio del pedido: ").append(calculateOrderPrice()).append("\n"); + stringBuilder.append("Fecha y hora del pedido: ").append(orderDateTime).append("\n"); + stringBuilder.append("Tiempo de preparacion (minutos): ").append(preparationTimeMinutes).append("\n"); + stringBuilder.append("Es posible cancelar el pedido: ").append(isCancelable(LocalDateTime.now())).append("\n"); + stringBuilder.append("Costo de envio: ").append(item.getShippingCost()).append("\n"); + stringBuilder.append("El pedido ha sido enviado: ").append(orderIsSent(LocalDateTime.now())).append("\n"); + stringBuilder.append("\n----------------------------------------").append("\n"); + return stringBuilder.toString(); } + } diff --git a/src/main/java/com/datamasters/modelo/PremiumCustomer.java b/src/main/java/com/datamasters/modelo/PremiumCustomer.java index c9c63ef..47a034f 100644 --- a/src/main/java/com/datamasters/modelo/PremiumCustomer.java +++ b/src/main/java/com/datamasters/modelo/PremiumCustomer.java @@ -1,7 +1,8 @@ package com.datamasters.modelo; public class PremiumCustomer extends Customer { - public PremiumCustomer(String name, String address, String id, String email, double membershipFee, double shippingDiscount) { + public PremiumCustomer(String name, String address, String id, String email, double membershipFee, + double shippingDiscount) { super(name, address, id, email, CustomerType.PREMIUM, membershipFee, shippingDiscount); } @@ -22,14 +23,16 @@ public double shippingDiscount() { @Override public String toString() { - return "PremiumCustomer{" + - "name='" + getName() + '\'' + - ", address='" + getAddress() + '\'' + - ", id='" + getId() + '\'' + - ", email='" + getEmail() + '\'' + - ", customerType=" + getCustomerType() + - ", membershipFee=" + getMembershipFee() + - ", shippingDiscount=" + getShippingDiscount() + - '}'; + StringBuilder stringBuilder = new StringBuilder(); + stringBuilder.append("Nombre: ").append(getName()).append("\n"); + stringBuilder.append("Dirección: ").append(getAddress()).append("\n"); + stringBuilder.append("ID: ").append(getId()).append("\n"); + stringBuilder.append("Correo electrónico: ").append(getEmail()).append("\n"); + stringBuilder.append("Tipo de cliente: ").append(getCustomerType()).append("\n"); + stringBuilder.append("Tarifa de membresía: ").append(String.format("%.2f", getMembershipFee())).append("\n"); + stringBuilder.append("Descuento de envío: ").append(String.format("%.2f", getShippingDiscount())).append("\n"); + stringBuilder.append("\n----------------------------------------").append("\n"); + return stringBuilder.toString(); } + } diff --git a/src/main/java/com/datamasters/modelo/StandardCustomer.java b/src/main/java/com/datamasters/modelo/StandardCustomer.java index 3232175..a21eb0e 100644 --- a/src/main/java/com/datamasters/modelo/StandardCustomer.java +++ b/src/main/java/com/datamasters/modelo/StandardCustomer.java @@ -22,12 +22,14 @@ public double shippingDiscount() { @Override public String toString() { - return "StandardCustomer{" + - "name='" + getName() + '\'' + - ", address='" + getAddress() + '\'' + - ", id='" + getId() + '\'' + - ", email='" + getEmail() + '\'' + - ", customerType=" + getCustomerType() + - '}'; + StringBuilder stringBuilder = new StringBuilder(); + stringBuilder.append("Nombre: ").append(getName()).append("\n"); + stringBuilder.append("Dirección: ").append(getAddress()).append("\n"); + stringBuilder.append("ID: ").append(getId()).append("\n"); + stringBuilder.append("Correo electrónico: ").append(getEmail()).append("\n"); + stringBuilder.append("Tipo de cliente: ").append(getCustomerType()).append("\n"); + stringBuilder.append("\n----------------------------------------").append("\n"); + return stringBuilder.toString(); } + } diff --git a/src/main/java/com/datamasters/vista/ManageOS.java b/src/main/java/com/datamasters/vista/ManageOS.java index a9a7bb3..e434b73 100644 --- a/src/main/java/com/datamasters/vista/ManageOS.java +++ b/src/main/java/com/datamasters/vista/ManageOS.java @@ -13,6 +13,7 @@ public class ManageOS { private final Controller controller; private final Scanner scanner; private final ExceptionHandler exceptionHandler; + public ManageOS() throws DAOException { this.controller = new Controller(); this.scanner = new Scanner(System.in); @@ -23,11 +24,16 @@ public void run() throws DAOException, SQLException { boolean exit = false; while (!exit) { - System.out.println("1. Manage Items"); - System.out.println("2. Manage Customers"); - System.out.println("3. Manage Orders"); - System.out.println("0. Exit"); + System.out.print("\n========== Menu ==========\n" + + "1. Gestionar Articulos\n" + + "2. Gestionar Clientes\n" + + "3. Gestionar Pedidos\n" + + "0. Salir\n" + + "==========================\n" + + "Ingrese su eleccion: "); + int choice = scanner.nextInt(); + System.out.println("\n----------------------------"); scanner.nextLine(); // Consume the newline character switch (choice) { @@ -53,10 +59,15 @@ public void run() throws DAOException, SQLException { } private void manageItems() throws DAOException { - System.out.println("1. Add Item"); - System.out.println("2. Delete Item"); - System.out.println("3. Show Item"); + System.out.print("\n========== Menu Articulos ==========\n" + + "1. Añadir Articulo\n" + + "2. Eliminar Articulo\n" + + "3. Mostrar Articulo\n" + + "==========================\n" + + "Ingrese su eleccion: "); + int choice = scanner.nextInt(); + System.out.println("\n----------------------------\n"); scanner.nextLine(); // Consume the newline character switch (choice) { @@ -75,12 +86,18 @@ private void manageItems() throws DAOException { } private void manageCustomers() throws DAOException, SQLException { - System.out.println("1. Add Customer"); - System.out.println("2. Delete Customer"); - System.out.println("3. Show Customers"); - System.out.println("4. Show Standard Customers"); - System.out.println("5. Show Premium Customers"); + + System.out.print("\n========== Menu Clientes ==========\n" + + "1. Agregar Cliente\n" + + "2. Eliminar Cliente\n" + + "3. Mostrar Clientes\n" + + "4. Mostrar Clientes STANDARD\n" + + "5. Mostrar Clientes PREMIUM\n" + + "==========================\n" + + "Ingrese su eleccion: "); + int choice = scanner.nextInt(); + System.out.println("\n----------------------------\n"); scanner.nextLine(); // Consume the newline character switch (choice) { @@ -105,11 +122,16 @@ private void manageCustomers() throws DAOException, SQLException { } private void manageOrders() throws DAOException, SQLException { - System.out.println("1. Add Order"); - System.out.println("2. Delete Order"); - System.out.println("3. Show Pending Orders"); - System.out.println("4. Show Sent Orders"); + System.out.print("\n========== Menu Pedidos ==========\n" + + "1. Agregar Pedido\n" + + "2. Eliminar Pedido\n" + + "3. Mostrar Pedidos Pendientes\n" + + "4. Mostrar Pedidos Enviados\n" + + "==========================\n" + + "Ingrese su eleccion: "); + int choice = scanner.nextInt(); + System.out.println("\n----------------------------\n"); scanner.nextLine(); // Consume the newline character switch (choice) { @@ -126,146 +148,162 @@ private void manageOrders() throws DAOException, SQLException { showSentOrders(); break; default: - System.out.println("Invalid choice. Please try again."); + System.out.println("Opción no válida. Por favor, inténtelo de nuevo."); } } private void addItems() { - System.out.print("Enter Item code: "); + System.out.print("Ingrese el código del artículo: "); String code = scanner.nextLine(); - System.out.print("Enter Item description: "); + System.out.print("Ingrese la descripción del artículo: "); String description = scanner.nextLine(); - System.out.print("Enter selling price: "); + System.out.print("Ingrese el precio de venta: "); double sellingPrice = scanner.nextDouble(); - System.out.print("Enter shipping cost: "); + System.out.print("Ingrese el costo de envío: "); double shippingCost = scanner.nextDouble(); - System.out.print("Enter preparation time (minutes): "); + System.out.print("Ingrese el tiempo de preparación (minutos): "); int preparationTimeMinutes = scanner.nextInt(); Item item = new Item(code, description, sellingPrice, shippingCost, preparationTimeMinutes); controller.addItem(item); - System.out.println("Item added successfully."); + System.out.println("Articulo añadido correctamente."); } + public void removeItem() throws DAOException { - System.out.println("Enter code of Item to delete"); + System.out.println("Ingrese el codigo del artículo a eliminar"); String code = scanner.nextLine(); ArrayList items = controller.getItems(); for (Item item : items) { - if(code.equals(item.getCode())){ + if (code.equals(item.getCode())) { controller.removeItem(item); - System.out.println("Item has been deleted"); + System.out.println("\nEl articulo (" + item.getDescription() + ") ha sido eliminado.\n"); } } } + private void showItems() throws DAOException { ArrayList items = controller.getItems(); - System.out.println("Items:"); + System.out.println("Articulos:\n"); for (Item item : items) { System.out.println(item); } } private void addCustomer() { - System.out.print("Enter customer name: "); + System.out.print("Ingrese el nombre del cliente: "); String name = scanner.nextLine(); - System.out.print("Enter customer address: "); + System.out.print("Ingrese la direccion del cliente: "); String address = scanner.nextLine(); - System.out.print("Enter customer ID: "); + System.out.print("Ingrese el ID del cliente: "); String id = scanner.nextLine(); - System.out.print("Enter customer email: "); + System.out.print("Ingrese el correo electronico del cliente: "); String email = scanner.nextLine(); - System.out.print("Enter customer type (STANDARD or PREMIUM): "); + System.out.print("Ingrese el tipo de cliente (STANDARD or PREMIUM): "); try { CustomerType customerType = CustomerType.valueOf(scanner.nextLine().toUpperCase()); if (customerType == CustomerType.STANDARD) { Customer customer = new StandardCustomer(name, address, id, email); controller.addCustomer(customer); - customer.setId(controller.getCustomers().get(controller.getCustomers().size()-1).getId()); - System.out.println("Standard customer added successfully."); + customer.setId(controller.getCustomers().get(controller.getCustomers().size() - 1).getId()); + System.out.println("\nCliente STANDARD añadido exitosamente."); } else if (customerType == CustomerType.PREMIUM) { - System.out.print("Enter membership fee: "); + System.out.print("Ingrese la tarifa de membresia:"); double membershipFee = scanner.nextDouble(); - System.out.print("Enter shipping discount: "); + System.out.print("Ingrese el descuento de envio:"); double shippingDiscount = scanner.nextDouble(); Customer customer = new PremiumCustomer(name, address, id, email, membershipFee, shippingDiscount); controller.addCustomer(customer); - customer.setId(controller.getCustomers().get(controller.getCustomers().size()-1).getId()); - System.out.println("Premium customer added successfully."); + customer.setId(controller.getCustomers().get(controller.getCustomers().size() - 1).getId()); + System.out.println("\nCliente PREMIUM añadido exitosamente."); } else { - System.out.println("Invalid customer type. Please try again."); + System.out.println("Tipo de cliente no valido. Por favor, intentelo de nuevo."); } } catch (Exception ex) { exceptionHandler.handleException(ex); } } + public void removeCustomer() throws DAOException, SQLException { - System.out.println("Enter id of customer to remove"); + System.out.println("Ingrese el ID del cliente a eliminar."); String id = scanner.nextLine(); ArrayList customers = controller.getCustomers(); for (Customer customer : customers) { - if(id.equals(customer.getId())){ + if (id.equals(customer.getId())) { controller.removeCustomer(customer); - System.out.println("Customer has been removed"); + System.out.println("\nEl cliente (" + customer.getName() + ") ha sido eliminado."); } } } + private void showCustomers() throws DAOException, SQLException { ArrayList customers = controller.getCustomers(); - System.out.println("Customers:"); - for (Customer customer : customers) { - System.out.println(customer); + if (customers.isEmpty()) { + System.out.println("\nNo hay clientes.\n"); + } else { + System.out.println("Clientes:\n"); + for (Customer customer : customers) { + System.out.println(customer); + } } } private void showStandardCustomers() throws DAOException, SQLException { ArrayList standardCustomers = controller.getCustomersByType(CustomerType.STANDARD); - System.out.println("Standard Customers:"); - for (Customer customer : standardCustomers) { - System.out.println(customer); + if (standardCustomers.isEmpty()) { + System.out.println("\nNo hay clientes STANDARD.\n"); + } else { + System.out.println("Clientes STANDARD:\n"); + for (Customer customer : standardCustomers) { + System.out.println(customer); + } } } private void showPremiumCustomers() throws DAOException, SQLException { ArrayList premiumCustomers = controller.getCustomersByType(CustomerType.PREMIUM); - System.out.println("Premium Customers:"); - for (Customer customer : premiumCustomers) { - System.out.println(customer); + if (premiumCustomers.isEmpty()) { + System.out.println("\nNo hay clientes PREMIUM.\n"); + } else { + System.out.println("Clientes PREMIUM:\n"); + for (Customer customer : premiumCustomers) { + System.out.println(customer); + } } } private void addOrder() throws DAOException, SQLException { - System.out.print("Enter order number: "); + System.out.print("Ingrese el numero de pedido:"); int orderNumber = scanner.nextInt(); scanner.nextLine(); // Consume the newline character - System.out.print("Enter customer ID: "); + System.out.print("Ingrese el ID del cliente: "); String customerId = scanner.nextLine(); Customer customer = controller.findCustomerById(customerId); if (customer == null) { - System.out.println("Customer not found. Please add the customer details."); + System.out.println("\nCliente no encontrado. \n\nPor favor, agregue los detalles del cliente:\n"); addCustomer(); - customer = controller.getCustomers().get(controller.getCustomers().size()-1); + customer = controller.getCustomers().get(controller.getCustomers().size() - 1); } scanner.nextLine(); // Consume the newline character - System.out.print("Enter item code: "); + System.out.print("Ingrese el codigo del articulo:"); String itemCode = scanner.nextLine(); Item item = controller.findItemByCode(itemCode); if (item == null) { - System.out.println("Product not found. Please add the product details."); + System.out.println("\nArticulo no encontrado. \n\nPor favor, agregue los detalles del articulo."); scanner.nextLine(); // Consume the newline character addItems(); - item = controller.getItems().get(controller.getItems().size()-1); + item = controller.getItems().get(controller.getItems().size() - 1); } - System.out.print("Enter quantity of units: "); + System.out.print("Ingrese la cantidad de unidades:"); int quantityUnits = scanner.nextInt(); scanner.nextLine(); // Consume the newline character @@ -273,43 +311,51 @@ private void addOrder() throws DAOException, SQLException { Orders order = new Orders(orderNumber, customer, item, quantityUnits, orderDateTime); controller.addOrder(order); - System.out.println("Order added successfully."); + System.out.println("\nPedido añadido exitosamente."); } private void deleteOrder() throws DAOException { - System.out.print("Enter order number to delete: "); + System.out.print("Ingrese el numero de pedido a eliminar: "); int orderNumber = scanner.nextInt(); Orders order = controller.findOrderByNumber(orderNumber); if (order != null) { if (!order.orderIsSent(LocalDateTime.now())) { controller.deleteOrderByNumber(orderNumber); - System.out.println("Order deleted successfully."); + System.out.println("\nPedido eliminado exitosamente."); } else { - System.out.println("Order cannot be deleted as it has already been sent."); + System.out.println("\nEl pedido no se puede eliminar, ya que ya ha sido enviado."); } } else { - System.out.println("Order not found."); + System.out.println("\nPedido no encontrado. Por favor, intentalo de nuevo."); } } private void showPendingOrders() throws DAOException { - System.out.println("Enter Customer ID to find pending order: "); + System.out.println("Ingrese el ID del cliente para encontrar pedidos pendientes: "); String customerId = scanner.nextLine(); ArrayList pendingOrders = controller.getPendingOrders(customerId); - System.out.println("Pending Orders:"); - for (Orders order : pendingOrders) { - System.out.println(order); + if (pendingOrders.isEmpty()) { + System.out.println("\nNo hay pedidos pendientes."); + } else { + for (Orders order : pendingOrders) { + System.out.println("\nPedidos pendientes: \n"); + System.out.println(order); + } } } private void showSentOrders() throws DAOException { - System.out.println("Enter Customer ID to find sent orders: "); + System.out.println("Ingrese el ID del cliente para encontrar pedidos enviados:"); String customerId = scanner.nextLine(); ArrayList sentOrders = controller.getSentOrders(customerId); - System.out.println("Sent Orders:"); - for (Orders order : sentOrders) { - System.out.println(order); + if (sentOrders.isEmpty()) { + System.out.println("\nNo hay pedidos enviados."); + } else { + for (Orders order : sentOrders) { + System.out.println("\nPedidos enviados: \n"); + System.out.println(order); + } } } }