=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramStageInstanceService.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramStageInstanceService.java 2015-01-17 07:41:26 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramStageInstanceService.java 2015-04-23 17:00:11 +0000 @@ -116,6 +116,14 @@ List getProgramStageInstances( TrackedEntityInstance entityInstance, EventStatus status ); /** + * Gets the number of ProgramStageInstances added since the given number of days. + * + * @param days number of days. + * @return the number of ProgramStageInstances. + */ + long getProgramStageInstanceCount( int days ); + + /** * Retrieve scheduled list of entityInstances registered * * @return A SchedulingProgramObject list === modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramStageInstanceStore.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramStageInstanceStore.java 2015-01-17 07:41:26 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramStageInstanceStore.java 2015-04-24 11:16:03 +0000 @@ -132,4 +132,11 @@ * @return Grid */ Grid getCompleteness( Collection orgunitIds, Program program, String startDate, String endDate, I18n i18n ); + + /** + * Get the number of ProgramStageInstances updates since the given Date. + * @param time the time. + * @return the number of ProgramStageInstances. + */ + long getProgramStageInstanceCountLastUpdatedAfter( Date time ); } === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/main/java/org/hisp/dhis/program/DefaultProgramStageInstanceService.java' --- dhis-2/dhis-services/dhis-service-tracker/src/main/java/org/hisp/dhis/program/DefaultProgramStageInstanceService.java 2015-01-17 07:41:26 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/main/java/org/hisp/dhis/program/DefaultProgramStageInstanceService.java 2015-04-23 17:00:11 +0000 @@ -165,6 +165,15 @@ } @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 Collection getSendMesssageEvents() { return programStageInstanceStore.getSendMesssageEvents(); === modified file 'dhis-2/dhis-services/dhis-service-tracker/src/main/java/org/hisp/dhis/program/hibernate/HibernateProgramStageInstanceStore.java' --- dhis-2/dhis-services/dhis-service-tracker/src/main/java/org/hisp/dhis/program/hibernate/HibernateProgramStageInstanceStore.java 2015-01-17 07:41:26 +0000 +++ dhis-2/dhis-services/dhis-service-tracker/src/main/java/org/hisp/dhis/program/hibernate/HibernateProgramStageInstanceStore.java 2015-04-23 17:00:11 +0000 @@ -252,7 +252,18 @@ return grid; } - + + @Override + public long getProgramStageInstanceCountLastUpdatedAfter( Date time ) + { + Number rs = (Number) getCriteria() + .add( Restrictions.ge( "lastUpdated", time ) ) + .setProjection( Projections.rowCount() ) + .uniqueResult(); + + return rs != null ? rs.longValue() : 0; + } + @Override public int averageNumberCompleted( Program program, Collection orgunitIds, Date after, Date before, int status ) === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/statistics/GetStatisticsAction.java' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/statistics/GetStatisticsAction.java 2015-03-23 13:31:38 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/statistics/GetStatisticsAction.java 2015-04-23 17:00:11 +0000 @@ -34,6 +34,7 @@ import org.hisp.dhis.common.Objects; import org.hisp.dhis.datavalue.DataValueService; +import org.hisp.dhis.program.ProgramStageInstanceService; import org.hisp.dhis.statistics.StatisticsProvider; import org.hisp.dhis.system.util.EnumMapWrapper; import org.hisp.dhis.user.UserInvitationStatus; @@ -74,6 +75,13 @@ this.dataValueService = dataValueService; } + private ProgramStageInstanceService programStageInstanceService; + + public void setProgramStageInstanceService( ProgramStageInstanceService programStageInstanceService ) + { + this.programStageInstanceService = programStageInstanceService; + } + // ------------------------------------------------------------------------- // Output // ------------------------------------------------------------------------- @@ -105,6 +113,13 @@ { return dataValueCount; } + + private Map eventCount = new HashMap<>(); + + public Map getEventCount() + { + return eventCount; + } // ------------------------------------------------------------------------- // Action implementation @@ -142,7 +157,12 @@ dataValueCount.put( 1, dataValueService.getDataValueCount( 1 ) ); dataValueCount.put( 7, dataValueService.getDataValueCount( 7 ) ); dataValueCount.put( 30, dataValueService.getDataValueCount( 30 ) ); - + + eventCount.put( 0, programStageInstanceService.getProgramStageInstanceCount( 0 ) ); + eventCount.put( 1, programStageInstanceService.getProgramStageInstanceCount( 1 ) ); + eventCount.put( 7, programStageInstanceService.getProgramStageInstanceCount( 7 ) ); + eventCount.put( 30, programStageInstanceService.getProgramStageInstanceCount( 30 ) ); + return SUCCESS; } } === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/META-INF/dhis/beans.xml' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/META-INF/dhis/beans.xml 2015-03-20 07:08:50 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/META-INF/dhis/beans.xml 2015-04-23 17:00:11 +0000 @@ -38,6 +38,7 @@ + === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/org/hisp/dhis/dataadmin/i18n_module.properties' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/org/hisp/dhis/dataadmin/i18n_module.properties 2015-03-23 13:31:38 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/org/hisp/dhis/dataadmin/i18n_module.properties 2015-04-24 09:45:25 +0000 @@ -257,6 +257,7 @@ users_logged_in=Users logged in today=Today yesterday=Yesterday +last_2_days=Last 2 days last_7_days=Last 7 days last_30_days=Last 30 days dynamic_attributes=Dynamic Attributes === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/javascript/statistics.js' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/javascript/statistics.js 2012-04-26 18:32:46 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/javascript/statistics.js 2015-04-24 11:16:03 +0000 @@ -1,10 +1,9 @@ - $( document ).ready( function() { - showLoader(); - - $( '#contentDiv' ).load( 'getStatistics.action?' + getDC(), function() - { - hideLoader(); - } ); + showLoader(); + + $( '#contentDiv' ).load( 'getStatistics.action?' + getDC(), function() + { + hideLoader(); + } ); } ); === modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/responseStatistics.vm' --- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/responseStatistics.vm 2015-04-20 09:40:54 +0000 +++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/responseStatistics.vm 2015-04-24 11:25:27 +0000 @@ -1,13 +1,13 @@ - - - - - - - - + + + + + + + + @@ -86,40 +86,40 @@
$i18n.getString( "object_type" )$i18n.getString( "number" )
$i18n.getString( "data_elements" )$objects.getValue( "DATAELEMENT" )
$i18n.getString( "object_type" )$i18n.getString( "number" )
$i18n.getString( "data_elements" )$objects.getValue( "DATAELEMENT" )
$i18n.getString( "data_element_groups" ) $objects.getValue( "DATAELEMENTGROUP" )
- - - - + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + +
$i18n.getString( "users_logged_in" )$i18n.getString( "number" )
$i18n.getString( "users_logged_in" )$i18n.getString( "number" )
$i18n.getString( "last_hour" ) $activeUsers.get( 0 )
$i18n.getString( "today" )$activeUsers.get( 1 )
$i18n.getString( "yesterday" )$activeUsers.get( 2 )
$i18n.getString( "last_7_days" )$activeUsers.get( 7 )
$i18n.getString( "last_30_days" )$activeUsers.get( 30 )
$i18n.getString( "today" )$activeUsers.get( 1 )
$i18n.getString( "last_2_days" )$activeUsers.get( 2 )
$i18n.getString( "last_7_days" )$activeUsers.get( 7 )
$i18n.getString( "last_30_days" )$activeUsers.get( 30 )
- - - - + + + + @@ -129,32 +129,58 @@ - - -
$i18n.getString( "user_account_invitations" )$i18n.getString( "number" )
$i18n.getString( "user_account_invitations" )$i18n.getString( "number" )
$i18n.getString( "pending_invitations" ) $userInvitations.getValue( "ALL" )$userInvitations.getValue( "EXPIRED" )
- - - - - - - - - - - - - - - - - - - - - - - - + + +
$i18n.getString( "data_values" )$i18n.getString( "number" )
$i18n.getString( "today" )$dataValueCount.get( 0 )
$i18n.getString( "yesterday" )$dataValueCount.get( 1 )
$i18n.getString( "last_7_days" )$dataValueCount.get( 7 )
$i18n.getString( "last_30_days" )$dataValueCount.get( 30 )
+ + + + + + + + + + + + + + + + + + + + + + + + + +
$i18n.getString( "data_values" )$i18n.getString( "number" )
$i18n.getString( "today" )$dataValueCount.get( 0 )
$i18n.getString( "last_2_days" )$dataValueCount.get( 1 )
$i18n.getString( "last_7_days" )$dataValueCount.get( 7 )
$i18n.getString( "last_30_days" )$dataValueCount.get( 30 )
+ + + + + + + + + + + + + + + + + + + + + + + +
$i18n.getString( "events" )$i18n.getString( "number" )
$i18n.getString( "today" )$eventCount.get( 0 )
$i18n.getString( "last_2_days" )$eventCount.get( 1 )
$i18n.getString( "last_7_days" )$eventCount.get( 7 )
$i18n.getString( "last_30_days" )$eventCount.get( 30 )