=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/Program.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/Program.java 2014-08-26 12:43:04 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/Program.java 2014-10-06 10:11:29 +0000 @@ -28,12 +28,12 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonView; -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper; -import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; -import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashSet; +import java.util.List; +import java.util.Set; + import org.hisp.dhis.common.BaseIdentifiableObject; import org.hisp.dhis.common.DxfNamespaces; import org.hisp.dhis.common.IdentifiableObject; @@ -50,11 +50,12 @@ import org.hisp.dhis.user.UserAuthorityGroup; import org.hisp.dhis.validation.ValidationCriteria; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashSet; -import java.util.List; -import java.util.Set; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonView; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper; +import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; +import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; /** * @author Abyot Asalefew @@ -82,7 +83,7 @@ private Set organisationUnits = new HashSet<>(); @Scanned - private List programStages = new ArrayList<>(); + private Set programStages = new HashSet<>(); @Scanned private Set validationCriteria = new HashSet<>(); @@ -262,12 +263,12 @@ @JsonView( { DetailedView.class, ExportView.class, WithoutOrganisationUnitsView.class } ) @JacksonXmlElementWrapper( localName = "programStages", namespace = DxfNamespaces.DXF_2_0 ) @JacksonXmlProperty( localName = "programStage", namespace = DxfNamespaces.DXF_2_0 ) - public List getProgramStages() + public Set getProgramStages() { return programStages; } - public void setProgramStages( List programStages ) + public void setProgramStages( Set programStages ) { this.programStages = programStages; } === modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramStage.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramStage.java 2014-09-13 10:41:05 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramStage.java 2014-10-06 10:11:29 +0000 @@ -115,6 +115,8 @@ private Boolean openAfterEnrollment = false; private String reportDateToUse; + + private Integer sortOrder; // ------------------------------------------------------------------------- // Constructors @@ -453,6 +455,19 @@ this.preGenerateUID = preGenerateUID; } + @JsonProperty + @JsonView( { DetailedView.class, ExportView.class } ) + @JacksonXmlProperty( namespace = DxfNamespaces.DXF_2_0 ) + public Integer getSortOrder() + { + return sortOrder; + } + + public void setSortOrder( Integer sortOrder ) + { + this.sortOrder = sortOrder; + } + @Override public void mergeWith( IdentifiableObject other ) { === modified file 'dhis-2/dhis-services/dhis-service-analytics/src/test/java/org/hisp/dhis/analytics/event/data/EventAnalyticsServiceTest.java' --- dhis-2/dhis-services/dhis-service-analytics/src/test/java/org/hisp/dhis/analytics/event/data/EventAnalyticsServiceTest.java 2014-09-25 10:17:34 +0000 +++ dhis-2/dhis-services/dhis-service-analytics/src/test/java/org/hisp/dhis/analytics/event/data/EventAnalyticsServiceTest.java 2014-10-06 10:11:29 +0000 @@ -32,7 +32,6 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; -import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; @@ -135,7 +134,7 @@ attributeService.addTrackedEntityAttribute( atB ); - prA = createProgram( 'A', new ArrayList(), asSet( atA, atB ), asSet( ouA, ouB ) ); + prA = createProgram( 'A', new HashSet(), asSet( atA, atB ), asSet( ouA, ouB ) ); programService.addProgram( prA ); psA = createProgramStage( 'A', asSet( deA, deB ) ); === modified file 'dhis-2/dhis-services/dhis-service-dxf2/src/test/java/org/hisp/dhis/dxf2/events/EnrollmentServiceTest.java' --- dhis-2/dhis-services/dhis-service-dxf2/src/test/java/org/hisp/dhis/dxf2/events/EnrollmentServiceTest.java 2014-08-25 16:08:58 +0000 +++ dhis-2/dhis-services/dhis-service-dxf2/src/test/java/org/hisp/dhis/dxf2/events/EnrollmentServiceTest.java 2014-10-06 10:11:29 +0000 @@ -31,8 +31,8 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertThat; -import java.util.ArrayList; import java.util.Date; +import java.util.HashSet; import java.util.List; import org.hamcrest.CoreMatchers; @@ -121,7 +121,7 @@ programStage.setGeneratedByEnrollmentDate( true ); manager.save( programStage ); - programA = createProgram( 'A', new ArrayList(), organisationUnitA ); + programA = createProgram( 'A', new HashSet(), organisationUnitA ); programA.setType( Program.SINGLE_EVENT_WITH_REGISTRATION ); manager.save( programA ); === modified file 'dhis-2/dhis-services/dhis-service-dxf2/src/test/java/org/hisp/dhis/dxf2/events/NoRegistrationSingleEventServiceTest.java' --- dhis-2/dhis-services/dhis-service-dxf2/src/test/java/org/hisp/dhis/dxf2/events/NoRegistrationSingleEventServiceTest.java 2014-08-25 16:08:58 +0000 +++ dhis-2/dhis-services/dhis-service-dxf2/src/test/java/org/hisp/dhis/dxf2/events/NoRegistrationSingleEventServiceTest.java 2014-10-06 10:11:29 +0000 @@ -32,8 +32,8 @@ import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; -import java.util.ArrayList; import java.util.Date; +import java.util.HashSet; import org.hisp.dhis.DhisTest; import org.hisp.dhis.common.IdentifiableObjectManager; @@ -95,7 +95,7 @@ programStageA = createProgramStage( 'A', 0 ); identifiableObjectManager.save( programStageA ); - programA = createProgram( 'A', new ArrayList(), organisationUnitA ); + programA = createProgram( 'A', new HashSet(), organisationUnitA ); programA.setType( Program.SINGLE_EVENT_WITHOUT_REGISTRATION ); identifiableObjectManager.save( programA ); === modified file 'dhis-2/dhis-services/dhis-service-dxf2/src/test/java/org/hisp/dhis/dxf2/events/RegistrationMultiEventsServiceTest.java' --- dhis-2/dhis-services/dhis-service-dxf2/src/test/java/org/hisp/dhis/dxf2/events/RegistrationMultiEventsServiceTest.java 2014-08-25 16:08:58 +0000 +++ dhis-2/dhis-services/dhis-service-dxf2/src/test/java/org/hisp/dhis/dxf2/events/RegistrationMultiEventsServiceTest.java 2014-10-06 10:11:29 +0000 @@ -31,8 +31,8 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertThat; -import java.util.ArrayList; import java.util.Arrays; +import java.util.HashSet; import org.hamcrest.CoreMatchers; import org.hibernate.SessionFactory; @@ -154,7 +154,7 @@ identifiableObjectManager.save( programStageA ); identifiableObjectManager.save( programStageB ); - programA = createProgram( 'A', new ArrayList(), organisationUnitA ); + programA = createProgram( 'A', new HashSet(), organisationUnitA ); programA.setType( Program.MULTIPLE_EVENTS_WITH_REGISTRATION ); identifiableObjectManager.save( programA ); === modified file 'dhis-2/dhis-services/dhis-service-dxf2/src/test/java/org/hisp/dhis/dxf2/events/RegistrationSingleEventServiceTest.java' --- dhis-2/dhis-services/dhis-service-dxf2/src/test/java/org/hisp/dhis/dxf2/events/RegistrationSingleEventServiceTest.java 2014-08-25 16:08:58 +0000 +++ dhis-2/dhis-services/dhis-service-dxf2/src/test/java/org/hisp/dhis/dxf2/events/RegistrationSingleEventServiceTest.java 2014-10-06 10:11:29 +0000 @@ -32,7 +32,7 @@ import static org.junit.Assert.assertNotEquals; import static org.junit.Assert.assertThat; -import java.util.ArrayList; +import java.util.HashSet; import org.hamcrest.CoreMatchers; import org.hisp.dhis.DhisSpringTest; @@ -131,7 +131,7 @@ programStageA = createProgramStage( 'A', 0 ); identifiableObjectManager.save( programStageA ); - programA = createProgram( 'A', new ArrayList(), organisationUnitA ); + programA = createProgram( 'A', new HashSet(), organisationUnitA ); programA.setType( Program.SINGLE_EVENT_WITH_REGISTRATION ); identifiableObjectManager.save( programA ); === modified file 'dhis-2/dhis-services/dhis-service-dxf2/src/test/java/org/hisp/dhis/dxf2/events/TrackedEntityInstanceServiceTest.java' --- dhis-2/dhis-services/dhis-service-dxf2/src/test/java/org/hisp/dhis/dxf2/events/TrackedEntityInstanceServiceTest.java 2014-08-25 16:08:58 +0000 +++ dhis-2/dhis-services/dhis-service-dxf2/src/test/java/org/hisp/dhis/dxf2/events/TrackedEntityInstanceServiceTest.java 2014-10-06 10:11:29 +0000 @@ -33,7 +33,7 @@ import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; -import java.util.ArrayList; +import java.util.HashSet; import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.common.IdentifiableObjectManager; @@ -100,7 +100,7 @@ femaleA.setTrackedEntity( trackedEntity ); femaleB.setTrackedEntity( trackedEntity ); - programA = createProgram( 'A', new ArrayList(), organisationUnitA ); + programA = createProgram( 'A', new HashSet(), organisationUnitA ); manager.save( organisationUnitA ); manager.save( organisationUnitB ); manager.save( maleA ); === modified file 'dhis-2/dhis-services/dhis-service-eventreporting/src/test/java/org/hisp/dhis/caseaggregation/CaseAggregationConditionServiceTest.java' --- dhis-2/dhis-services/dhis-service-eventreporting/src/test/java/org/hisp/dhis/caseaggregation/CaseAggregationConditionServiceTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-eventreporting/src/test/java/org/hisp/dhis/caseaggregation/CaseAggregationConditionServiceTest.java 2014-10-06 10:11:29 +0000 @@ -33,11 +33,9 @@ import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; -import java.util.ArrayList; import java.util.Calendar; import java.util.Collection; import java.util.HashSet; -import java.util.List; import java.util.Set; import org.hisp.dhis.DhisSpringTest; @@ -64,9 +62,9 @@ import org.hisp.dhis.program.ProgramStageInstance; import org.hisp.dhis.program.ProgramStageInstanceService; import org.hisp.dhis.program.ProgramStageService; -import org.hisp.dhis.trackedentity.TrackedEntityInstance; import org.hisp.dhis.trackedentity.TrackedEntityAttribute; import org.hisp.dhis.trackedentity.TrackedEntityAttributeService; +import org.hisp.dhis.trackedentity.TrackedEntityInstance; import org.hisp.dhis.trackedentity.TrackedEntityInstanceService; import org.hisp.dhis.trackedentityattributevalue.TrackedEntityAttributeValue; import org.hisp.dhis.trackedentitydatavalue.TrackedEntityDataValue; @@ -236,7 +234,7 @@ // Program && Program stages // --------------------------------------------------------------------- - program = createProgram( 'A', new ArrayList(), organisationUnit ); + program = createProgram( 'A', new HashSet(), organisationUnit ); int programId = programService.addProgram( program ); ProgramStage stageA = new ProgramStage( "Stage-A", program ); @@ -245,7 +243,7 @@ ProgramStage stageB = new ProgramStage( "Stage-B", program ); stageBId = programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); program.setProgramStages( programStages ); === modified file 'dhis-2/dhis-services/dhis-service-eventreporting/src/test/java/org/hisp/dhis/caseaggregation/CaseAggregationConditionStoreTest.java' --- dhis-2/dhis-services/dhis-service-eventreporting/src/test/java/org/hisp/dhis/caseaggregation/CaseAggregationConditionStoreTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-eventreporting/src/test/java/org/hisp/dhis/caseaggregation/CaseAggregationConditionStoreTest.java 2014-10-06 10:11:29 +0000 @@ -31,11 +31,9 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; -import java.util.ArrayList; import java.util.Calendar; import java.util.Collection; import java.util.HashSet; -import java.util.List; import java.util.Set; import org.hisp.dhis.DhisSpringTest; @@ -62,9 +60,9 @@ import org.hisp.dhis.program.ProgramStageInstance; import org.hisp.dhis.program.ProgramStageInstanceService; import org.hisp.dhis.program.ProgramStageService; -import org.hisp.dhis.trackedentity.TrackedEntityInstance; import org.hisp.dhis.trackedentity.TrackedEntityAttribute; import org.hisp.dhis.trackedentity.TrackedEntityAttributeService; +import org.hisp.dhis.trackedentity.TrackedEntityInstance; import org.hisp.dhis.trackedentity.TrackedEntityInstanceService; import org.hisp.dhis.trackedentityattributevalue.TrackedEntityAttributeValue; import org.hisp.dhis.trackedentitydatavalue.TrackedEntityDataValue; @@ -233,7 +231,7 @@ // Program && Program stages // --------------------------------------------------------------------- - program = createProgram( 'A', new ArrayList(), organisationUnit ); + program = createProgram( 'A', new HashSet(), organisationUnit ); int programId = programService.addProgram( program ); ProgramStage stageA = new ProgramStage( "Stage-A", program ); @@ -242,7 +240,7 @@ ProgramStage stageB = new ProgramStage( "Stage-B", program ); stageBId = programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); program.setProgramStages( programStages ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/main/java/org/hisp/dhis/program/ProgramDataEntryFormDeletionHandler.java' --- dhis-2/dhis-services/dhis-service-tracker/src/main/java/org/hisp/dhis/program/ProgramDataEntryFormDeletionHandler.java 2014-07-26 14:38:39 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/main/java/org/hisp/dhis/program/ProgramDataEntryFormDeletionHandler.java 2014-10-06 10:11:29 +0000 @@ -28,7 +28,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -import java.util.List; +import java.util.Set; import org.hisp.dhis.dataentryform.DataEntryForm; import org.hisp.dhis.dataentryform.DataEntryFormService; @@ -79,7 +79,7 @@ { boolean flag = false; - List programStages = programStage.getProgram().getProgramStages(); + Set programStages = programStage.getProgram().getProgramStages(); programStages.remove( programStage ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/main/resources/org/hisp/dhis/program/hibernate/Program.hbm.xml' --- dhis-2/dhis-services/dhis-service-tracker/src/main/resources/org/hisp/dhis/program/hibernate/Program.hbm.xml 2014-08-26 12:43:04 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/main/resources/org/hisp/dhis/program/hibernate/Program.hbm.xml 2014-10-06 10:11:29 +0000 @@ -24,12 +24,11 @@ - - - - - - + + + + + === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/main/resources/org/hisp/dhis/program/hibernate/ProgramStage.hbm.xml' --- dhis-2/dhis-services/dhis-service-tracker/src/main/resources/org/hisp/dhis/program/hibernate/ProgramStage.hbm.xml 2014-08-18 14:21:48 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/main/resources/org/hisp/dhis/program/hibernate/ProgramStage.hbm.xml 2014-10-06 10:11:29 +0000 @@ -78,6 +78,8 @@ + + === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramDataEntryServiceTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramDataEntryServiceTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramDataEntryServiceTest.java 2014-10-06 10:11:29 +0000 @@ -30,8 +30,8 @@ import static org.junit.Assert.assertEquals; -import java.util.ArrayList; -import java.util.List; +import java.util.HashSet; +import java.util.Set; import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.dataelement.DataElement; @@ -89,17 +89,19 @@ DataEntryForm dataEntryFormA = new DataEntryForm( "DataEntryForm-A" ); dataEntryFormService.addDataEntryForm( dataEntryFormA ); - Program program = createProgram( 'A', new ArrayList(), organisationUnit ); + Program program = createProgram( 'A', new HashSet(), organisationUnit ); programService.addProgram( program ); stageA = new ProgramStage( "A", program ); stageA.setUid( "StageA" ); + stageA.setSortOrder( 1 ); programStageService.saveProgramStage( stageA ); ProgramStage stageB = new ProgramStage( "B", program ); + stageB.setSortOrder( 2 ); programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); program.setProgramStages( programStages ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramExpressionServiceTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramExpressionServiceTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramExpressionServiceTest.java 2014-10-06 10:11:29 +0000 @@ -32,11 +32,11 @@ import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; -import java.util.ArrayList; import java.util.Date; import java.util.HashMap; -import java.util.List; +import java.util.HashSet; import java.util.Map; +import java.util.Set; import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.dataelement.DataElement; @@ -109,16 +109,18 @@ OrganisationUnit organisationUnit = createOrganisationUnit( 'A' ); organisationUnitService.addOrganisationUnit( organisationUnit ); - Program program = createProgram( 'A', new ArrayList(), organisationUnit ); + Program program = createProgram( 'A', new HashSet(), organisationUnit ); programService.addProgram( program ); ProgramStage stageA = new ProgramStage( "StageA", program ); + stageA.setSortOrder( 1 ); stageAId = programStageService.saveProgramStage( stageA ); ProgramStage stageB = new ProgramStage( "StageB", program ); + stageB.setSortOrder( 2 ); programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); program.setProgramStages( programStages ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramIndicatorServiceTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramIndicatorServiceTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramIndicatorServiceTest.java 2014-10-06 10:11:29 +0000 @@ -33,12 +33,12 @@ import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; -import java.util.ArrayList; import java.util.Calendar; import java.util.Collection; import java.util.Date; -import java.util.List; +import java.util.HashSet; import java.util.Map; +import java.util.Set; import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.organisationunit.OrganisationUnit; @@ -102,22 +102,24 @@ OrganisationUnit organisationUnit = createOrganisationUnit( 'A' ); organisationUnitService.addOrganisationUnit( organisationUnit ); - programA = createProgram( 'A', new ArrayList(), organisationUnit ); + programA = createProgram( 'A', new HashSet(), organisationUnit ); programService.addProgram( programA ); ProgramStage stageA = new ProgramStage( "StageA", programA ); + stageA.setSortOrder( 1 ); programStageService.saveProgramStage( stageA ); ProgramStage stageB = new ProgramStage( "StageB", programA ); + stageB.setSortOrder( 2 ); programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); programA.setProgramStages( programStages ); programService.updateProgram( programA ); - programB = createProgram( 'B', new ArrayList(), organisationUnit ); + programB = createProgram( 'B', new HashSet(), organisationUnit ); programService.addProgram( programB ); TrackedEntityInstance entityInstance = createTrackedEntityInstance( 'A', organisationUnit ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramIndicatorStoreTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramIndicatorStoreTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramIndicatorStoreTest.java 2014-10-06 10:11:29 +0000 @@ -31,9 +31,9 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; -import java.util.ArrayList; import java.util.Collection; -import java.util.List; +import java.util.HashSet; +import java.util.Set; import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.organisationunit.OrganisationUnit; @@ -88,22 +88,24 @@ OrganisationUnit organisationUnit = createOrganisationUnit( 'A' ); organisationUnitService.addOrganisationUnit( organisationUnit ); - programA = createProgram( 'A', new ArrayList(), organisationUnit ); + programA = createProgram( 'A', new HashSet(), organisationUnit ); programService.addProgram( programA ); ProgramStage stageA = new ProgramStage( "StageA", programA ); + stageA.setSortOrder( 1 ); programStageService.saveProgramStage( stageA ); ProgramStage stageB = new ProgramStage( "StageB", programA ); + stageB.setSortOrder( 2 ); programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); programA.setProgramStages( programStages ); programService.updateProgram( programA ); - programB = createProgram( 'B', new ArrayList(), organisationUnit ); + programB = createProgram( 'B', new HashSet(), organisationUnit ); programService.addProgram( programB ); indicatorDate = new ProgramIndicator( "IndicatorA", "IndicatorDesA", ProgramIndicator.VALUE_TYPE_INT, "( " === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramInstanceServiceTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramInstanceServiceTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramInstanceServiceTest.java 2014-10-06 10:11:29 +0000 @@ -33,12 +33,10 @@ import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; -import java.util.ArrayList; import java.util.Calendar; import java.util.Collection; import java.util.Date; import java.util.HashSet; -import java.util.List; import java.util.Set; import org.hisp.dhis.DhisSpringTest; @@ -129,7 +127,7 @@ orgunitIds.add( idA ); orgunitIds.add( idB ); - programA = createProgram( 'A', new ArrayList(), organisationUnitA ); + programA = createProgram( 'A', new HashSet(), organisationUnitA ); TrackedEntityInstanceReminder reminderA = new TrackedEntityInstanceReminder( "A", 0, "Test program message template", TrackedEntityInstanceReminder.ENROLLEMENT_DATE_TO_COMPARE, @@ -148,21 +146,23 @@ programService.addProgram( programA ); ProgramStage stageA = new ProgramStage( "StageA", programA ); + stageA.setSortOrder( 1 ); programStageService.saveProgramStage( stageA ); ProgramStage stageB = new ProgramStage( "StageB", programA ); + stageB.setSortOrder( 2 ); programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); programA.setProgramStages( programStages ); programService.updateProgram( programA ); - programB = createProgram( 'B', new ArrayList(), organisationUnitA ); + programB = createProgram( 'B', new HashSet(), organisationUnitA ); programService.addProgram( programB ); - programC = createProgram( 'C', new ArrayList(), organisationUnitA ); + programC = createProgram( 'C', new HashSet(), organisationUnitA ); programService.addProgram( programC ); entityInstanceA = createTrackedEntityInstance( 'A', organisationUnitA ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramInstanceStoreTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramInstanceStoreTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramInstanceStoreTest.java 2014-10-06 10:11:29 +0000 @@ -31,12 +31,10 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; -import java.util.ArrayList; import java.util.Calendar; import java.util.Collection; import java.util.Date; import java.util.HashSet; -import java.util.List; import java.util.Set; import org.hisp.dhis.DhisSpringTest; @@ -115,7 +113,7 @@ orgunitIds.add( idA ); orgunitIds.add( idB ); - programA = createProgram( 'A', new ArrayList(), organisationUnitA ); + programA = createProgram( 'A', new HashSet(), organisationUnitA ); TrackedEntityInstanceReminder reminderA = new TrackedEntityInstanceReminder( "A", 0, "Test program message template", TrackedEntityInstanceReminder.ENROLLEMENT_DATE_TO_COMPARE, @@ -134,21 +132,23 @@ programService.addProgram( programA ); ProgramStage stageA = new ProgramStage( "StageA", programA ); + stageA.setSortOrder( 1 ); programStageService.saveProgramStage( stageA ); ProgramStage stageB = new ProgramStage( "StageB", programA ); + stageB.setSortOrder( 2 ); programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); programA.setProgramStages( programStages ); programService.updateProgram( programA ); - programB = createProgram( 'B', new ArrayList(), organisationUnitA ); + programB = createProgram( 'B', new HashSet(), organisationUnitA ); programService.addProgram( programB ); - programC = createProgram( 'C', new ArrayList(), organisationUnitA ); + programC = createProgram( 'C', new HashSet(), organisationUnitA ); programService.addProgram( programC ); entityInstanceA = createTrackedEntityInstance( 'A', organisationUnitA ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramServiceTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramServiceTest.java 2014-07-27 16:24:18 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramServiceTest.java 2014-10-06 10:11:29 +0000 @@ -33,8 +33,8 @@ import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; -import java.util.ArrayList; import java.util.Collection; +import java.util.HashSet; import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.organisationunit.OrganisationUnit; @@ -79,13 +79,13 @@ organisationUnitB = createOrganisationUnit( 'B' ); organisationUnitService.addOrganisationUnit( organisationUnitB ); - programA = createProgram( 'A', new ArrayList(), organisationUnitA ); + programA = createProgram( 'A', new HashSet(), organisationUnitA ); programA.setUid( "UID-A" ); - programB = createProgram( 'B', new ArrayList(), organisationUnitA ); + programB = createProgram( 'B', new HashSet(), organisationUnitA ); programB.setUid( "UID-B" ); - programC = createProgram( 'C', new ArrayList(), organisationUnitB ); + programC = createProgram( 'C', new HashSet(), organisationUnitB ); programC.setUid( "UID-C" ); } === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageDataElementServiceTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageDataElementServiceTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageDataElementServiceTest.java 2014-10-06 10:11:29 +0000 @@ -33,9 +33,9 @@ import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; -import java.util.ArrayList; import java.util.Collection; -import java.util.List; +import java.util.HashSet; +import java.util.Set; import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.dataelement.DataElement; @@ -92,17 +92,19 @@ organisationUnit = createOrganisationUnit( 'A' ); organisationUnitService.addOrganisationUnit( organisationUnit ); - Program program = createProgram( 'A', new ArrayList(), organisationUnit ); + Program program = createProgram( 'A', new HashSet(), organisationUnit ); programService.addProgram( program ); stageA = new ProgramStage( "A", program ); + stageA.setSortOrder( 1 ); stageA.setUid( "StageA" ); programStageService.saveProgramStage( stageA ); stageB = new ProgramStage( "B", program ); + stageB.setSortOrder( 2 ); programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); program.setProgramStages( programStages ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageDataElementStoreTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageDataElementStoreTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageDataElementStoreTest.java 2014-10-06 10:11:29 +0000 @@ -33,9 +33,9 @@ import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; -import java.util.ArrayList; import java.util.Collection; -import java.util.List; +import java.util.HashSet; +import java.util.Set; import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.dataelement.DataElement; @@ -92,17 +92,19 @@ organisationUnit = createOrganisationUnit( 'A' ); organisationUnitService.addOrganisationUnit( organisationUnit ); - Program program = createProgram( 'A', new ArrayList(), organisationUnit ); + Program program = createProgram( 'A', new HashSet(), organisationUnit ); programService.addProgram( program ); stageA = new ProgramStage( "A", program ); stageA.setUid( "StageA" ); + stageA.setSortOrder( 1 ); programStageService.saveProgramStage( stageA ); stageB = new ProgramStage( "B", program ); + stageB.setSortOrder( 2 ); programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); program.setProgramStages( programStages ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageInstanceServiceTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageInstanceServiceTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageInstanceServiceTest.java 2014-10-06 10:11:29 +0000 @@ -33,7 +33,6 @@ import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; -import java.util.ArrayList; import java.util.Calendar; import java.util.Collection; import java.util.Date; @@ -184,11 +183,12 @@ /** * Program A */ - programA = createProgram( 'A', new ArrayList(), organisationUnitA ); + programA = createProgram( 'A', new HashSet(), organisationUnitA ); programService.addProgram( programA ); stageA = new ProgramStage( "A", programA ); - + stageA.setSortOrder( 1 ); + TrackedEntityInstanceReminder reminderA = new TrackedEntityInstanceReminder( "A", 0, "Test program stage message template", TrackedEntityInstanceReminder.DUE_DATE_TO_COMPARE, TrackedEntityInstanceReminder.SEND_TO_TRACKED_ENTITY_INSTANCE, null, TrackedEntityInstanceReminder.MESSAGE_TYPE_BOTH ); @@ -206,6 +206,7 @@ programStageService.saveProgramStage( stageA ); stageB = new ProgramStage( "B", programA ); + stageB.setSortOrder( 2 ); TrackedEntityInstanceReminder reminderC = new TrackedEntityInstanceReminder( "C", 0, "Test program stage message template", TrackedEntityInstanceReminder.DUE_DATE_TO_COMPARE, TrackedEntityInstanceReminder.SEND_TO_TRACKED_ENTITY_INSTANCE, TrackedEntityInstanceReminder.SEND_WHEN_TO_C0MPLETED_EVENT, @@ -216,7 +217,7 @@ stageB.setReminders( reminders ); programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); programA.setProgramStages( programStages ); @@ -242,17 +243,19 @@ * Program B */ - Program programB = createProgram( 'B', new ArrayList(), organisationUnitB ); + Program programB = createProgram( 'B', new HashSet(), organisationUnitB ); programService.addProgram( programB ); stageC = new ProgramStage( "C", programB ); + stageC.setSortOrder( 1 ); programStageService.saveProgramStage( stageC ); stageD = new ProgramStage( "D", programB ); + stageB.setSortOrder( 2 ); stageC.setIrregular( true ); programStageService.saveProgramStage( stageD ); - programStages = new ArrayList<>(); + programStages = new HashSet<>(); programStages.add( stageC ); programStages.add( stageD ); programB.setProgramStages( programStages ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageInstanceStoreTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageInstanceStoreTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageInstanceStoreTest.java 2014-10-06 10:11:29 +0000 @@ -31,12 +31,10 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; -import java.util.ArrayList; import java.util.Calendar; import java.util.Collection; import java.util.Date; import java.util.HashSet; -import java.util.List; import java.util.Set; import org.hisp.dhis.DhisSpringTest; @@ -154,7 +152,7 @@ /** * Program A */ - programA = createProgram( 'A', new ArrayList(), organisationUnitA ); + programA = createProgram( 'A', new HashSet(), organisationUnitA ); programService.addProgram( programA ); stageA = new ProgramStage( "A", programA ); @@ -184,7 +182,7 @@ stageB.setReminders( reminders ); programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); programA.setProgramStages( programStages ); @@ -210,7 +208,7 @@ * Program B */ - Program programB = createProgram( 'B', new ArrayList(), organisationUnitB ); + Program programB = createProgram( 'B', new HashSet(), organisationUnitB ); programService.addProgram( programB ); stageC = new ProgramStage( "C", programB ); @@ -220,7 +218,7 @@ stageC.setIrregular( true ); programStageService.saveProgramStage( stageD ); - programStages = new ArrayList<>(); + programStages = new HashSet<>(); programStages.add( stageC ); programStages.add( stageD ); programB.setProgramStages( programStages ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageSectionServiceTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageSectionServiceTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageSectionServiceTest.java 2014-10-06 10:11:29 +0000 @@ -90,7 +90,7 @@ organisationUnit = createOrganisationUnit( 'A' ); organisationUnitService.addOrganisationUnit( organisationUnit ); - Program program = createProgram( 'A', new ArrayList(), organisationUnit ); + Program program = createProgram( 'A', new HashSet(), organisationUnit ); programService.addProgram( program ); stageA = new ProgramStage( "A", program ); @@ -115,7 +115,7 @@ stageB = new ProgramStage( "B", program ); programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); program.setProgramStages( programStages ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageSectionStoreTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageSectionStoreTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageSectionStoreTest.java 2014-10-06 10:11:29 +0000 @@ -88,7 +88,7 @@ organisationUnit = createOrganisationUnit( 'A' ); organisationUnitService.addOrganisationUnit( organisationUnit ); - Program program = createProgram( 'A', new ArrayList(), organisationUnit ); + Program program = createProgram( 'A', new HashSet(), organisationUnit ); programService.addProgram( program ); stageA = new ProgramStage( "A", program ); @@ -113,7 +113,7 @@ stageB = new ProgramStage( "B", program ); programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); program.setProgramStages( programStages ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageServiceTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageServiceTest.java 2014-07-26 14:38:39 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageServiceTest.java 2014-10-06 10:11:29 +0000 @@ -32,7 +32,7 @@ import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; -import java.util.ArrayList; +import java.util.HashSet; import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.organisationunit.OrganisationUnit; @@ -69,7 +69,7 @@ OrganisationUnit organisationUnit = createOrganisationUnit( 'A' ); organisationUnitService.addOrganisationUnit( organisationUnit ); - program = createProgram( 'A', new ArrayList(), organisationUnit ); + program = createProgram( 'A', new HashSet(), organisationUnit ); programService.addProgram( program ); stageA = new ProgramStage( "A", program ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageStoreTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageStoreTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStageStoreTest.java 2014-10-06 10:11:29 +0000 @@ -30,8 +30,8 @@ import static org.junit.Assert.assertEquals; -import java.util.ArrayList; -import java.util.List; +import java.util.HashSet; +import java.util.Set; import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.organisationunit.OrganisationUnit; @@ -68,7 +68,7 @@ OrganisationUnit organisationUnit = createOrganisationUnit( 'A' ); organisationUnitService.addOrganisationUnit( organisationUnit ); - program = createProgram( 'A', new ArrayList(), organisationUnit ); + program = createProgram( 'A', new HashSet(), organisationUnit ); programService.addProgram( program ); stageA = new ProgramStage( "A", program ); @@ -86,7 +86,7 @@ programStageStore.save( stageA ); programStageStore.save( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); program.setProgramStages( programStages ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStoreTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStoreTest.java 2014-08-26 12:43:04 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramStoreTest.java 2014-10-06 10:11:29 +0000 @@ -30,8 +30,8 @@ import static org.junit.Assert.assertTrue; -import java.util.ArrayList; import java.util.Collection; +import java.util.HashSet; import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.organisationunit.OrganisationUnit; @@ -76,13 +76,13 @@ organisationUnitB = createOrganisationUnit( 'B' ); organisationUnitService.addOrganisationUnit( organisationUnitB ); - programA = createProgram( 'A', new ArrayList(), organisationUnitA ); + programA = createProgram( 'A', new HashSet(), organisationUnitA ); programA.setUid( "UID-A" ); - programB = createProgram( 'B', new ArrayList(), organisationUnitA ); + programB = createProgram( 'B', new HashSet(), organisationUnitA ); programB.setUid( "UID-B" ); - programC = createProgram( 'C', new ArrayList(), organisationUnitB ); + programC = createProgram( 'C', new HashSet(), organisationUnitB ); programC.setUid( "UID-C" ); } === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramValidationServiceTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramValidationServiceTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramValidationServiceTest.java 2014-10-06 10:11:29 +0000 @@ -33,11 +33,9 @@ import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; -import java.util.ArrayList; import java.util.Collection; import java.util.Date; import java.util.HashSet; -import java.util.List; import java.util.Set; import org.hisp.dhis.DhisSpringTest; @@ -115,7 +113,7 @@ OrganisationUnit organisationUnit = createOrganisationUnit( 'A' ); organisationUnitService.addOrganisationUnit( organisationUnit ); - program = createProgram( 'A', new ArrayList(), organisationUnit ); + program = createProgram( 'A', new HashSet(), organisationUnit ); programService.addProgram( program ); stageA = new ProgramStage( "A", program ); @@ -124,7 +122,7 @@ stageB = new ProgramStage( "B", program ); int psIdB = programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); program.setProgramStages( programStages ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramValidationStoreTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramValidationStoreTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/program/ProgramValidationStoreTest.java 2014-10-06 10:11:29 +0000 @@ -30,8 +30,8 @@ import static org.junit.Assert.assertTrue; -import java.util.ArrayList; -import java.util.List; +import java.util.HashSet; +import java.util.Set; import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.dataelement.DataElement; @@ -87,7 +87,7 @@ OrganisationUnit organisationUnit = createOrganisationUnit( 'A' ); organisationUnitService.addOrganisationUnit( organisationUnit ); - program = createProgram( 'A', new ArrayList(), organisationUnit ); + program = createProgram( 'A', new HashSet(), organisationUnit ); programService.addProgram( program ); stageA = new ProgramStage( "A", program ); @@ -96,7 +96,7 @@ stageB = new ProgramStage( "B", program ); int psIdB = programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); program.setProgramStages( programStages ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/trackedentity/TrackedEntityFormServiceTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/trackedentity/TrackedEntityFormServiceTest.java 2014-07-27 16:24:18 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/trackedentity/TrackedEntityFormServiceTest.java 2014-10-06 10:11:29 +0000 @@ -33,8 +33,8 @@ import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; -import java.util.ArrayList; import java.util.Collection; +import java.util.HashSet; import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.dataentryform.DataEntryForm; @@ -90,10 +90,10 @@ OrganisationUnit organisationUnit = createOrganisationUnit( 'A' ); organisationUnitService.addOrganisationUnit( organisationUnit ); - programA = createProgram( 'A', new ArrayList(), organisationUnit ); + programA = createProgram( 'A', new HashSet(), organisationUnit ); programService.addProgram( programA ); - programB = createProgram( 'B', new ArrayList(), organisationUnit ); + programB = createProgram( 'B', new HashSet(), organisationUnit ); programService.addProgram( programB ); DataEntryForm dataEntryFormA = new DataEntryForm( "DataEntryForm-A" ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/trackedentity/TrackedEntityFormStoreTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/trackedentity/TrackedEntityFormStoreTest.java 2014-07-26 14:38:39 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/trackedentity/TrackedEntityFormStoreTest.java 2014-10-06 10:11:29 +0000 @@ -30,7 +30,7 @@ import static org.junit.Assert.assertEquals; -import java.util.ArrayList; +import java.util.HashSet; import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.dataentryform.DataEntryForm; @@ -86,10 +86,10 @@ OrganisationUnit organisationUnit = createOrganisationUnit( 'A' ); organisationUnitService.addOrganisationUnit( organisationUnit ); - programA = createProgram( 'A', new ArrayList(), organisationUnit ); + programA = createProgram( 'A', new HashSet(), organisationUnit ); programService.addProgram( programA ); - programB = createProgram( 'B', new ArrayList(), organisationUnit ); + programB = createProgram( 'B', new HashSet(), organisationUnit ); programService.addProgram( programB ); DataEntryForm dataEntryFormA = new DataEntryForm( "DataEntryForm-A" ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/trackedentity/TrackedEntityInstanceReminderServiceTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/trackedentity/TrackedEntityInstanceReminderServiceTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/trackedentity/TrackedEntityInstanceReminderServiceTest.java 2014-10-06 10:11:29 +0000 @@ -31,10 +31,8 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; -import java.util.ArrayList; import java.util.Date; import java.util.HashSet; -import java.util.List; import java.util.Set; import org.hisp.dhis.DhisSpringTest; @@ -133,7 +131,7 @@ entityInstance = createTrackedEntityInstance( 'A', organisationUnit ); entityInstanceService.addTrackedEntityInstance( entityInstance ); - Program program = createProgram( 'A', new ArrayList(), organisationUnit ); + Program program = createProgram( 'A', new HashSet(), organisationUnit ); reminderA = new TrackedEntityInstanceReminder( "A", 0, "Test program message template", TrackedEntityInstanceReminder.ENROLLEMENT_DATE_TO_COMPARE, TrackedEntityInstanceReminder.SEND_TO_TRACKED_ENTITY_INSTANCE, @@ -165,7 +163,7 @@ reminders.add( reminderB ); stageB.setReminders( reminders ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); program.setProgramStages( programStages ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/trackedentitydatavalue/TrackedEntityDataValueServiceTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/trackedentitydatavalue/TrackedEntityDataValueServiceTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/trackedentitydatavalue/TrackedEntityDataValueServiceTest.java 2014-10-06 10:11:29 +0000 @@ -33,12 +33,11 @@ import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; -import java.util.ArrayList; import java.util.Calendar; import java.util.Collection; import java.util.Date; import java.util.HashSet; -import java.util.List; +import java.util.Set; import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.dataelement.DataElement; @@ -128,7 +127,7 @@ entityInstance = createTrackedEntityInstance( 'A', organisationUnit ); entityInstanceService.addTrackedEntityInstance( entityInstance ); - Program program = createProgram( 'A', new ArrayList(), organisationUnit ); + Program program = createProgram( 'A', new HashSet(), organisationUnit ); programService.addProgram( program ); ProgramStage stageA = createProgramStage( 'A', 0 ); @@ -139,7 +138,7 @@ stageB.setProgram( program ); programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); program.setProgramStages( programStages ); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/trackedentitydatavalue/TrackedEntityDataValueStoreTest.java' --- dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/trackedentitydatavalue/TrackedEntityDataValueStoreTest.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/test/java/org/hisp/dhis/trackedentitydatavalue/TrackedEntityDataValueStoreTest.java 2014-10-06 10:11:29 +0000 @@ -32,12 +32,11 @@ import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; -import java.util.ArrayList; import java.util.Calendar; import java.util.Collection; import java.util.Date; import java.util.HashSet; -import java.util.List; +import java.util.Set; import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.dataelement.DataElement; @@ -128,7 +127,7 @@ entityInstance = createTrackedEntityInstance( 'A', organisationUnit ); entityInstanceService.addTrackedEntityInstance( entityInstance ); - Program program = createProgram( 'A', new ArrayList(), organisationUnit ); + Program program = createProgram( 'A', new HashSet(), organisationUnit ); programService.addProgram( program ); ProgramStage stageA = createProgramStage( 'A', 0 ); @@ -139,7 +138,7 @@ stageB.setProgram( program ); programStageService.saveProgramStage( stageB ); - List programStages = new ArrayList<>(); + Set programStages = new HashSet<>(); programStages.add( stageA ); programStages.add( stageB ); program.setProgramStages( programStages ); === modified file 'dhis-2/dhis-support/dhis-support-system/src/test/java/org/hisp/dhis/system/database/DatabaseInfoProviderTest.java' --- dhis-2/dhis-support/dhis-support-system/src/test/java/org/hisp/dhis/system/database/DatabaseInfoProviderTest.java 2014-03-18 08:10:10 +0000 +++ dhis-2/dhis-support/dhis-support-system/src/test/java/org/hisp/dhis/system/database/DatabaseInfoProviderTest.java 2014-10-06 10:11:29 +0000 @@ -32,6 +32,7 @@ import org.hisp.dhis.DhisSpringTest; import org.junit.Test; +import org.springframework.beans.factory.annotation.Autowired; /** * @author Lars Helge Overland @@ -40,14 +41,9 @@ public class DatabaseInfoProviderTest extends DhisSpringTest { + @Autowired private DatabaseInfoProvider databaseInfoProvider; - @Override - public void setUpTest() - { - databaseInfoProvider = (DatabaseInfoProvider) getBean( "databaseInfoProvider" ); - } - // ------------------------------------------------------------------------- // Tests // ------------------------------------------------------------------------- === modified file 'dhis-2/dhis-support/dhis-support-test/src/main/java/org/hisp/dhis/DhisConvenienceTest.java' --- dhis-2/dhis-support/dhis-support-test/src/main/java/org/hisp/dhis/DhisConvenienceTest.java 2014-10-01 14:49:20 +0000 +++ dhis-2/dhis-support/dhis-support-test/src/main/java/org/hisp/dhis/DhisConvenienceTest.java 2014-10-06 10:11:29 +0000 @@ -1183,7 +1183,7 @@ return role; } - public static Program createProgram( char uniqueCharacter, List programStages, + public static Program createProgram( char uniqueCharacter, Set programStages, OrganisationUnit unit ) { Set units = new HashSet<>(); @@ -1192,7 +1192,7 @@ return createProgram( uniqueCharacter, programStages, null, units ); } - public static Program createProgram( char uniqueCharacter, List programStages, + public static Program createProgram( char uniqueCharacter, Set programStages, Set attributes, Set organisationUnits ) { Program program = new Program(); === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/java/org/hisp/dhis/trackedentity/action/dataentryform/RemoveDataEntryFormAction.java' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/java/org/hisp/dhis/trackedentity/action/dataentryform/RemoveDataEntryFormAction.java 2014-07-27 16:24:38 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/java/org/hisp/dhis/trackedentity/action/dataentryform/RemoveDataEntryFormAction.java 2014-10-06 10:11:29 +0000 @@ -28,7 +28,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -import java.util.List; +import java.util.Set; import org.hisp.dhis.dataentryform.DataEntryForm; import org.hisp.dhis.dataentryform.DataEntryFormService; @@ -109,7 +109,7 @@ programId = currentProgram.getId(); - List programStages = currentProgram.getProgramStages(); + Set programStages = currentProgram.getProgramStages(); for ( ProgramStage programStage : programStages ) { === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/java/org/hisp/dhis/trackedentity/action/programstage/AddProgramStageAction.java' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/java/org/hisp/dhis/trackedentity/action/programstage/AddProgramStageAction.java 2014-08-18 14:21:48 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/java/org/hisp/dhis/trackedentity/action/programstage/AddProgramStageAction.java 2014-10-06 10:11:29 +0000 @@ -29,7 +29,6 @@ */ import java.util.ArrayList; -import java.util.Collections; import java.util.HashSet; import java.util.List; import java.util.Set; @@ -44,7 +43,6 @@ import org.hisp.dhis.program.ProgramStageDataElement; import org.hisp.dhis.program.ProgramStageDataElementService; import org.hisp.dhis.program.ProgramStageService; -import org.hisp.dhis.program.comparator.ProgramStageMinDaysComparator; import org.hisp.dhis.trackedentity.TrackedEntityInstanceReminder; import org.hisp.dhis.user.UserGroup; import org.hisp.dhis.user.UserGroupService; @@ -377,7 +375,8 @@ programStage.setOpenAfterEnrollment( openAfterEnrollment ); programStage.setReportDateToUse( reportDateToUse ); programStage.setPreGenerateUID( preGenerateUID ); - + programStage.setSortOrder( program.getProgramStages().size() + 1 ); + // Program indicators List programIndicators = new ArrayList<>(); @@ -416,13 +415,7 @@ program.getProgramStages().add( programStage ); programStageService.saveProgramStage( programStage ); - - List programStages = new ArrayList<>( program.getProgramStages() ); - Collections.sort( programStages, new ProgramStageMinDaysComparator() ); - program.getProgramStages().clear(); - program.setProgramStages( programStages ); - programService.updateProgram( program ); - + // Data elements for ( int i = 0; i < this.selectedDataElementsValidator.size(); i++ ) === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/java/org/hisp/dhis/trackedentity/action/programstage/RemoveProgramStageAction.java' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/java/org/hisp/dhis/trackedentity/action/programstage/RemoveProgramStageAction.java 2014-08-15 07:40:20 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/java/org/hisp/dhis/trackedentity/action/programstage/RemoveProgramStageAction.java 2014-10-06 10:11:29 +0000 @@ -28,17 +28,12 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - import org.hisp.dhis.common.DeleteNotAllowedException; import org.hisp.dhis.i18n.I18n; import org.hisp.dhis.program.Program; import org.hisp.dhis.program.ProgramService; import org.hisp.dhis.program.ProgramStage; import org.hisp.dhis.program.ProgramStageService; -import org.hisp.dhis.program.comparator.ProgramStageMinDaysComparator; import org.springframework.beans.factory.annotation.Autowired; import com.opensymphony.xwork2.Action; @@ -107,11 +102,6 @@ Program program = programStage.getProgram(); program.getProgramStages().remove( programStage ); programStageService.deleteProgramStage( programStage ); - - List programStages = new ArrayList<>( program.getProgramStages() ); - Collections.sort( programStages, new ProgramStageMinDaysComparator() ); - program.setProgramStages( programStages ); - programService.updateProgram( program ); } catch ( DeleteNotAllowedException ex ) { === added file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/java/org/hisp/dhis/trackedentity/action/programstage/SortProgramStagesAction.java' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/java/org/hisp/dhis/trackedentity/action/programstage/SortProgramStagesAction.java 1970-01-01 00:00:00 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/java/org/hisp/dhis/trackedentity/action/programstage/SortProgramStagesAction.java 2014-10-06 10:11:29 +0000 @@ -0,0 +1,97 @@ +/* + * Copyright (c) 2004-2014, University of Oslo + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * + * Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * Neither the name of the HISP project nor the names of its contributors may + * be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.hisp.dhis.trackedentity.action.programstage; + +import java.util.List; + +import org.hisp.dhis.program.ProgramStage; +import org.hisp.dhis.program.ProgramStageService; +import org.springframework.beans.factory.annotation.Autowired; + +import com.opensymphony.xwork2.Action; + +/** + * @author Chau Thu Tran + * + * @version $ SortProgramStagesAction.java Oct 6, 2014 2:16:00 PM $ + */ +public class SortProgramStagesAction + implements Action +{ + // ------------------------------------------------------------------------- + // Dependencies + // ------------------------------------------------------------------------- + + @Autowired + private ProgramStageService programStageService; + + // ------------------------------------------------------------------------- + // Getters & setters + // ------------------------------------------------------------------------- + + private Integer id; + + public void setId( Integer id ) + { + this.id = id; + } + + public Integer getId() + { + return id; + } + + private List programStageIds; + + public void setProgramStageIds( List programStageIds ) + { + this.programStageIds = programStageIds; + } + + // ------------------------------------------------------------------------- + // Action implementation + // ------------------------------------------------------------------------- + + @Override + public String execute() + throws Exception + { + int index = 1; + + for ( Integer id : programStageIds ) + { + ProgramStage programStage = programStageService.getProgramStage( id ); + programStage.setSortOrder( index ); + programStageService.updateProgramStage( programStage ); + + index++; + } + + return SUCCESS; + } +} === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/java/org/hisp/dhis/trackedentity/action/programstage/UpdateProgramStageAction.java' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/java/org/hisp/dhis/trackedentity/action/programstage/UpdateProgramStageAction.java 2014-08-18 14:21:48 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/java/org/hisp/dhis/trackedentity/action/programstage/UpdateProgramStageAction.java 2014-10-06 10:11:29 +0000 @@ -29,14 +29,12 @@ */ import java.util.ArrayList; -import java.util.Collections; import java.util.HashSet; import java.util.List; import java.util.Set; import org.hisp.dhis.dataelement.DataElement; import org.hisp.dhis.dataelement.DataElementService; -import org.hisp.dhis.program.Program; import org.hisp.dhis.program.ProgramIndicator; import org.hisp.dhis.program.ProgramIndicatorService; import org.hisp.dhis.program.ProgramService; @@ -44,7 +42,6 @@ import org.hisp.dhis.program.ProgramStageDataElement; import org.hisp.dhis.program.ProgramStageDataElementService; import org.hisp.dhis.program.ProgramStageService; -import org.hisp.dhis.program.comparator.ProgramStageMinDaysComparator; import org.hisp.dhis.trackedentity.TrackedEntityInstanceReminder; import org.hisp.dhis.user.UserGroup; import org.hisp.dhis.user.UserGroupService; @@ -413,13 +410,6 @@ } programStage.setReminders( reminders ); programStageService.updateProgramStage( programStage ); - - Program program = programStage.getProgram(); - List programStages = new ArrayList<>( program.getProgramStages() ); - Collections.sort( programStages, new ProgramStageMinDaysComparator() ); - program.getProgramStages().clear(); - program.setProgramStages(programStages); - programService.updateProgram( program ); Set programStageDataElements = new HashSet<>( programStage.getProgramStageDataElements() ); === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/resources/META-INF/dhis/beans.xml' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/resources/META-INF/dhis/beans.xml 2014-08-11 12:53:29 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/resources/META-INF/dhis/beans.xml 2014-10-06 10:11:29 +0000 @@ -318,6 +318,12 @@ + + + /dhis-web-maintenance-program/programStageList.vm javascript/programStage.js + + + /main.vm + /dhis-web-maintenance-program/sortProgramStagesForm.vm + javascript/programStage.js + style/basic.css + F_PROGRAMSTAGE_ADD + + + + programStage.action?id=${id} + F_PROGRAMSTAGE_ADD + === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/webapp/dhis-web-maintenance-program/programStage.vm' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/webapp/dhis-web-maintenance-program/programStage.vm 2014-08-18 14:21:48 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/webapp/dhis-web-maintenance-program/programStage.vm 2014-10-06 10:11:29 +0000 @@ -22,6 +22,7 @@ #if( $program.type=='1' )
#end +
=== added file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/webapp/dhis-web-maintenance-program/sortProgramStagesForm.vm' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/webapp/dhis-web-maintenance-program/sortProgramStagesForm.vm 1970-01-01 00:00:00 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-program/src/main/webapp/dhis-web-maintenance-program/sortProgramStagesForm.vm 2014-10-06 10:11:29 +0000 @@ -0,0 +1,27 @@ +

$i18n.getString( "program_stage_sort_order" )

+ +
+ + + + + + + +
+ + +

+ +
+ +

+ + +

+ +