/** * <p>Handle new accounting entry is created to check dirty. * This is implementation of dirty check for all accounts.</p> * @param pAddParam additional param * @param pAcc account * @param pSubaccId subaccount ID * @param pDateAt date at * @throws Exception - an exception **/ @Override public final synchronized void handleNewAccountEntry( final Map<String, Object> pAddParam, final Account pAcc, final Long pSubaccId, final Date pDateAt) throws Exception { if (lazyGetBalanceAtAllDirtyCheck(pAddParam).getLeastAccountingEntryDate() .getTime() > pDateAt.getTime()) { if (getLogger().getIsShowDebugMessagesFor(getClass())) { getLogger().debug(null, SrvBalanceStd.class, "changing least last entry date from " + this.balanceAtAllDirtyCheck .getLeastAccountingEntryDate() + " to " + pDateAt); } this.balanceAtAllDirtyCheck .setLeastAccountingEntryDate(pDateAt); getSrvOrm() .updateEntity(pAddParam, this.balanceAtAllDirtyCheck); } }
/** * <p>Handle new accounting entry is created to check dirty. * This is implementation of dirty check for all accounts.</p> * @param pAcc account * @param pSubaccId subaccount ID * @param pDateAt date at * @throws Exception - an exception **/ @Override public final synchronized void handleNewAccountEntry(final Account pAcc, final Long pSubaccId, final Date pDateAt) throws Exception { if (lazyGetBalanceAtAllDirtyCheck().getLeastAccountingEntryDate() .getTime() > pDateAt.getTime()) { getLogger().debug(SrvBalanceStd.class, SrvBalanceStd.class.getSimpleName() + ": changing least last entry date from " + lazyGetBalanceAtAllDirtyCheck().getLeastAccountingEntryDate() + " to " + pDateAt); lazyGetBalanceAtAllDirtyCheck().setLeastAccountingEntryDate(pDateAt); } }
if (dateFirstEntryLong == null) { getLogger().info(null, SrvBalanceStd.class, "There is no single acc entry, so use current acc year for start balance!"); Calendar cal = Calendar.getInstance(new Locale("en", "US"));
public final synchronized void recalculateAll( final Date pDateFor, final boolean pIsPrepareNeed) throws Exception { getLogger().info(SrvBalanceStd.class, SrvBalanceStd.class.getSimpleName() + ": recalculation start BalanceAtAllDirtyCheck was " + lazyGetBalanceAtAllDirtyCheck()); getLogger().info(SrvBalanceStd.class, SrvBalanceStd.class.getSimpleName() + ": deleting all stored balances cause period has changed"); getSrvDatabase().executeDelete(BalanceAt.class.getSimpleName() getLogger().info(SrvBalanceStd.class, SrvBalanceStd.class.getSimpleName() + ": recalculating balances from start " + date + " <- " + lazyGetBalanceAtAllDirtyCheck().getDateBalanceStoreStart()); getLogger().info(SrvBalanceStd.class, SrvBalanceStd.class.getSimpleName() + ": recalculating balances from current end " + date + " <- " + lazyGetBalanceAtAllDirtyCheck().getCurrentBalanceDate()); getLogger().info(SrvBalanceStd.class, SrvBalanceStd.class.getSimpleName() + ": last stored balance date " + lastBalanceStoredDate + ", date for " + pDateFor); .getCurrentBalanceDate()); getSrvOrm().updateEntity(lazyGetBalanceAtAllDirtyCheck()); getLogger().info(SrvBalanceStd.class, SrvBalanceStd.class.getSimpleName() + ": recalculation end BalanceAtAllDirtyCheck is " + lazyGetBalanceAtAllDirtyCheck());
final Map<String, Object> pAddParam, final Date pDateFor, final boolean pIsPrepareNeed) throws Exception { getLogger().info(null, SrvBalanceStd.class, "recalculation start BalanceAtAllDirtyCheck was " + lazyGetBalanceAtAllDirtyCheck(pAddParam)); getLogger().info(null, SrvBalanceStd.class, "deleting all stored balances cause period has changed"); getSrvDatabase().executeDelete(BalanceAt.class.getSimpleName() getLogger().info(null, SrvBalanceStd.class, "recalculating balances from start " + date + " <- " + this.balanceAtAllDirtyCheck.getDateBalanceStoreStart()); getLogger().info(null, SrvBalanceStd.class, "recalculating balances from current end " + date + " <- " + this.balanceAtAllDirtyCheck.getCurrentBalanceDate()); getLogger().info(null, SrvBalanceStd.class, "last stored balance date " + lastBalanceStoredDate + ", date for " + pDateFor); getSrvOrm() .updateEntity(pAddParam, this.balanceAtAllDirtyCheck); getLogger().info(null, SrvBalanceStd.class, "recalculation end BalanceAtAllDirtyCheck is " + this.balanceAtAllDirtyCheck);
/** * <p>Evaluate period of stored balances according settings, * if it's changed then it switch on "current balances are dirty".</p> * @return pPeriod EPeriod e.g. MONTHLY * @throws Exception - an exception **/ @Override public final synchronized EPeriod evalBalanceStorePeriod() throws Exception { if (!lazyGetBalanceAtAllDirtyCheck().getBalanceStorePeriod() .equals(getSrvAccSettings().lazyGetAccSettings() .getBalanceStorePeriod())) { getLogger().info(SrvBalanceStd.class, SrvBalanceStd.class.getSimpleName() + ": changing period from " + lazyGetBalanceAtAllDirtyCheck() .getBalanceStorePeriod() + " to " + getSrvAccSettings() .lazyGetAccSettings().getBalanceStorePeriod()); lazyGetBalanceAtAllDirtyCheck() .setBalanceStorePeriod(getSrvAccSettings().lazyGetAccSettings() .getBalanceStorePeriod()); lazyGetBalanceAtAllDirtyCheck().setIsPeriodChanged(true); lazyGetBalanceAtAllDirtyCheck() .setCurrentBalanceDate(new Date(157766400000L)); } return lazyGetBalanceAtAllDirtyCheck().getBalanceStorePeriod(); }
getLogger().info(SrvBalanceStd.class, SrvBalanceStd.class.getSimpleName() + ": changing period from " + lazyGetBalanceAtAllDirtyCheck() .getBalanceStorePeriod() + " to " + pPeriod);
/** * <p>Evaluate period of stored balances according settings, * if it's changed then it switch on "current balances are dirty".</p> * @param pAddParam additional param * @return pPeriod EPeriod e.g. MONTHLY * @throws Exception - an exception **/ @Override public final synchronized EPeriod evalBalanceStorePeriod( final Map<String, Object> pAddParam) throws Exception { if (!lazyGetBalanceAtAllDirtyCheck(pAddParam).getBalanceStorePeriod() .equals(getSrvAccSettings().lazyGetAccSettings(pAddParam) .getBalanceStorePeriod())) { getLogger().info(null, SrvBalanceStd.class, "changing period from " + this.balanceAtAllDirtyCheck .getBalanceStorePeriod() + " to " + getSrvAccSettings() .lazyGetAccSettings(pAddParam).getBalanceStorePeriod()); this.balanceAtAllDirtyCheck .setBalanceStorePeriod(getSrvAccSettings().lazyGetAccSettings(pAddParam) .getBalanceStorePeriod()); this.balanceAtAllDirtyCheck.setIsPeriodChanged(true); this.balanceAtAllDirtyCheck .setCurrentBalanceDate(initDate); getSrvOrm() .updateEntity(pAddParam, this.balanceAtAllDirtyCheck); } return this.balanceAtAllDirtyCheck.getBalanceStorePeriod(); }
getLogger().info(null, SrvBalanceStd.class, "changing period from " + this.balanceAtAllDirtyCheck .getBalanceStorePeriod() + " to " + pPeriod);