map.put( RelativePeriodEnum.TODAY, new RelativePeriods().setThisDay( true ) ); map.put( RelativePeriodEnum.YESTERDAY, new RelativePeriods().setYesterday( true ) ); map.put( RelativePeriodEnum.LAST_3_DAYS, new RelativePeriods().setLast3Days( true ) ); map.put( RelativePeriodEnum.LAST_7_DAYS, new RelativePeriods().setLast7Days( true ) ); map.put( RelativePeriodEnum.LAST_14_DAYS, new RelativePeriods().setLast14Days( true ) ); map.put( RelativePeriodEnum.THIS_MONTH, new RelativePeriods().setThisMonth( true ) ); map.put( RelativePeriodEnum.LAST_MONTH, new RelativePeriods().setLastMonth( true ) ); map.put( RelativePeriodEnum.THIS_BIMONTH, new RelativePeriods().setThisBimonth( true ) ); map.put( RelativePeriodEnum.LAST_BIMONTH, new RelativePeriods().setLastBimonth( true ) ); map.put( RelativePeriodEnum.THIS_QUARTER, new RelativePeriods().setThisQuarter( true ) ); map.put( RelativePeriodEnum.LAST_QUARTER, new RelativePeriods().setLastQuarter( true ) ); map.put( RelativePeriodEnum.THIS_SIX_MONTH, new RelativePeriods().setThisSixMonth( true ) ); map.put( RelativePeriodEnum.LAST_SIX_MONTH, new RelativePeriods().setLastSixMonth( true ) ); map.put( RelativePeriodEnum.WEEKS_THIS_YEAR, new RelativePeriods().setWeeksThisYear( true ) ); map.put( RelativePeriodEnum.MONTHS_THIS_YEAR, new RelativePeriods().setMonthsThisYear( true ) ); map.put( RelativePeriodEnum.BIMONTHS_THIS_YEAR, new RelativePeriods().setBiMonthsThisYear( true ) ); map.put( RelativePeriodEnum.QUARTERS_THIS_YEAR, new RelativePeriods().setQuartersThisYear( true ) ); map.put( RelativePeriodEnum.THIS_YEAR, new RelativePeriods().setThisYear( true ) ); map.put( RelativePeriodEnum.MONTHS_LAST_YEAR, new RelativePeriods().setMonthsLastYear( true ) ); map.put( RelativePeriodEnum.QUARTERS_LAST_YEAR, new RelativePeriods().setQuartersLastYear( true ) ); map.put( RelativePeriodEnum.LAST_YEAR, new RelativePeriods().setLastYear( true ) ); map.put( RelativePeriodEnum.LAST_5_YEARS, new RelativePeriods().setLast5Years( true ) ); map.put( RelativePeriodEnum.LAST_12_MONTHS, new RelativePeriods().setLast12Months( true ) ); map.put( RelativePeriodEnum.LAST_6_MONTHS, new RelativePeriods().setLast6Months( true ) ); map.put( RelativePeriodEnum.LAST_3_MONTHS, new RelativePeriods().setLast3Months( true ) ); map.put( RelativePeriodEnum.LAST_6_BIMONTHS, new RelativePeriods().setLast6BiMonths( true ) ); map.put( RelativePeriodEnum.LAST_4_QUARTERS, new RelativePeriods().setLast4Quarters( true ) ); map.put( RelativePeriodEnum.LAST_2_SIXMONTHS, new RelativePeriods().setLast2SixMonths( true ) ); map.put( RelativePeriodEnum.THIS_FINANCIAL_YEAR, new RelativePeriods().setThisFinancialYear( true ) );
add( list, RelativePeriodEnum.TODAY, thisDay ); add( list, RelativePeriodEnum.YESTERDAY, yesterday ); add( list, RelativePeriodEnum.LAST_3_DAYS, last3Days ); add( list, RelativePeriodEnum.LAST_7_DAYS, last7Days ); add( list, RelativePeriodEnum.LAST_14_DAYS, last14Days ); add( list, RelativePeriodEnum.THIS_MONTH, thisMonth ); add( list, RelativePeriodEnum.LAST_MONTH, lastMonth ); add( list, RelativePeriodEnum.THIS_BIMONTH, thisBimonth ); add( list, RelativePeriodEnum.LAST_BIMONTH, lastBimonth ); add( list, RelativePeriodEnum.THIS_QUARTER, thisQuarter ); add( list, RelativePeriodEnum.LAST_QUARTER, lastQuarter ); add( list, RelativePeriodEnum.THIS_SIX_MONTH, thisSixMonth ); add( list, RelativePeriodEnum.LAST_SIX_MONTH, lastSixMonth ); add( list, RelativePeriodEnum.WEEKS_THIS_YEAR, weeksThisYear ); add( list, RelativePeriodEnum.MONTHS_THIS_YEAR, monthsThisYear ); add( list, RelativePeriodEnum.BIMONTHS_THIS_YEAR, biMonthsThisYear ); add( list, RelativePeriodEnum.QUARTERS_THIS_YEAR, quartersThisYear ); add( list, RelativePeriodEnum.THIS_YEAR, thisYear ); add( list, RelativePeriodEnum.MONTHS_LAST_YEAR, monthsLastYear ); add( list, RelativePeriodEnum.QUARTERS_LAST_YEAR, quartersLastYear ); add( list, RelativePeriodEnum.LAST_YEAR, lastYear ); add( list, RelativePeriodEnum.LAST_5_YEARS, last5Years ); add( list, RelativePeriodEnum.LAST_12_MONTHS, last12Months ); add( list, RelativePeriodEnum.LAST_6_MONTHS, last6Months ); add( list, RelativePeriodEnum.LAST_3_MONTHS, last3Months ); add( list, RelativePeriodEnum.LAST_6_BIMONTHS, last6BiMonths ); add( list, RelativePeriodEnum.LAST_4_QUARTERS, last4Quarters ); add( list, RelativePeriodEnum.LAST_2_SIXMONTHS, last2SixMonths ); add( list, RelativePeriodEnum.THIS_FINANCIAL_YEAR, thisFinancialYear );
/** * Gets a list of Periods rewinded from current date. */ public List<Period> getRewindedRelativePeriods( Integer rewindedPeriods, Date date, I18nFormat format, boolean dynamicNames ) { List<Period> periods = getRelativePeriods(); PeriodType periodType = getHighestFrequencyPeriodType( periods ); Date rewindedDate = periodType.getRewindedDate( date, rewindedPeriods ); return getRelativePeriods( rewindedDate, format, dynamicNames, FINANCIAL_YEAR_OCTOBER ); }
/** * Gets a list of financial periods based on the given input and the state of this * RelativePeriods. * * @param financialPeriodType The financial period type to get * @param format the i18n format. * @return a list of relative Periods. */ private List<Period> getRelativeFinancialPeriods( FinancialPeriodType financialPeriodType, I18nFormat format, boolean dynamicNames ) { Date date = new Date(); List<Period> periods = new ArrayList<>(); if ( isThisFinancialYear() ) { periods.add( getRelativePeriod( financialPeriodType, THIS_FINANCIAL_YEAR, date, dynamicNames, format ) ); } date = new DateTime( date ).minusMonths( MONTHS_IN_YEAR ).toDate(); // Rewind one year if ( isLastFinancialYear() ) { periods.add( getRelativePeriod( financialPeriodType, LAST_FINANCIAL_YEAR, date, dynamicNames, format ) ); } if ( isLast5FinancialYears() ) { periods.addAll( getRollingRelativePeriodList( financialPeriodType, LAST_5_FINANCIAL_YEARS, date, dynamicNames, format ) ); } return periods; }
if ( isThisFinancialPeriod() ) periods.addAll( getRelativeFinancialPeriods( financialPeriodType, format, dynamicNames ) ); if ( isThisDay() ) periods.add( getRelativePeriod( new DailyPeriodType(), THISDAY, date, dynamicNames, format ) ); if ( isYesterday() ) periods.add( getRelativePeriod( new DailyPeriodType(), YESTERDAY, new DateTime( date ).minusDays( 1 ).toDate(), dynamicNames, format ) ); if ( isLast3Days() ) periods.addAll( getRollingRelativePeriodList( new DailyPeriodType(), DAYS_IN_YEAR, new DateTime( date ).minusDays( 1 ).toDate(), dynamicNames, format ).subList( 362, 365 ) ); if ( isLast7Days() ) periods.addAll( getRollingRelativePeriodList( new DailyPeriodType(), DAYS_IN_YEAR, new DateTime( date ).minusDays( 1 ).toDate(), dynamicNames, format ).subList( 358, 365 ) ); if ( isLast14Days() ) periods.addAll( getRollingRelativePeriodList( new DailyPeriodType(), DAYS_IN_YEAR, new DateTime( date ).minusDays( 1 ).toDate(), dynamicNames, format ).subList( 351, 365 ) ); if ( isThisWeek() ) periods.add( getRelativePeriod( new WeeklyPeriodType(), LAST_WEEK, date, dynamicNames, format ) ); if ( isLastWeek() )
@Override public MapView getIndicatorLastYearMapView( String indicatorUid, String organisationUnitUid, int level ) { MapView mapView = new MapView(); Period period = periodService.reloadPeriod( new RelativePeriods().setThisYear( true ).getRelativePeriods() .iterator().next() ); Indicator indicator = indicatorService.getIndicator( indicatorUid ); OrganisationUnit unit = organisationUnitService.getOrganisationUnit( organisationUnitUid ); mapView.addDataDimensionItem( indicator ); mapView.getPeriods().add( period ); mapView.getOrganisationUnits().add( unit ); mapView.getOrganisationUnitLevels().add( level ); mapView.setName( indicator.getName() ); return mapView; }
@Override public JFreeChart getJFreePeriodChart( Indicator indicator, OrganisationUnit unit, boolean title, I18nFormat format ) { List<Period> periods = periodService.reloadPeriods( new RelativePeriods().setLast12Months( true ).getRelativePeriods( format, true ) ); Chart chart = new Chart(); if ( title ) { chart.setName( indicator.getName() ); } chart.setType( ChartType.LINE ); chart.setDimensions( DimensionalObject.DATA_X_DIM_ID, DimensionalObject.PERIOD_DIM_ID, DimensionalObject.ORGUNIT_DIM_ID ); chart.setHideLegend( true ); chart.addDataDimensionItem( indicator ); chart.setPeriods( periods ); chart.getOrganisationUnits().add( unit ); chart.setHideSubtitle( title ); chart.setFormat( format ); return getJFreeChart( chart ); }
/** * Gets a list of Periods relative to current date. */ public List<Period> getRelativePeriods() { return getRelativePeriods( null, null, false, FINANCIAL_YEAR_OCTOBER ); }
object.setRelatives( new RelativePeriods().setRelativePeriodsFromEnums( enums ) ); object.setPeriods( periodService.reloadPeriods( new ArrayList<>( periods ) ) );
/** * Return the name of the reporting period. * * @param date the start date of the reporting period. * @param format the i18n format. * @return the name of the reporting period. */ public String getReportingPeriodName( Date date, I18nFormat format ) { if ( date == null ) { return getReportingPeriodName( format ); } Period period = getPeriodType().createPeriod( date ); return format.formatPeriod( period ); }
/** * Return the name of the reporting period. * * @param format the i18n format. * @return the name of the reporting period. */ public String getReportingPeriodName( I18nFormat format ) { Period period = getPeriodType().createPeriod( new Date() ); return format.formatPeriod( period ); }
@Override public JFreeChart getJFreeOrganisationUnitChart( Indicator indicator, OrganisationUnit parent, boolean title, I18nFormat format ) { List<Period> periods = periodService.reloadPeriods( new RelativePeriods().setThisYear( true ).getRelativePeriods( format, true ) ); Chart chart = new Chart(); if ( title ) { chart.setName( indicator.getName() ); } chart.setType( ChartType.COLUMN ); chart.setDimensions( DimensionalObject.DATA_X_DIM_ID, DimensionalObject.ORGUNIT_DIM_ID, DimensionalObject.PERIOD_DIM_ID ); chart.setHideLegend( true ); chart.addDataDimensionItem( indicator ); chart.setPeriods( periods ); chart.setOrganisationUnits( parent.getSortedChildren() ); chart.setHideSubtitle( title ); chart.setFormat( format ); return getJFreeChart( chart ); }
/** * Gets a list of Periods based on the given input and the state of this * RelativePeriods. The current date is set to todays date minus one month. * * @param format the i18n format. * @return a list of relative Periods. */ public List<Period> getRelativePeriods( I18nFormat format, boolean dynamicNames ) { return getRelativePeriods( null, format, dynamicNames, FINANCIAL_YEAR_OCTOBER ); }
/** * Indicates whether this object contains at least one relative period. */ public boolean isEmpty() { return getRelativePeriods().isEmpty(); }
for ( Period period : report.getRelatives().getRelativePeriods( date, format, true, financialYearStart ) ) periods = IdentifiableObjectUtils.getLocalPeriodIdentifiers( report.getRelatives().getRelativePeriods( date, format, true, financialYearStart ), calendar );
items.addAll( relatives.getRelativePeriods( date, format, dynamicNames, FINANCIAL_YEAR_OCTOBER ) );
List<Period> relativePeriods = report.getRelatives().getRelativePeriods( reportDate, null, false, financialYearStart );
period = mapView.getRelatives().getRelativePeriods( date, null, false, financialYearStart ).get( 0 );