r2913 - in trunk: lima-business/src/main/java/org/chorem/lima/business lima-business/src/main/java/org/chorem/lima/business/accountingrules lima-business/src/main/java/org/chorem/lima/business/ejb lima-swing/src/main/java/org/chorem/lima/ui/financialperiod
Author: jpepin Date: 2010-05-27 16:36:34 +0200 (Thu, 27 May 2010) New Revision: 2913 Url: http://chorem.org/repositories/revision/lima/2913 Log: D?\195?\169boguage cr?\195?\169ation des p?\195?\169riodes financi?\195?\168res lors de la cr?\195?\169ation d'un exercice Modified: trunk/lima-business/src/main/java/org/chorem/lima/business/FinancialPeriodService.java trunk/lima-business/src/main/java/org/chorem/lima/business/accountingrules/FranceAccountingRules.java trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/FinancialPeriodServiceImpl.java trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialperiod/FinancialPeriodTableModel.java Modified: trunk/lima-business/src/main/java/org/chorem/lima/business/FinancialPeriodService.java =================================================================== --- trunk/lima-business/src/main/java/org/chorem/lima/business/FinancialPeriodService.java 2010-05-27 10:42:24 UTC (rev 2912) +++ trunk/lima-business/src/main/java/org/chorem/lima/business/FinancialPeriodService.java 2010-05-27 14:36:34 UTC (rev 2913) @@ -54,6 +54,8 @@ List<ClosedPeriodicEntryBook> getAllClosedPeriodicEntryBooksFromUnblockedFiscalPeriod() throws LimaException; + List<ClosedPeriodicEntryBook> getAllClosedPeriodicEntryBooks() throws LimaException; + ClosedPeriodicEntryBook getClosedPeriodicEntryBook(EntryBook entryBook, FinancialPeriod financialPeriod) throws LimaException; Modified: trunk/lima-business/src/main/java/org/chorem/lima/business/accountingrules/FranceAccountingRules.java =================================================================== --- trunk/lima-business/src/main/java/org/chorem/lima/business/accountingrules/FranceAccountingRules.java 2010-05-27 10:42:24 UTC (rev 2912) +++ trunk/lima-business/src/main/java/org/chorem/lima/business/accountingrules/FranceAccountingRules.java 2010-05-27 14:36:34 UTC (rev 2913) @@ -129,9 +129,6 @@ "The ante fiscal period is not locked"); } } - - Date beginDate = fiscalPeriod.getBeginDate(); - Date endDate = fiscalPeriod.getEndDate(); FinancialPeriodService financialPeriodService = (FinancialPeriodService) map.get(FinancialPeriodService.class); if (financialPeriodService == null){ @@ -139,39 +136,26 @@ } // FinancialPeriods of 1 month are created - Date loopDate = beginDate; - while (loopDate.before(endDate)) { + Date endDate = fiscalPeriod.getEndDate(); + Date loopDate = fiscalPeriod.getBeginDate(); + while(loopDate.before(endDate)){ FinancialPeriod financialPeriod = new FinancialPeriodImpl(); - Date periodBeginDate = new Date(); - Date periodEndDate = new Date(); - // if first period dd/mm/yy to 31/mm/yy - if (loopDate.equals(beginDate)){ - //dd/mm/yy - periodBeginDate = beginDate; - //31/mm/yy - periodEndDate = DateUtils.addMonths(loopDate, 1); - periodEndDate = DateUtils.truncate(periodEndDate, Calendar.MONTH); - periodEndDate = DateUtils.addMilliseconds(periodEndDate, -1); - } else { - //other period 01/mm/yy to 31/mm/yy - periodBeginDate = DateUtils.truncate(loopDate, Calendar.MONTH); - periodEndDate = DateUtils.addMonths(loopDate, 1); - periodEndDate = DateUtils.truncate(periodEndDate, Calendar.MONTH); - periodEndDate = DateUtils.addMilliseconds(periodEndDate, -1); + financialPeriod.setBeginDate(loopDate); + loopDate = DateUtils.addMonths(loopDate, 1); + loopDate = DateUtils.truncate(loopDate, Calendar.MONTH); + loopDate = DateUtils.addMilliseconds(loopDate, -1); + if (loopDate.after(endDate)){ + financialPeriod.setEndDate(endDate); } - //set period - financialPeriod.setBeginDate(periodBeginDate); - financialPeriod.setEndDate(periodEndDate); + else { + financialPeriod.setEndDate(loopDate); + } //create it + fiscalPeriod.addFinancialPeriod(financialPeriod); financialPeriodService.createFinancialPeriodWithTransaction(financialPeriod, transaction); - //incremente loop - loopDate = DateUtils.addMonths(loopDate, 1); + //loop incremente + loopDate = DateUtils.addMilliseconds(loopDate, 1); } - //create last period 01/mm/yy to dd/mm/yy - FinancialPeriod financialPeriod = new FinancialPeriodImpl(); - financialPeriod.setBeginDate(DateUtils.truncate(loopDate, Calendar.MONTH)); - financialPeriod.setEndDate(endDate); - financialPeriodService.createFinancialPeriodWithTransaction(financialPeriod, transaction); } catch (TopiaException ex) { doCatch(transaction, ex, log); Modified: trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/FinancialPeriodServiceImpl.java =================================================================== --- trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/FinancialPeriodServiceImpl.java 2010-05-27 10:42:24 UTC (rev 2912) +++ trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/FinancialPeriodServiceImpl.java 2010-05-27 14:36:34 UTC (rev 2913) @@ -311,18 +311,21 @@ //Get closedperiodicentrybook from unlocked fiscalperiod TopiaQuery query = closedPeriodicEntryBookDAO.createQuery("E"); - //IMPORTANT : LOADING ClosedPeriodicEntryBook AND IS COLUMN FOR NO LAZY EXCEPTION - String loadEntryBookProperty = TopiaQuery.getProperty(ClosedPeriodicEntryBook.ENTRY_BOOK, EntryBook.LABEL); - query.addLoad(loadEntryBookProperty); - String loadFinancialPeriodProperty = TopiaQuery.getProperty(ClosedPeriodicEntryBook.FINANCIAL_PERIOD, FinancialPeriod.BEGIN_DATE); - query.addLoad(loadFinancialPeriodProperty); query.addFrom(FiscalPeriod.class, "F") .addInElements("E." + ClosedPeriodicEntryBook.FINANCIAL_PERIOD, "F."+FiscalPeriod.FINANCIAL_PERIOD) .add("F."+FiscalPeriod.LOCKED, Boolean.FALSE) .addOrder(FiscalPeriod.FINANCIAL_PERIOD, FinancialPeriod.BEGIN_DATE); + //IMPORTANT : LOADING ClosedPeriodicEntryBook AND IS COLUMN FOR NO LAZY EXCEPTION + String loadEntryBookProperty = TopiaQuery.getProperty(ClosedPeriodicEntryBook.ENTRY_BOOK, EntryBook.LABEL); + query.addLoad(loadEntryBookProperty); + String loadFinancialPeriodProperty = TopiaQuery.getProperty(ClosedPeriodicEntryBook.FINANCIAL_PERIOD, FinancialPeriod.BEGIN_DATE); + query.addLoad(loadFinancialPeriodProperty); + + //call query result = closedPeriodicEntryBookDAO.findAllByQuery(query); + log.debug(result); // commit transaction.commitTransaction(); @@ -336,6 +339,36 @@ return result; } + + @Override + public List<ClosedPeriodicEntryBook> getAllClosedPeriodicEntryBooks() throws LimaException { + List<ClosedPeriodicEntryBook> result = null; + + TopiaContext transaction = null; + try { + // basic check done, make check in database + // TODO move it into JTA + transaction = rootContext.beginTransaction(); + + ClosedPeriodicEntryBookDAO closedPeriodicEntryBookDAO + = LimaCallaoDAOHelper.getClosedPeriodicEntryBookDAO(transaction); + + result=closedPeriodicEntryBookDAO.findAll(); + for (ClosedPeriodicEntryBook closedPeriodicEntryBook : result) { + closedPeriodicEntryBook.getEntryBook().getLabel(); + closedPeriodicEntryBook.getFinancialPeriod().getBeginDate(); + } + // commit + transaction.commitTransaction(); + } + catch (TopiaException ex) { + doCatch(transaction, ex, log); + } + finally { + doFinally(transaction, log); + } + return result; + } Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialperiod/FinancialPeriodTableModel.java =================================================================== --- trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialperiod/FinancialPeriodTableModel.java 2010-05-27 10:42:24 UTC (rev 2912) +++ trunk/lima-swing/src/main/java/org/chorem/lima/ui/financialperiod/FinancialPeriodTableModel.java 2010-05-27 14:36:34 UTC (rev 2913) @@ -170,8 +170,8 @@ List<ClosedPeriodicEntryBook> results = new ArrayList<ClosedPeriodicEntryBook>(); try { - results = financialPeriodService. - getAllClosedPeriodicEntryBooksFromUnblockedFiscalPeriod(); + results = financialPeriodService.//getAllClosedPeriodicEntryBooks(); + getAllClosedPeriodicEntryBooksFromUnblockedFiscalPeriod(); } catch (LimaException eee){ if (log.isDebugEnabled()){ log.debug("Can't get closedperiodicentrybook list", eee );
participants (1)
-
jpepin@users.chorem.org