// override artinya menimpa/mengganti implementasi superclass @Override public BigDecimal hitungDiskon(Penjualan p) { BigDecimal totalDiskon = BigDecimal.ZERO; for (Produk x : p.getDaftarProduk()) { if (x.sedangDiskon()) { BigDecimal diskon = x.nilaiDiskon().multiply(x.getHarga()); totalDiskon = totalDiskon.add(diskon); } } return totalDiskon; }
private void dataChange() { List<PenjualanBarang> listPenjBrg = new ArrayList<PenjualanBarang>(); List<Barang> listBarang = new ArrayList<Barang>(); listPenjBrg = formPenjualan.itemPenjualan; for (int i = 0; i < listPenjBrg.size(); i++) { int idBrg = listPenjBrg.get(i).getBarang().getId(); Barang barang = new windu.pos.DaoImpl.Barang().selectById(idBrg); int jumJual = listPenjBrg.get(i).getJumlah(); int jumAwal = barang.getJumlah(); barang.setJumlah(jumAwal - jumJual); listBarang.add(barang); } new windu.pos.DaoImpl.Barang().updateByBatch(listBarang); // insert ke tabel penjualan windu.pos.entity.Penjualan penj = new windu.pos.entity.Penjualan(); Pelanggan pelanggan = new Pelanggan(); pelanggan.setId(1); penj.setTanggal(new Date()); penj.setPelanggan(pelanggan); int idPenjualan = new windu.pos.DaoImpl.Penjualan().add(penj); penj.setIdPenjualan(idPenjualan); // insert ke tabel penjualanbarang for (int i = 0; i < listPenjBrg.size(); i++) listPenjBrg.get(i).setPenjualan(penj); new windu.pos.DaoImpl.PenjualanBarang().addByBatch(listPenjBrg); // kembali ke form penjualan formPenjualan.setLblKeterangan( NumberHelper.thousandSparator(pembelian), NumberHelper.thousandSparator(pembayaran), NumberHelper.thousandSparator(kembalian)); formPenjualan.setEnabled(true); formPenjualan.setVisible(true); this.setVisible(false); }
private void enterEvent(ActionEvent e) { try { pembayaran = Double.parseDouble(txtPembayaran.getText()); pembelian = formPenjualan.totalPembelian; kembalian = pembayaran - formPenjualan.totalPembelian; dataChange(); if (kembalian < 0) { JOptionPane.showMessageDialog( this, "Uang yang dibayarkan kurang", "Warning", JOptionPane.WARNING_MESSAGE); txtPembayaran.setText(""); txtPembayaran.requestFocusInWindow(); } else { lblKembalian.setText(String.valueOf(kembalian)); formPenjualan.kembalian = kembalian; } } catch (NumberFormatException nfe) { JOptionPane.showMessageDialog(null, "Hanya boleh angka", "Error", JOptionPane.ERROR_MESSAGE); } }
private void escEvent(ActionEvent actionEvent) { formPenjualan.setEnabled(true); formPenjualan.setVisible(true); this.setVisible(false); }