private void txtSearchActionPerformed(ActionEvent e) { stock = StockTools.findByIDORScanner(txtSearch.getText()); if (stock != null) { if (stock.isAusgebucht() && !cbZombieRevive.isSelected()) { Tools.log( txtLog, stock.getId(), stock.getProdukt().getBezeichnung(), "Dieser Vorrat wurde bereits ausgebucht."); Tools.fadeout(lblProdukt); sp.error(); stock = null; } else { if (btnSofortUmbuchen.isSelected()) { umbuchen(); Tools.fadeinout( lblProdukt, "[" + stock.getId() + "] " + stock.getProdukt().getBezeichnung()); stock = null; } else { Tools.fadein( lblProdukt, "[" + stock.getId() + "] " + stock.getProdukt().getBezeichnung()); } } } else { Tools.log(txtLog, 0, txtSearch.getText(), "Unbekannte Vorrat Nummer."); Tools.fadeout(lblProdukt); sp.warning(); } btnUmbuchen.setEnabled(stock != null); txtSearch.selectAll(); txtSearch.requestFocus(); txtSearchChecked = true; }
private void btnAusbuchenActionPerformed(ActionEvent e) { EntityManager em = Main.getEMF().createEntityManager(); try { em.getTransaction().begin(); int[] rows = tblVorrat.getSelectedRows(); for (int r = 0; r < rows.length; r++) { // Diese Zeile ist sehr wichtig, da sie die Auswahl in der Tabelle bzgl. einer Umsortierung // berücksichtigt. int row = tblVorrat.convertRowIndexToModel(rows[r]); Stock stock = ((StockTableModel2) tblVorrat.getModel()).getVorrat(row); Main.logger.info("AUSBUCHEN STOCK: " + stock.toString()); Tools.log(txtLog, stock.getId(), stock.getProdukt().getBezeichnung(), "AUSGEBUCHT"); StockTools.ausbuchen(stock, "Abschlussbuchung"); } em.getTransaction().commit(); } catch (Exception e1) { em.getTransaction().rollback(); } finally { em.close(); loadVorratTable(); } }
@Override public Object getValueAt(int row, int column) { Object value; Stock stock = (Stock) ((Object[]) data.get(row))[0]; BigDecimal menge = (BigDecimal) ((Object[]) data.get(row))[1]; switch (column) { case COL_VORRAT_ID: { value = stock.getId(); break; } case COL_BEZEICHNUNG: { // Main.debug(vorrat); value = stock.getProdukt().getBezeichnung(); break; } case COL_LAGER: { value = stock.getLager(); break; } case COL_LIEFERANT: { value = stock.getLieferant(); break; } case COL_GTIN: { value = tools.Tools.catchNull(stock.getProdukt().getGtin(), "--"); break; } case COL_EINGANGSMENGE: { value = decf.format(StockTools.getEingangsbestand(stock)) + " " + IngTypesTools.EINHEIT[stock.getProdukt().getIngTypes().getEinheit()]; break; } case COL_RESTMENGE: { value = decf.format(menge) + " " + IngTypesTools.EINHEIT[stock.getProdukt().getIngTypes().getEinheit()]; break; } case COL_STOFFART: { value = stock.getProdukt().getIngTypes().getBezeichnung(); break; } case COL_WARENGRUPPE: { value = stock.getProdukt().getIngTypes().getWarengruppe().getBezeichnung(); break; } case COL_EINGANG: { value = df.format(stock.getEingang()); break; } case COL_ANBRUCH: { if (stock.getAnbruch().equals(Const.DATE_BIS_AUF_WEITERES)) { value = "--"; } else { value = df.format(stock.getAnbruch()); } break; } case COL_AUSGANG: { if (stock.getAusgang().equals(Const.DATE_BIS_AUF_WEITERES)) { value = "--"; } else { value = df.format(stock.getAusgang()); } break; } default: { value = null; } } return value; }