EingangsrechnungsStatistik getEingangsrechnungsStatistik() { if (eingangsrechnungsStatistik == null) { eingangsrechnungsStatistik = eingangsrechnungDao.buildStatistik(getList()); } return eingangsrechnungsStatistik; }
@Override protected List<String> getChoices(final String input) { return parentPage.getBaseDao().getAutocompletion("kreditor", input); } };
/** * List of all years with invoices: select min(datum), max(datum) from t_fibu_rechnung. * * @return */ @SuppressWarnings("unchecked") public int[] getYears() { final List<Object[]> list = getSession().createQuery("select min(datum), max(datum) from EingangsrechnungDO t") .list(); return SQLHelper.getYears(list); }
protected void exportExcelWithCostAssignments() { refresh(); final RechnungFilter filter = new RechnungFilter(); final RechnungFilter src = form.getSearchFilter(); filter.setFromDate(src.getFromDate()); filter.setToDate(src.getToDate()); final List<EingangsrechnungDO> rechnungen = eingangsrechnungDao.getList(filter); if (rechnungen == null || rechnungen.size() == 0) { // Nothing to export. form.addError("validation.error.nothingToExport"); return; } final String filename = "ProjectForge-" + getString("fibu.common.creditor") + "-" + getString("menu.fibu.kost") + "_" + DateHelper.getDateAsFilenameSuffix(new Date()) + ".xls"; final byte[] xls = kostZuweisungExport.exportRechnungen(rechnungen, getString("fibu.common.creditor"), kontoCache); if (xls == null || xls.length == 0) { log.error("Oups, xls has zero size. Filename: " + filename); return; } DownloadUtils.setDownloadTarget(xls, filename); }
private void checkNoAccess(Serializable id, EingangsrechnungDO eingangsrechnung, String who) { try { RechnungFilter filter = new RechnungFilter(); eingangsrechnungDao.getList(filter); fail("AccessException expected: " + who + " users should not have select list access to invoices."); } catch (AccessException ex) { // OK } try { eingangsrechnungDao.getById(id); fail("AccessException expected: " + who + " users should not have select access to invoices."); } catch (AccessException ex) { // OK } checkNoHistoryAccess(id, eingangsrechnung, who); checkNoWriteAccess(id, eingangsrechnung, who); }
if (hasLoggedInUserHistoryAccess(obj, false) == false) { return list; final List<DisplayHistoryEntry> entries = internalGetDisplayHistoryEntries(position); for (final DisplayHistoryEntry entry : entries) { final String propertyName = entry.getPropertyName(); if (CollectionUtils.isNotEmpty(position.getKostZuweisungen()) == true) { for (final KostZuweisungDO zuweisung : position.getKostZuweisungen()) { final List<DisplayHistoryEntry> kostEntries = internalGetDisplayHistoryEntries(zuweisung); for (final DisplayHistoryEntry entry : kostEntries) { final String propertyName = entry.getPropertyName();
private void checkNoHistoryAccess(Serializable id, EingangsrechnungDO eingangsrechnung, String who) { assertEquals(who + " users should not have select access to history of invoices.", eingangsrechnungDao.hasLoggedInUserHistoryAccess(false), false); try { eingangsrechnungDao.hasLoggedInUserHistoryAccess(true); fail("AccessException expected: " + who + " users should not have select access to history of invoices."); } catch (AccessException ex) { // OK } assertEquals(who + " users should not have select access to history of invoices.", eingangsrechnungDao.hasLoggedInUserHistoryAccess( eingangsrechnung, false), false); try { eingangsrechnungDao.hasLoggedInUserHistoryAccess(eingangsrechnung, true); fail("AccessException expected: " + who + " users should not have select access to history of invoices."); } catch (AccessException ex) { // OK } }
@Test public void checkAccess() { logon(TEST_FINANCE_USER); EingangsrechnungDO eingangsrechnung = new EingangsrechnungDO(); eingangsrechnung.setDatum(new Date(System.currentTimeMillis())); eingangsrechnung.addPosition(new EingangsrechnungsPositionDO()); eingangsrechnung.setFaelligkeit(new Date(System.currentTimeMillis())); Serializable id = eingangsrechnungDao.save(eingangsrechnung); eingangsrechnung = eingangsrechnungDao.getById(id); logon(TEST_CONTROLLING_USER); eingangsrechnungDao.getById(id); checkNoWriteAccess(id, eingangsrechnung, "Controlling"); logon(TEST_USER); checkNoAccess(id, eingangsrechnung, "Other"); logon(TEST_PROJECT_MANAGER_USER); checkNoAccess(id, eingangsrechnung, "Project manager"); logon(TEST_ADMIN_USER); checkNoAccess(id, eingangsrechnung, "Admin "); }
private void autofillLatestKreditorInformations(final String kreditor, final AjaxRequestTarget target) { if (StringUtils.isEmpty(kreditor)) { return; } final EingangsrechnungDO newestRechnung = eingangsrechnungDao.findNewestByKreditor(kreditor); if (newestRechnung == null) { return; } // Update Customer No. getData().setCustomernr(newestRechnung.getCustomernr()); target.add(customernrField); // Update Konto getData().setReceiver(newestRechnung.getReceiver()); target.add(recieverField); getData().setIban(newestRechnung.getIban()); target.add(ibanField); getData().setBic(newestRechnung.getBic()); target.add(bicField); }
queryFilter.addOrder(Order.desc("kreditor")); final List<EingangsrechnungDO> list = getList(queryFilter); if (myFilter.isShowAll() == true || myFilter.isDeleted() == true) { return list;
/** * Calculates expected dates of payments inside the last year (-365 days). */ private LiquidityForecast getForecast() { // Consider only invoices of the last year: final java.sql.Date fromDate = new DayHolder().add(Calendar.DAY_OF_YEAR, -365).getSQLDate(); { final List<RechnungDO> paidInvoices = rechnungDao.getList(new RechnungFilter().setShowBezahlt().setFromDate(fromDate)); forecast.calculateExpectedTimeOfPayments(paidInvoices); final List<RechnungDO> invoices = rechnungDao.getList(new RechnungFilter().setShowUnbezahlt()); forecast.setInvoices(invoices); } { final List<EingangsrechnungDO> paidInvoices = eingangsrechnungDao.getList(new RechnungFilter().setShowBezahlt().setFromDate(fromDate)); forecast.calculateExpectedTimeOfCreditorPayments(paidInvoices); final List<EingangsrechnungDO> creditorInvoices = eingangsrechnungDao.getList(new RechnungFilter().setListType(RechnungFilter.FILTER_UNBEZAHLT)); forecast.setCreditorInvoices(creditorInvoices); } final List<LiquidityEntryDO> list = liquidityEntryDao.getList(new LiquidityFilter().setPaymentStatus(PaymentStatus.UNPAID)); forecast.set(list); forecast.build(); return forecast; }