use of org.activityinfo.shared.report.model.Dimension in project activityinfo by bedatadriven.
the class PivotSitesHandlerLocalTest method withPartnerAsDimension.
private void withPartnerAsDimension() {
partnerDim = new Dimension(DimensionType.Partner);
dimensions.add(partnerDim);
}
use of org.activityinfo.shared.report.model.Dimension in project activityinfo by bedatadriven.
the class PivotSitesHandlerLocalTest method withIndicatorAsDimension.
private void withIndicatorAsDimension() {
indicatorDim = new Dimension(DimensionType.Indicator);
dimensions.add(indicatorDim);
}
use of org.activityinfo.shared.report.model.Dimension in project activityinfo by bedatadriven.
the class PivotSitesHandlerLocalTest method testTargetPivot.
/**
* year, quarter and month functions in SqliteDialect throw java.lang.UnsupportedOperationException
*/
@Test(expected = RuntimeException.class)
@OnDataSet("/dbunit/sites-simple-target.db.xml")
public void testTargetPivot() {
withIndicatorAsDimension();
dimensions.add(new DateDimension(DateUnit.YEAR));
dimensions.add(new Dimension(DimensionType.Target));
filter.addRestriction(DimensionType.Indicator, 1);
filter.setDateRange(new DateRange(new LocalDate(2008, 1, 1), new LocalDate(2008, 12, 31)));
execute();
assertThat().thereAre(2).buckets();
}
use of org.activityinfo.shared.report.model.Dimension in project activityinfo by bedatadriven.
the class PivotSitesHandlerLocalTest method targetFilter.
@Test
public void targetFilter() {
// Pivoting: PivotSites [dimensions=[Date, Partner, Date, Target,
// Activity, Indicator],
// filter=AdminLevel={ 141801 }, Partner={ 130 },
// Indicator={ 747 746 745 744 749 748 739 738 743 740 119 118 3661 125
// 124 123 122 121 }, valueType=INDICATOR]
withPartnerAsDimension();
// dimensions.add(new DateDimension(DateUnit.YEAR));
dimensions.add(new Dimension(DimensionType.Target));
dimensions.add(new Dimension(DimensionType.Activity));
dimensions.add(new Dimension(DimensionType.Indicator));
filter.addRestriction(DimensionType.AdminLevel, 141801);
filter.addRestriction(DimensionType.Partner, 130);
filter.addRestriction(DimensionType.Indicator, 1);
execute();
}
use of org.activityinfo.shared.report.model.Dimension in project activityinfo by bedatadriven.
the class ReportJsonFactory method decodeDimensionList.
public List<Dimension> decodeDimensionList(JsonArray dimensions) {
Iterator<JsonElement> it = dimensions.iterator();
List<Dimension> dimensionsList = new ArrayList<Dimension>();
while (it.hasNext()) {
JsonObject dim = it.next().getAsJsonObject();
String type = dim.get("type").getAsString();
if (type.equals(DimensionType.Date.toString())) {
String dateUnit = dim.get("dateUnit").getAsString();
DateDimension dimension = new DateDimension(DateUnit.valueOf(dateUnit));
JsonElement categories = dim.get("categories");
if (categories != null) {
dimension.setCategories(decodeCategories(categories));
}
dimensionsList.add(dimension);
} else if (type.equals(DimensionType.AdminLevel.toString())) {
Integer level = dim.get("level").getAsInt();
AdminDimension dimension = new AdminDimension(level);
JsonElement categories = dim.get("categories");
if (categories != null) {
dimension.setCategories(decodeCategories(categories));
}
dimensionsList.add(dimension);
} else {
Dimension dimension = new Dimension(DimensionType.valueOf(dim.get("type").getAsString()));
JsonElement color = dim.get("color");
if (color != null) {
dimension.setColor(color.getAsString());
}
JsonElement categories = dim.get("categories");
if (categories != null) {
dimension.setCategories(decodeCategories(categories));
}
dimensionsList.add(dimension);
}
}
return dimensionsList;
}
Aggregations