public void dodajewidencje(Ewidencjevat ew) { try { Ewidencjevat tmp = find(ew.getRok(), ew.getMiesiac(), ew.getPodatnik()); destroy(tmp); dodaj(ew); } catch (Exception e) { dodaj(ew); } }
public void drukuj() throws FileNotFoundException, DocumentException, IOException { Document document = new Document(); PdfWriter.getInstance( document, new FileOutputStream( "C:/Users/Osito/Documents/NetBeansProjects/npkpir_23/build/web/wydruki/vatsuma" + wpisView.getPodatnikWpisu() + ".pdf")) .setInitialLeading(16); document.addTitle("Zestawienie sum z ewidencji VAT"); document.addAuthor("Biuro Rachunkowe Taxman Grzegorz Grzelczyk"); document.addSubject("Wydruk danych z ewidencji VAT"); document.addKeywords("VAT, PDF"); document.addCreator("Grzegorz Grzelczyk"); document.open(); // Rectangle rect = new Rectangle(0, 832, 136, 800); // rect.setBackgroundColor(BaseColor.RED); // document.add(rect); document.add(new Chunk("Biuro Rachunkowe Taxman")); document.add(Chunk.NEWLINE); BaseFont helvetica = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1250, BaseFont.EMBEDDED); Font font = new Font(helvetica, 12); Font fontM = new Font(helvetica, 10); Font fontS = new Font(helvetica, 6); document.add(Chunk.NEWLINE); Date date = Calendar.getInstance().getTime(); DateFormat formatt = new SimpleDateFormat("dd/MM/yyyy"); String today = formatt.format(date); System.out.println("PdfVATsuma Today : " + today); Paragraph miziu = new Paragraph( new Phrase( "Szczecin, dnia " + Data.datapk(wpisView.getRokWpisuSt(), wpisView.getMiesiacWpisu()), font)); miziu.setAlignment(Element.ALIGN_RIGHT); miziu.setLeading(50); document.add(miziu); document.add(new Chunk().NEWLINE); Paragraph miziu1 = new Paragraph(new Phrase("Zestawienie ewidencji VAT ", font)); miziu1.setAlignment(Element.ALIGN_CENTER); document.add(miziu1); document.add(new Chunk().NEWLINE); miziu1 = new Paragraph( new Phrase( "okres rozliczeniony " + wpisView.getMiesiacWpisu() + "/" + wpisView.getRokWpisu(), fontM)); document.add(miziu1); document.add(new Chunk().NEWLINE); miziu1 = new Paragraph(new Phrase("Firma: " + wpisView.getPodatnikWpisu(), fontM)); document.add(miziu1); Podatnik pod = podatnikDAO.find(wpisView.getPodatnikWpisu()); miziu1 = new Paragraph( new Phrase( "adres: " + pod.getMiejscowosc() + " " + pod.getUlica() + " " + pod.getNrdomu(), fontM)); document.add(miziu1); miziu1 = new Paragraph(new Phrase("NIP: " + pod.getNip(), fontM)); document.add(miziu1); PdfPTable tableSprzedaz = new PdfPTable(5); tableSprzedaz.setWidths(new int[] {1, 5, 2, 2, 2}); PdfPTable tableZakup = new PdfPTable(5); tableZakup.setWidths(new int[] {1, 5, 2, 2, 2}); NumberFormat formatter = NumberFormat.getCurrencyInstance(); formatter.setMaximumFractionDigits(2); formatter.setMinimumFractionDigits(2); formatter.setGroupingUsed(true); List<EVatwpisSuma> sumaVatSprzedaz = new ArrayList<>(); List<EVatwpisSuma> sumaVatZakup = new ArrayList<>(); Ewidencjevat lista; try { lista = ewidencjeVatDAO.find( wpisView.getRokWpisu().toString(), wpisView.getMiesiacWpisu(), wpisView.getPodatnikWpisu()); } catch (Exception e) { Integer kwartal = Integer.parseInt( Kwartaly.getMapanrkw().get(Integer.parseInt(wpisView.getMiesiacWpisu()))); List<String> miesiacewkwartale = Kwartaly.getMapakwnr().get(kwartal); lista = ewidencjeVatDAO.find( wpisView.getRokWpisu().toString(), miesiacewkwartale.get(2), wpisView.getPodatnikWpisu()); } for (EVatwpisSuma ew : lista.getSumaewidencji().values()) { String typeewidencji = ew.getEwidencja().getTypewidencji(); switch (typeewidencji) { case "s": sumaVatSprzedaz.add(ew); break; case "z": sumaVatZakup.add(ew); break; case "sz": sumaVatSprzedaz.add(ew); sumaVatZakup.add(ew); break; } } // tu robimy wykaz ewidencji sprzedazy document.add(Chunk.NEWLINE); miziu1 = new Paragraph(new Phrase("zestawienie ewidencji sprzedaży", fontM)); document.add(miziu1); try { tableSprzedaz.addCell(ustawfrazebez("lp", "center", 10)); tableSprzedaz.addCell(ustawfrazebez("ewidencja", "center", 10)); tableSprzedaz.addCell(ustawfrazebez("netto", "center", 10)); tableSprzedaz.addCell(ustawfrazebez("vat", "center", 10)); tableSprzedaz.addCell(ustawfrazebez("brutto", "center", 10)); tableSprzedaz.setHeaderRows(1); int i = 1; for (EVatwpisSuma p : sumaVatSprzedaz) { tableSprzedaz.addCell(ustawfrazebez(String.valueOf(i), "center", 10)); tableSprzedaz.addCell(ustawfrazebez(p.getEwidencja().getNazwa(), "left", 10)); tableSprzedaz.addCell( ustawfrazebez(String.valueOf(formatter.format(p.getNetto())), "right", 10)); tableSprzedaz.addCell( ustawfrazebez(String.valueOf(formatter.format(p.getVat())), "right", 10)); try { tableSprzedaz.addCell( ustawfrazebez( String.valueOf(formatter.format(p.getVat().add(p.getNetto()))), "right", 10)); } catch (Exception e) { tableSprzedaz.addCell(ustawfrazebez("", "right", 10)); } i++; } } catch (DocumentException | IOException e) { } document.add(Chunk.NEWLINE); document.add(tableSprzedaz); document.add(Chunk.NEWLINE); // tu robimy wykaz ewidencji zakupu miziu1 = new Paragraph(new Phrase("zestawienie ewidencji zakupu", fontM)); document.add(miziu1); try { tableZakup.addCell(ustawfrazebez("lp", "center", 10)); tableZakup.addCell(ustawfrazebez("ewidencja", "center", 10)); tableZakup.addCell(ustawfrazebez("netto", "center", 10)); tableZakup.addCell(ustawfrazebez("vat", "center", 10)); tableZakup.addCell(ustawfrazebez("brutto", "center", 10)); tableZakup.setHeaderRows(1); int i = 1; for (EVatwpisSuma p : sumaVatZakup) { tableZakup.addCell(ustawfrazebez(String.valueOf(i), "center", 10)); tableZakup.addCell(ustawfrazebez(p.getEwidencja().getNazwa(), "left", 10)); tableZakup.addCell( ustawfrazebez(String.valueOf(formatter.format(p.getNetto())), "right", 10)); tableZakup.addCell( ustawfrazebez(String.valueOf(formatter.format(p.getVat())), "right", 10)); try { tableZakup.addCell( ustawfrazebez( String.valueOf(formatter.format(p.getVat().add(p.getNetto()))), "right", 10)); } catch (Exception e) { tableZakup.addCell(ustawfrazebez("", "right", 10)); } i++; } } catch (DocumentException | IOException e) { } document.add(Chunk.NEWLINE); document.add(tableZakup); document.add(Chunk.NEWLINE); Uz uz = wpisView.getWprowadzil(); document.add(new Paragraph(String.valueOf(uz.getImie() + " " + uz.getNazw()), fontM)); document.add(new Paragraph("___________________________", fontM)); document.add(new Paragraph("sporządził", fontM)); document.close(); // Msg.msg("i", "Wydrukowano sume ewidencji VAT", "form:messages"); }
@PostConstruct private void init() throws Exception { listadokvat.addAll(dokTabView.getDokvatmc()); for (Dok zaksiegowanafaktura : listadokvat) { if (zaksiegowanafaktura.getEwidencjaVAT() != null) { List<EVatwpis> ewidencja = new ArrayList<>(); ewidencja.addAll(zaksiegowanafaktura.getEwidencjaVAT()); for (EVatwpis ewidwiersz : ewidencja) { if (ewidwiersz.getNetto() != 0) { EVatViewPola wiersz = new EVatViewPola(); wiersz.setId(zaksiegowanafaktura.getNrWpkpir()); wiersz.setDataSprz(zaksiegowanafaktura.getDataSprz()); wiersz.setDataWyst(zaksiegowanafaktura.getDataWyst()); wiersz.setKontr(zaksiegowanafaktura.getKontr()); wiersz.setNrWlDk(zaksiegowanafaktura.getNrWlDk()); wiersz.setOpis(zaksiegowanafaktura.getOpis()); wiersz.setNazwaewidencji(ewidwiersz.getEwidencja().getNazwa()); wiersz.setNrpolanetto(ewidwiersz.getEwidencja().getNrpolanetto()); wiersz.setNrpolavat(ewidwiersz.getEwidencja().getNrpolavat()); wiersz.setNetto(ewidwiersz.getNetto()); wiersz.setVat(ewidwiersz.getVat()); wiersz.setOpizw(ewidwiersz.getEstawka()); listadokvatprzetworzona.add(wiersz); } } } } // rozdziela zapisy na poszczególne ewidencje for (EVatViewPola wierszogolny : listadokvatprzetworzona) { ArrayList<EVatViewPola> listatmp = new ArrayList<>(); // sprawdza nazwe ewidencji zawarta w wierszu ogolnym i dodaje do listy String nazwaewidencji = wierszogolny.getNazwaewidencji(); try { Collection c = listaewidencji.get(nazwaewidencji); listatmp.addAll(c); } catch (Exception e) { listaewidencji.put(nazwaewidencji, new ArrayList<EVatViewPola>()); Evewidencja nowaEv = evewidencjaDAO.znajdzponazwie(nazwaewidencji); sumaewidencji.put( nazwaewidencji, new EVatwpisSuma(nowaEv, BigDecimal.ZERO, BigDecimal.ZERO, wierszogolny.getOpizw())); } listatmp.add(wierszogolny); EVatwpisSuma ew = sumaewidencji.get(nazwaewidencji); BigDecimal sumanetto = ew.getNetto() .add(BigDecimal.valueOf(wierszogolny.getNetto()).setScale(0, RoundingMode.HALF_EVEN)); ew.setNetto(sumanetto); BigDecimal sumavat = ew.getVat() .add(BigDecimal.valueOf(wierszogolny.getVat()).setScale(0, RoundingMode.HALF_EVEN)); ew.setVat(sumavat); sumaewidencji.put(nazwaewidencji, ew); listaewidencji.put(nazwaewidencji, listatmp); } wygeneruj(listaewidencji); String rok = wpisView.getRokWpisu().toString(); String mc = wpisView.getMiesiacWpisu(); String pod = wpisView.getPodatnikWpisu(); // zachowaj wygenerowane ewidencje do bazy danych try { Ewidencjevat pobrane = ewidencjeVatDAO.find(rok, mc, pod); pobrane.setEwidencje(listaewidencji); pobrane.setSumaewidencji(sumaewidencji); ewidencjeVatDAO.edit(pobrane); } catch (Exception e) { zrzucane.setPodatnik(pod); zrzucane.setRok(rok); zrzucane.setMiesiac(mc); zrzucane.setEwidencje(listaewidencji); zrzucane.setSumaewidencji(sumaewidencji); ewidencjeVatDAO.dodajewidencje(zrzucane); } System.out.println("lolo"); }