=== modified file 'dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/namebaseddataentry/action/GetProgramStageFormAction.java' --- dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/namebaseddataentry/action/GetProgramStageFormAction.java 2012-05-15 09:48:47 +0000 +++ dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/namebaseddataentry/action/GetProgramStageFormAction.java 2012-05-16 09:33:38 +0000 @@ -83,9 +83,9 @@ { this.programStageInstanceService = programStageInstanceService; } - + private PatientDataValueService patientDataValueService; - + public PatientDataValueService getPatientDataValueService() { return patientDataValueService; @@ -95,7 +95,6 @@ { this.patientDataValueService = patientDataValueService; } - // ------------------------------------------------------------------------- // Input & Output @@ -112,9 +111,9 @@ { this.programInstanceId = programInstanceId; } - + private int programStageInstanceId; - + public int getProgramStageInstanceId() { return programStageInstanceId; @@ -221,7 +220,7 @@ } private boolean current; - + private Map prevDataValues = new HashMap(); public Map getPrevDataValues() @@ -247,16 +246,15 @@ public String execute() throws Exception { - // organisationUnit = organisationUnitService.getOrganisationUnit( - // Integer.parseInt( orgUnitId ) ); prevDataValues.clear(); programStage = util.getProgramStage( Integer.parseInt( programId ), Integer.parseInt( programStageId ) ); dataElements = programStage.getDataElements(); - Collection patientDataValues = patientDataValueService.getPatientDataValues( programStageInstanceService.getProgramStageInstance( programStageInstanceId ) ); - for (PatientDataValue patientDataValue : patientDataValues) { - prevDataValues.put( "DE" + patientDataValue.getDataElement().getId() + "OC" + 4, patientDataValue.getValue() ); + Collection patientDataValues = patientDataValueService + .getPatientDataValues( programStageInstanceService.getProgramStageInstance( programStageInstanceId ) ); + for ( PatientDataValue patientDataValue : patientDataValues ) + { + prevDataValues.put( "DE" + patientDataValue.getDataElement().getId(), patientDataValue.getValue() ); } - return SUCCESS; } === modified file 'dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/namebaseddataentry/action/SaveProgramStageFormAction.java' --- dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/namebaseddataentry/action/SaveProgramStageFormAction.java 2012-05-15 07:40:06 +0000 +++ dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/namebaseddataentry/action/SaveProgramStageFormAction.java 2012-05-16 09:33:38 +0000 @@ -39,6 +39,7 @@ import org.hisp.dhis.api.mobile.model.DataElement; import org.hisp.dhis.api.mobile.model.DataValue; import org.hisp.dhis.api.mobile.model.ProgramStage; +import org.hisp.dhis.dataelement.DataElementCategoryService; import org.hisp.dhis.dataelement.DataElementService; import org.hisp.dhis.light.utils.NamebasedUtils; import org.hisp.dhis.organisationunit.OrganisationUnit; @@ -101,6 +102,18 @@ this.patientService = patientService; } + private DataElementCategoryService dataElementCategoryService; + + public DataElementCategoryService getDataElementCategoryService() + { + return dataElementCategoryService; + } + + public void setDataElementCategoryService( DataElementCategoryService dataElementCategoryService ) + { + this.dataElementCategoryService = dataElementCategoryService; + } + // ------------------------------------------------------------------------- // Input & Output // ------------------------------------------------------------------------- @@ -226,7 +239,7 @@ { if ( orgUnitId != 0 ) { - organisationUnit = organisationUnitService.getOrganisationUnit( orgUnitId ); + organisationUnit = organisationUnitService.getOrganisationUnit( orgUnitId ); } else { @@ -236,7 +249,7 @@ programStage = util.getProgramStage( Integer.parseInt( programId ), Integer.parseInt( programStageId ) ); dataElements = programStage.getDataElements(); - + int defaultCategoryOptionId = dataElementCategoryService.getDefaultDataElementCategoryOptionCombo().getId(); HttpServletRequest request = (HttpServletRequest) ActionContext.getContext().get( ServletActionContext.HTTP_REQUEST ); Map parameterMap = ContextUtils.getParameterMap( request ); @@ -248,11 +261,10 @@ for ( String key : parameterMap.keySet() ) { - if ( key.startsWith( "DE" ) && key.indexOf( "OC" ) != -1 ) + if ( key.startsWith( "DE" ) ) { - String[] splitKey = key.split( "OC" ); - Integer dataElementId = Integer.parseInt( splitKey[0].substring( 2 ) ); - Integer categoryOptComboId = Integer.parseInt( splitKey[1] ); + Integer dataElementId = Integer.parseInt( key.substring( 2, key.length()) ); + // Integer categoryOptComboId = Integer.parseInt( splitKey[1] ); String value = parameterMap.get( key ); // validate types @@ -275,7 +287,8 @@ DataValue dataValue = new DataValue(); dataValue.setId( dataElementId ); dataValue.setValue( value ); - dataValue.setCategoryOptComboID( categoryOptComboId ); + + dataValue.setCategoryOptComboID( defaultCategoryOptionId ); dataValues.add( dataValue ); } === modified file 'dhis-2/dhis-web/dhis-web-light/src/main/resources/META-INF/dhis/beans.xml' --- dhis-2/dhis-web/dhis-web-light/src/main/resources/META-INF/dhis/beans.xml 2012-05-15 09:48:47 +0000 +++ dhis-2/dhis-web/dhis-web-light/src/main/resources/META-INF/dhis/beans.xml 2012-05-16 09:33:38 +0000 @@ -197,7 +197,8 @@ - + + $encoder.htmlEncode( $dataElementName ) #if( $categoryOptionCombo.name!="(default)")$encoder.htmlEncode( $categoryOptionCombo.name )#end #if($dataElement.type=="date") [yyyy-MM-dd] #end @@ -51,10 +51,10 @@ #end name="$key" value="$!prevDataValues.get($key)" DISABLED/> - #elseif ($dataElement.getCategoryOptionCombos().getModels().size() > 1) + #elseif ($dataElement.getOptionSet()) - #set( $categoryOptionCombo = $dataElement.getCategoryOptionCombos().getModels().get( 0 ) ) - #set( $key = "DE${dataElement.id}OC${categoryOptionCombo.id}" ) + #set( $options = $dataElement.getOptionSet().getOptions() ) + #set( $key = "DE${dataElement.id}") $dataElementName @@ -75,13 +75,13 @@ #set( $selected=false ) - #foreach ($categoryOptionCombo in $dataElement.categoryOptionCombos.models) - + > $option #end #if( !$selected ) @@ -94,12 +94,6 @@

-
-

- -

-
-