@Override public void deleteProgramStage( ProgramStage programStage ) { List<ProgramStageDataElement> programStageDataElements = new ArrayList<>( programStage.getProgramStageDataElements() ); for ( ProgramStageDataElement programStageDataElement : programStageDataElements ) { programStage.getProgramStageDataElements().remove( programStageDataElement ); programStageDataElementService.deleteProgramStageDataElement( programStageDataElement ); } }
/** * Returns a Map of all DataElements in the given ProgramStage where the key * is the DataElement identifier and the value is the DataElement. */ private Map<String, ProgramStageDataElement> getProgramStageDataElementMap( ProgramStage programStage ) { if ( programStage == null ) { return null; } Set<ProgramStageDataElement> programStageDataElements = programStage.getProgramStageDataElements();//.getAllDataElements(); Map<String, ProgramStageDataElement> map = new HashMap<>(); for ( ProgramStageDataElement element : programStageDataElements ) { map.put( element.getDataElement().getUid(), element ); } return map; }
/** * Indicates whether this program contains the given data element. */ public boolean containsDataElement( DataElement dataElement ) { for ( ProgramStage stage : programStages ) { for ( ProgramStageDataElement element : stage.getProgramStageDataElements() ) { if ( dataElement.equals( element.getDataElement() ) ) { return true; } } } return false; }
public static ProgramStage createProgramStage( char uniqueCharacter, Set<DataElement> dataElements ) { ProgramStage programStage = createProgramStage( uniqueCharacter, 0 ); if ( dataElements != null ) { int sortOrder = 1; for ( DataElement dataElement : dataElements ) { ProgramStageDataElement psd = createProgramStageDataElement( programStage, dataElement, sortOrder ); psd.setAutoFields(); programStage.getProgramStageDataElements().add( psd ); } } return programStage; }
mandatoryDataElements = programStageInstance.getProgramStage().getProgramStageDataElements().stream() .filter( psde -> psde.isCompulsory() ) .map( psde -> psde.getDataElement().getUid() )
private SetMap<Class<? extends IdentifiableObject>, IdentifiableObject> handleProgramStage( SetMap<Class<? extends IdentifiableObject>, IdentifiableObject> metadata, ProgramStage programStage ) { if ( programStage == null ) return metadata; metadata.putValue( ProgramStage.class, programStage ); handleAttributes( metadata, programStage ); programStage.getNotificationTemplates().forEach( template -> handleNotificationTemplate( metadata, template ) ); programStage.getProgramStageDataElements().forEach( programStageDataElement -> handleProgramStageDataElement( metadata, programStageDataElement ) ); programStage.getProgramStageSections().forEach( programStageSection -> handleProgramStageSection( metadata, programStageSection ) ); handleDataEntryForm( metadata, programStage.getDataEntryForm() ); return metadata; }
if ( params.getProgramStage().getProgramStageDataElements() == null ) for ( ProgramStageDataElement pde : params.getProgramStage().getProgramStageDataElements() ) for ( ProgramStageDataElement pde : params.getProgramStage().getProgramStageDataElements() )