=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/caseaggregation/CaseAggregationConditionService.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/caseaggregation/CaseAggregationConditionService.java 2012-02-11 13:58:02 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/caseaggregation/CaseAggregationConditionService.java 2012-03-16 07:50:14 +0000 @@ -59,6 +59,8 @@ Collection getCaseAggregationCondition( DataElement dataElement ); CaseAggregationCondition getCaseAggregationCondition( DataElement dataElement, DataElementCategoryOptionCombo optionCombo ); + + Collection getCaseAggregationCondition( Collection dataElements ); Double parseConditition( CaseAggregationCondition aggregationCondition, OrganisationUnit orgunit, Period period ); === modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/caseaggregation/CaseAggregationConditionStore.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/caseaggregation/CaseAggregationConditionStore.java 2012-02-11 13:58:02 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/caseaggregation/CaseAggregationConditionStore.java 2012-03-16 07:50:14 +0000 @@ -48,5 +48,7 @@ CaseAggregationCondition get( DataElement dataElement, DataElementCategoryOptionCombo optionCombo ); + Collection get( Collection dataElements ); + List executeSQL( String sql ); } === modified file 'dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/caseaggregation/DefaultCaseAggregationConditionService.java' --- dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/caseaggregation/DefaultCaseAggregationConditionService.java 2012-03-06 08:58:47 +0000 +++ dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/caseaggregation/DefaultCaseAggregationConditionService.java 2012-03-16 07:50:14 +0000 @@ -489,6 +489,11 @@ return patientAttributes; } + public Collection getCaseAggregationCondition( Collection dataElements ) + { + return aggregationConditionStore.get( dataElements ); + } + // ------------------------------------------------------------------------- // Support Methods // ------------------------------------------------------------------------- === modified file 'dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/caseaggregation/jdbc/JdbcCaseAggregationConditionStore.java' --- dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/caseaggregation/jdbc/JdbcCaseAggregationConditionStore.java 2012-02-11 13:58:02 +0000 +++ dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/caseaggregation/jdbc/JdbcCaseAggregationConditionStore.java 2012-03-16 07:50:14 +0000 @@ -119,4 +119,11 @@ Restrictions.eq( "optionCombo", optionCombo )) .uniqueResult(); } + + @SuppressWarnings("unchecked") + @Override + public Collection get( Collection dataElements ) + { + return getCriteria( Restrictions.in( "aggregationDataElement", dataElements ) ).list(); + } } === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/java/org/hisp/dhis/patient/action/caseaggregation/GetAllCaseAggregationConditionAction.java' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/java/org/hisp/dhis/patient/action/caseaggregation/GetAllCaseAggregationConditionAction.java 2012-01-11 05:31:53 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/java/org/hisp/dhis/patient/action/caseaggregation/GetAllCaseAggregationConditionAction.java 2012-03-16 07:50:14 +0000 @@ -31,6 +31,8 @@ import org.hisp.dhis.caseaggregation.CaseAggregationCondition; import org.hisp.dhis.caseaggregation.CaseAggregationConditionService; +import org.hisp.dhis.dataset.DataSet; +import org.hisp.dhis.dataset.DataSetService; import com.opensymphony.xwork2.Action; @@ -48,24 +50,46 @@ private CaseAggregationConditionService aggregationConditionService; - // ------------------------------------------------------------------------- - // Input - // ------------------------------------------------------------------------- + public void setAggregationConditionService( CaseAggregationConditionService aggregationConditionService ) + { + this.aggregationConditionService = aggregationConditionService; + } + + public DataSetService dataSetService; + + public void setDataSetService( DataSetService dataSetService ) + { + this.dataSetService = dataSetService; + } + + // ------------------------------------------------------------------------- + // Getters && Setters + // ------------------------------------------------------------------------- + + private Integer dataSetId; + + public void setDataSetId( Integer dataSetId ) + { + this.dataSetId = dataSetId; + } + + public Integer getDataSetId() + { + return dataSetId; + } private Collection aggregationConditions; - // ------------------------------------------------------------------------- - // Getters && Setters - // ------------------------------------------------------------------------- - public Collection getAggregationConditions() { return aggregationConditions; } - public void setAggregationConditionService( CaseAggregationConditionService aggregationConditionService ) + private Collection dataSets; + + public Collection getDataSets() { - this.aggregationConditionService = aggregationConditionService; + return dataSets; } // ------------------------------------------------------------------------- @@ -76,7 +100,18 @@ public String execute() throws Exception { - aggregationConditions = aggregationConditionService.getAllCaseAggregationCondition(); + dataSets = dataSetService.getAllDataSets(); + + if ( dataSetId == null ) + { + aggregationConditions = aggregationConditionService.getAllCaseAggregationCondition(); + + return SUCCESS; + } + + DataSet dataSet = dataSetService.getDataSet( dataSetId ); + + aggregationConditions = aggregationConditionService.getCaseAggregationCondition( dataSet.getDataElements() ); return SUCCESS; } === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/java/org/hisp/dhis/patient/action/caseaggregation/ShowAddCaseAggregationConditionFormAction.java' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/java/org/hisp/dhis/patient/action/caseaggregation/ShowAddCaseAggregationConditionFormAction.java 2012-03-16 02:00:50 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/java/org/hisp/dhis/patient/action/caseaggregation/ShowAddCaseAggregationConditionFormAction.java 2012-03-16 07:50:14 +0000 @@ -67,7 +67,9 @@ // ------------------------------------------------------------------------- private Integer id; - + + private Integer dataSetId; + private List patientAttributes; private List dataSets; @@ -100,6 +102,16 @@ this.id = id; } + public void setDataSetId( Integer dataSetId ) + { + this.dataSetId = dataSetId; + } + + public Integer getDataSetId() + { + return dataSetId; + } + public List getPrograms() { return programs; === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/java/org/hisp/dhis/patient/action/caseaggregation/ShowUpdateCaseAggregationConditionFormAction.java' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/java/org/hisp/dhis/patient/action/caseaggregation/ShowUpdateCaseAggregationConditionFormAction.java 2012-03-16 02:00:50 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/java/org/hisp/dhis/patient/action/caseaggregation/ShowUpdateCaseAggregationConditionFormAction.java 2012-03-16 07:50:14 +0000 @@ -71,6 +71,8 @@ private Integer id; + private Integer dataSetId; + private CaseAggregationCondition caseAggregation; private String description; @@ -110,6 +112,16 @@ this.id = id; } + public void setDataSetId( Integer dataSetId ) + { + this.dataSetId = dataSetId; + } + + public Integer getDataSetId() + { + return dataSetId; + } + public String getDescription() { return description; === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/resources/META-INF/dhis/beans.xml' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/resources/META-INF/dhis/beans.xml 2012-03-13 08:24:08 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/resources/META-INF/dhis/beans.xml 2012-03-16 07:50:14 +0000 @@ -602,6 +602,9 @@ + + + /dhis-web-maintenance-patient/caseAggregation.vm /dhis-web-maintenance-patient/menu.vm javascript/caseaggregation.js + style/basic.css plainTextError + + /content.vm + /dhis-web-maintenance-patient/caseAggregationList.vm + + #foreach( $dataSet in $dataSets) - + #end @@ -278,7 +278,7 @@ - + @@ -290,4 +290,7 @@ var i18n_run_success = '$encoder.jsEscape( $i18n.getString( "run_success" ) , "'" )'; var i18n_run_fail = '$encoder.jsEscape( $i18n.getString( "run_fail" ) , "'" )'; jQuery("#tabs").tabs(); + #if( $dataSetId ) + getDataElementsByDataset(); + #end === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/caseAggregation.vm' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/caseAggregation.vm 2012-01-11 07:42:49 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/caseAggregation.vm 2012-03-16 07:50:14 +0000 @@ -3,53 +3,50 @@ @@ -281,16 +294,9 @@
+ + + + + + + + + + + +
$i18n.getString( "filter_by_data_set" ) + +
$i18n.getString( "filter_by_name" ) + + + +
+ + + + -
- - - - - - - - - - - - - - - #foreach( $aggregationCondition in $aggregationConditions ) - - - - - - - - - - - - #end - - + + + + + + + #parse( "/dhis-web-maintenance-patient/caseAggregationList.vm" ) +
- $i18n.getString( "filter_by_name" ): -
$i18n.getString( "name" )$i18n.getString( "operations" )
$encoder.htmlEncode( $aggregationCondition.description ) - $i18n.getString( - - $i18n.getString( - - $i18n.getString( -
$i18n.getString( "name" )$i18n.getString( "operations" )
- - +
- -