=== modified file 'dhis-2/dhis-web/dhis-web-dataentry/src/main/java/org/hisp/dhis/de/action/LoadFormAction.java' --- dhis-2/dhis-web/dhis-web-dataentry/src/main/java/org/hisp/dhis/de/action/LoadFormAction.java 2015-02-10 04:21:31 +0000 +++ dhis-2/dhis-web/dhis-web-dataentry/src/main/java/org/hisp/dhis/de/action/LoadFormAction.java 2015-03-18 23:16:20 +0000 @@ -213,13 +213,6 @@ return greyedFields; } - private List dataElementsNotInForm = new ArrayList<>(); - - public List getDataElementsNotInForm() - { - return dataElementsNotInForm; - } - private DataSet dataSet; public DataSet getDataSet() @@ -235,15 +228,31 @@ public String execute() throws Exception { - if ( dataSetId == null ) - { - return INPUT; - } - dataSet = dataSetService.getDataSet( dataSetId, true, false, false, true ); - List dataElements = new ArrayList<>( dataElementService.getDataElements( dataSet, null, - null ) ); + if ( dataSet == null ) + { + return INPUT; + } + + String dataSetType = dataSet.getDataSetType(); + + // --------------------------------------------------------------------- + // Custom form + // --------------------------------------------------------------------- + + if ( DataSet.TYPE_CUSTOM.equals( dataSetType ) && dataSet.hasDataEntryForm() ) + { + dataEntryForm = dataSet.getDataEntryForm(); + customDataEntryFormCode = dataEntryFormService.prepareDataEntryFormForEntry( dataEntryForm.getHtmlCode(), i18n, dataSet ); + return dataSetType; + } + + // --------------------------------------------------------------------- + // Section / default form + // --------------------------------------------------------------------- + + List dataElements = new ArrayList<>( dataElementService.getDataElements( dataSet, null, null ) ); if ( dataElements.isEmpty() ) { @@ -320,10 +329,9 @@ // Get data entry form // --------------------------------------------------------------------- - String displayMode = dataSet.getDataSetType(); DataSet dsOriginal = dataSet; - if ( displayMode.equals( DataSet.TYPE_DEFAULT ) ) + if ( dataSetType.equals( DataSet.TYPE_DEFAULT ) ) { DataSet dataSetCopy = new DataSet(); dataSetCopy.setName( dataSet.getName() ); @@ -347,7 +355,7 @@ section.setIndicators( new ArrayList<>( dataSet.getIndicators() ) ); } - displayMode = DataSet.TYPE_SECTION; + dataSetType = DataSet.TYPE_SECTION; } // --------------------------------------------------------------------- @@ -378,19 +386,12 @@ getSectionForm( dataElements, dataSet ); - displayMode = DataSet.TYPE_SECTION_MULTIORG; - } - - if ( displayMode.equals( DataSet.TYPE_SECTION ) ) - { - getSectionForm( dataElements, dataSet ); - } - else - { - getOtherDataEntryForm( dataElements, dataSet ); - } - - return displayMode; + dataSetType = DataSet.TYPE_SECTION_MULTIORG; + } + + getSectionForm( dataElements, dataSet ); + + return dataSetType; } // ------------------------------------------------------------------------- @@ -423,30 +424,4 @@ } } } - - private void getOtherDataEntryForm( List dataElements, DataSet dataSet ) - { - dataEntryForm = dataSet.getDataEntryForm(); - - if ( dataEntryForm != null ) - { - customDataEntryFormCode = dataEntryFormService.prepareDataEntryFormForEntry( dataEntryForm.getHtmlCode(), - i18n, dataSet ); - - dataElementsNotInForm = new ArrayList<>( dataSet.getDataElements() ); - dataElementsNotInForm.removeAll( dataEntryFormService.getDataElementsInDataEntryForm( dataSet ) ); - Collections.sort( dataElementsNotInForm, IdentifiableObjectNameComparator.INSTANCE ); - } - - List des; - - for ( DataElementCategoryCombo categoryCombo : orderedCategoryCombos ) - { - des = orderedDataElements.get( categoryCombo ); - - Collections.sort( des, IdentifiableObjectNameComparator.INSTANCE ); - - orderedDataElements.put( categoryCombo, des ); - } - } }