=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/eventchart/EventChart.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/eventchart/EventChart.java 2015-02-18 17:33:23 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/eventchart/EventChart.java 2015-02-18 17:42:47 +0000 @@ -32,6 +32,7 @@ import java.util.Date; import java.util.List; +import org.hisp.dhis.analytics.AggregationType; import org.hisp.dhis.analytics.EventOutputType; import org.hisp.dhis.chart.BaseChart; import org.hisp.dhis.common.AnalyticsType; @@ -106,6 +107,11 @@ private TrackedEntityAttribute attributeValueDimension; /** + * Aggregation type. + */ + private AggregationType aggregationType; + + /** * Dimensions to crosstabulate / use as columns. */ private List columnDimensions = new ArrayList<>(); @@ -299,6 +305,19 @@ } @JsonProperty + @JsonView( { DetailedView.class, ExportView.class, DimensionalView.class } ) + @JacksonXmlProperty( namespace = DxfNamespaces.DXF_2_0 ) + public AggregationType getAggregationType() + { + return aggregationType; + } + + public void setAggregationType( AggregationType aggregationType ) + { + this.aggregationType = aggregationType; + } + + @JsonProperty @JsonView( { DetailedView.class, ExportView.class } ) @JacksonXmlElementWrapper( localName = "columnDimensions", namespace = DxfNamespaces.DXF_2_0 ) @JacksonXmlProperty( localName = "columnDimension", namespace = DxfNamespaces.DXF_2_0 ) @@ -369,34 +388,36 @@ if ( other.getClass().isInstance( this ) ) { - EventChart eventChart = (EventChart) other; + EventChart chart = (EventChart) other; if ( MergeStrategy.MERGE_ALWAYS.equals( strategy ) ) { - dataElementValueDimension = eventChart.getDataElementValueDimension(); - attributeValueDimension = eventChart.getAttributeValueDimension(); - program = eventChart.getProgram(); - programStage = eventChart.getProgramStage(); - startDate = eventChart.getStartDate(); - endDate = eventChart.getEndDate(); - outputType = eventChart.getOutputType(); + dataElementValueDimension = chart.getDataElementValueDimension(); + attributeValueDimension = chart.getAttributeValueDimension(); + aggregationType = chart.getAggregationType(); + program = chart.getProgram(); + programStage = chart.getProgramStage(); + startDate = chart.getStartDate(); + endDate = chart.getEndDate(); + outputType = chart.getOutputType(); } else if ( MergeStrategy.MERGE_IF_NOT_NULL.equals( strategy ) ) { - dataElementValueDimension = eventChart.getDataElementValueDimension() == null ? dataElementValueDimension : eventChart.getDataElementValueDimension(); - attributeValueDimension = eventChart.getAttributeValueDimension() == null ? attributeValueDimension : eventChart.getAttributeValueDimension(); - program = eventChart.getProgram() == null ? program : eventChart.getProgram(); - programStage = eventChart.getProgramStage() == null ? programStage : eventChart.getProgramStage(); - startDate = eventChart.getStartDate() == null ? startDate : eventChart.getStartDate(); - endDate = eventChart.getEndDate() == null ? endDate : eventChart.getEndDate(); - outputType = eventChart.getOutputType() == null ? outputType : eventChart.getOutputType(); + dataElementValueDimension = chart.getDataElementValueDimension() == null ? dataElementValueDimension : chart.getDataElementValueDimension(); + attributeValueDimension = chart.getAttributeValueDimension() == null ? attributeValueDimension : chart.getAttributeValueDimension(); + aggregationType = chart.getAggregationType() == null ? aggregationType : chart.getAggregationType(); + program = chart.getProgram() == null ? program : chart.getProgram(); + programStage = chart.getProgramStage() == null ? programStage : chart.getProgramStage(); + startDate = chart.getStartDate() == null ? startDate : chart.getStartDate(); + endDate = chart.getEndDate() == null ? endDate : chart.getEndDate(); + outputType = chart.getOutputType() == null ? outputType : chart.getOutputType(); } columnDimensions.clear(); - columnDimensions.addAll( eventChart.getColumnDimensions() ); + columnDimensions.addAll( chart.getColumnDimensions() ); rowDimensions.clear(); - rowDimensions.addAll( eventChart.getRowDimensions() ); + rowDimensions.addAll( chart.getRowDimensions() ); } } } === modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/eventreport/EventReport.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/eventreport/EventReport.java 2015-02-18 17:33:23 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/eventreport/EventReport.java 2015-02-18 17:42:47 +0000 @@ -32,6 +32,7 @@ import java.util.Date; import java.util.List; +import org.hisp.dhis.analytics.AggregationType; import org.hisp.dhis.analytics.EventOutputType; import org.hisp.dhis.common.BaseAnalyticalObject; import org.hisp.dhis.common.BaseDimensionalObject; @@ -103,6 +104,11 @@ private TrackedEntityAttribute attributeValueDimension; /** + * Aggregation type. + */ + private AggregationType aggregationType; + + /** * Type of data, can be aggregated values and individual cases. */ private String dataType; @@ -319,6 +325,19 @@ @JsonProperty @JsonView( { DetailedView.class, ExportView.class, DimensionalView.class } ) @JacksonXmlProperty( namespace = DxfNamespaces.DXF_2_0 ) + public AggregationType getAggregationType() + { + return aggregationType; + } + + public void setAggregationType( AggregationType aggregationType ) + { + this.aggregationType = aggregationType; + } + + @JsonProperty + @JsonView( { DetailedView.class, ExportView.class, DimensionalView.class } ) + @JacksonXmlProperty( namespace = DxfNamespaces.DXF_2_0 ) public String getDataType() { return dataType; @@ -531,51 +550,53 @@ if ( other.getClass().isInstance( this ) ) { - EventReport eventReport = (EventReport) other; + EventReport report = (EventReport) other; - rowSubTotals = eventReport.isRowSubTotals(); - colSubTotals = eventReport.isColSubTotals(); - hideEmptyRows = eventReport.isHideEmptyRows(); - rowTotals = eventReport.isRowTotals(); - colTotals = eventReport.isColTotals(); - showHierarchy = eventReport.isShowHierarchy(); - showDimensionLabels = eventReport.isShowDimensionLabels(); + rowSubTotals = report.isRowSubTotals(); + colSubTotals = report.isColSubTotals(); + hideEmptyRows = report.isHideEmptyRows(); + rowTotals = report.isRowTotals(); + colTotals = report.isColTotals(); + showHierarchy = report.isShowHierarchy(); + showDimensionLabels = report.isShowDimensionLabels(); if ( MergeStrategy.MERGE_ALWAYS.equals( strategy ) ) { - dataElementValueDimension = eventReport.getDataElementValueDimension(); - attributeValueDimension = eventReport.getAttributeValueDimension(); - dataType = eventReport.getDataType(); - program = eventReport.getProgram(); - programStage = eventReport.getProgramStage(); - startDate = eventReport.getStartDate(); - endDate = eventReport.getEndDate(); - outputType = eventReport.getOutputType(); - displayDensity = eventReport.getDisplayDensity(); - fontSize = eventReport.getFontSize(); + dataElementValueDimension = report.getDataElementValueDimension(); + attributeValueDimension = report.getAttributeValueDimension(); + aggregationType = report.getAggregationType(); + dataType = report.getDataType(); + program = report.getProgram(); + programStage = report.getProgramStage(); + startDate = report.getStartDate(); + endDate = report.getEndDate(); + outputType = report.getOutputType(); + displayDensity = report.getDisplayDensity(); + fontSize = report.getFontSize(); } else if ( MergeStrategy.MERGE_IF_NOT_NULL.equals( strategy ) ) { - dataElementValueDimension = eventReport.getDataElementValueDimension() == null ? dataElementValueDimension : eventReport.getDataElementValueDimension(); - attributeValueDimension = eventReport.getAttributeValueDimension() == null ? attributeValueDimension : eventReport.getAttributeValueDimension(); - dataType = eventReport.getDataType() == null ? dataType : eventReport.getDataType(); - program = eventReport.getProgram() == null ? program : eventReport.getProgram(); - programStage = eventReport.getProgramStage() == null ? programStage : eventReport.getProgramStage(); - startDate = eventReport.getStartDate() == null ? startDate : eventReport.getStartDate(); - endDate = eventReport.getEndDate() == null ? endDate : eventReport.getEndDate(); - outputType = eventReport.getOutputType() == null ? outputType : eventReport.getOutputType(); - displayDensity = eventReport.getDisplayDensity() == null ? displayDensity : eventReport.getDisplayDensity(); - fontSize = eventReport.getFontSize() == null ? fontSize : eventReport.getFontSize(); + dataElementValueDimension = report.getDataElementValueDimension() == null ? dataElementValueDimension : report.getDataElementValueDimension(); + attributeValueDimension = report.getAttributeValueDimension() == null ? attributeValueDimension : report.getAttributeValueDimension(); + aggregationType = report.getAggregationType() == null ? aggregationType : report.getAggregationType(); + dataType = report.getDataType() == null ? dataType : report.getDataType(); + program = report.getProgram() == null ? program : report.getProgram(); + programStage = report.getProgramStage() == null ? programStage : report.getProgramStage(); + startDate = report.getStartDate() == null ? startDate : report.getStartDate(); + endDate = report.getEndDate() == null ? endDate : report.getEndDate(); + outputType = report.getOutputType() == null ? outputType : report.getOutputType(); + displayDensity = report.getDisplayDensity() == null ? displayDensity : report.getDisplayDensity(); + fontSize = report.getFontSize() == null ? fontSize : report.getFontSize(); } columnDimensions.clear(); - columnDimensions.addAll( eventReport.getColumnDimensions() ); + columnDimensions.addAll( report.getColumnDimensions() ); rowDimensions.clear(); - rowDimensions.addAll( eventReport.getRowDimensions() ); + rowDimensions.addAll( report.getRowDimensions() ); filterDimensions.clear(); - filterDimensions.addAll( eventReport.getFilterDimensions() ); + filterDimensions.addAll( report.getFilterDimensions() ); } } } === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/main/resources/org/hisp/dhis/eventchart/EventChart.hbm.xml' --- dhis-2/dhis-services/dhis-service-tracker/src/main/resources/org/hisp/dhis/eventchart/EventChart.hbm.xml 2015-02-18 17:33:23 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/main/resources/org/hisp/dhis/eventchart/EventChart.hbm.xml 2015-02-18 17:42:47 +0000 @@ -95,6 +95,13 @@ + + + org.hisp.dhis.analytics.AggregationType + 12 + + + === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/main/resources/org/hisp/dhis/eventreport/EventReport.hbm.xml' --- dhis-2/dhis-services/dhis-service-tracker/src/main/resources/org/hisp/dhis/eventreport/EventReport.hbm.xml 2015-02-18 17:33:23 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/main/resources/org/hisp/dhis/eventreport/EventReport.hbm.xml 2015-02-18 17:42:47 +0000 @@ -95,6 +95,13 @@ + + + org.hisp.dhis.analytics.AggregationType + 12 + + +