@Override @Transactional public void generatePeriodTable() { resourceTableStore.generateResourceTable( new PeriodResourceTable( periodService.getAllPeriods() ) ); }
@Override public void prunePeriods() { for ( Period period : periodService.getAllPeriods() ) { int periodId = period.getId(); try { periodService.deletePeriod( period ); log.info( "Deleted period with id: " + periodId ); } catch ( DeleteNotAllowedException ex ) { log.debug( "Period has associated objects and could not be deleted: " + periodId ); } } }
@Override public List<Period> getDuplicatePeriods() { Collection<Period> periods = periodService.getAllPeriods(); List<Period> duplicates = new ArrayList<>(); ListMap<String, Period> map = new ListMap<>(); for ( Period period : periods ) { String key = period.getPeriodType().getName() + period.getStartDate().toString(); period.setName( period.toString() ); map.putValue( key, period ); } for ( String key : map.keySet() ) { List<Period> values = map.get( key ); if ( values != null && values.size() > 1 ) { duplicates.addAll( values ); } } return duplicates; }