/** Отображает данные о товаре по выбранному в списке идентификатору */ protected void showProductData() { try { // забираем значение, выбранное в списке // идентификаторов товаров Integer productId = (Integer) comboId.getSelectedItem(); if (productId != null) { // получаем товар по идентификатору Product product1 = new Product( productId, txtDescription.getText(), Float.parseFloat(txtRate.getText()), Integer.parseInt(txtQuantity.getText()), 5); List<Product> product = (List<Product>) client.showProductData(product1); // List<Product> product = productDAO.getProductById(productId); // заполняем текстовые поля значениями // параметров товара for (int i = 0; i < product.size(); i++) { txtId.setText(String.valueOf(product.get(i).getId())); txtDescription.setText(product.get(i).getDescription()); txtRate.setText(String.valueOf(product.get(i).getRate())); txtQuantity.setText(String.valueOf(product.get(i).getQuantity())); } } } catch (Exception e) { e.printStackTrace(); // JOptionPane.showMessageDialog(this, e.getMessage()); } }
/** Добавляет новый товар на основе данных текстовых полей */ protected void addProduct() { try { // создаем новый объект-товар // на основе данных диалога Product product = new Product( Integer.parseInt(txtId.getText()), txtDescription.getText(), Float.parseFloat(txtRate.getText()), Integer.parseInt(txtQuantity.getText()), 1); // сохраняем товар в БД client.addProduct(product); // productDAO.addProduct(product); // обновляем список идентификаторов refreshIdList(); // устанавливаем текущим добавленный товар comboId.setSelectedItem(Integer.parseInt(txtId.getText())); } catch (Exception e) { e.printStackTrace(); // JOptionPane.showMessageDialog(this, e.getMessage()); } }
private void refreshIdList() { try { // получаем список идентификаторов List<Integer> productIds = (List<Integer>) client.refreshIdList(); // List<Integer> productIds = productDAO.getProductIds(); // очищаем список comboId.removeAllItems(); // заполняем список полученными данными for (Integer productId : productIds) { comboId.addItem(productId); } } catch (Exception e) { e.printStackTrace(); // JOptionPane.showMessageDialog(this, e.getMessage()); } }
/** Обновляет информацию о товаре на основе данных текстовых полей */ protected void updateProduct() { try { // формируем объект-товар // на основе данных диалога Product product = new Product( Integer.parseInt(txtId.getText()), txtDescription.getText(), Float.parseFloat(txtRate.getText()), Integer.parseInt(txtQuantity.getText()), 2); // обновляем данные о товаре в БД client.updateProduct(product); // productDAO.setProduct(product); } catch (Exception e) { e.printStackTrace(); // JOptionPane.showMessageDialog(this, e.getMessage()); } }
/** Удаляет выбранный товар */ protected void removeProduct() { try { // удаляем товар из БД Product product = new Product( Integer.parseInt(txtId.getText()), txtDescription.getText(), Float.parseFloat(txtRate.getText()), Integer.parseInt(txtQuantity.getText()), 3); client.removeProduct(product); // productDAO.removeProduct( // Integer.parseInt(txtId.getText())); // обновляем список идентификаторов товаров refreshIdList(); // отображаем данные по первому товару в списке showProductData(); } catch (Exception e) { e.printStackTrace(); // JOptionPane.showMessageDialog(this, e.getMessage()); } }