@Override public boolean programStageInstanceExists( String uid ) { return programStageInstanceStore.exists( uid ); }
@Override public boolean programStageInstanceExistsIncludingDeleted( String uid ) { return programStageInstanceStore.existsIncludingDeleted( uid ); }
@Override public ProgramStageInstance getProgramStageInstance( ProgramInstance programInstance, ProgramStage programStage ) { return programStageInstanceStore.get( programInstance, programStage ); }
@Override public void deleteProgramStageInstance( ProgramStageInstance programStageInstance, boolean forceDelete ) { dataValueAuditService.deleteTrackedEntityDataValueAudits( programStageInstance ); if ( forceDelete ) { programStageInstanceStore.delete( programStageInstance ); } else { // Soft delete programStageInstance.setDeleted( !forceDelete ); programStageInstanceStore.save( programStageInstance ); } }
@Override public ProgramStageInstance getProgramStageInstance( String uid ) { return programStageInstanceStore.getByUid( uid ); }
@Override public void updateProgramStageInstancesSyncTimestamp( List<String> programStageInstanceUIDs, Date lastSynchronized ) { programStageInstanceStore.updateProgramStageInstancesSyncTimestamp( programStageInstanceUIDs, lastSynchronized ); }
@Override public long getProgramStageInstanceCount( int days ) { Calendar cal = PeriodType.createCalendarInstance(); cal.add( Calendar.DAY_OF_YEAR, (days * -1) ); return programStageInstanceStore.getProgramStageInstanceCountLastUpdatedAfter( cal.getTime() ); }
@Override public void updateProgramStageInstance( ProgramStageInstance programStageInstance ) { programStageInstance.setAutoFields(); programStageInstanceStore.update( programStageInstance ); }
@Override public int addProgramStageInstance( ProgramStageInstance programStageInstance ) { programStageInstance.setAutoFields(); programStageInstanceStore.save( programStageInstance ); return programStageInstance.getId(); }
private MessageBatch createScheduledMessageBatchForDay( ProgramNotificationTemplate template, Date day ) { List<ProgramStageInstance> programStageInstances = programStageInstanceStore.getWithScheduledNotifications( template, day ); List<ProgramInstance> programInstances = programInstanceStore.getWithScheduledNotifications( template, day ); MessageBatch psiBatch = createProgramStageInstanceMessageBatch( template, programStageInstances ); MessageBatch psBatch = createProgramInstanceMessageBatch( template, programInstances ); return new MessageBatch( psiBatch, psBatch ); }
@Override public ProgramStageInstance getProgramStageInstance( int id ) { return programStageInstanceStore.get( id ); }