dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #37263
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 19074: Event query. Using paging by default. Skipping total number of pages by default. Introduced two n...
------------------------------------------------------------
revno: 19074
committer: Lars Helge Overland <larshelge@xxxxxxxxx>
branch nick: dhis2
timestamp: Fri 2015-05-01 17:17:23 +0200
message:
Event query. Using paging by default. Skipping total number of pages by default. Introduced two new query params, skipPaging=false|true for skipping paging and getting all events, totalPages for including total number of pages.
modified:
dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/events/event/AbstractEventService.java
dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/events/event/EventSearchParams.java
dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/events/event/EventService.java
dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/webapi/controller/event/EventController.java
--
lp:dhis2
https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk
Your team DHIS 2 developers is subscribed to branch lp:dhis2.
To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription
=== modified file 'dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/events/event/AbstractEventService.java'
--- dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/events/event/AbstractEventService.java 2015-04-21 20:08:55 +0000
+++ dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/events/event/AbstractEventService.java 2015-05-01 15:17:23 +0000
@@ -420,11 +420,21 @@
}
}
+ if ( !params.isPaging() && !params.isSkipPaging() )
+ {
+ params.setDefaultPaging();
+ }
+
Events events = new Events();
if ( params.isPaging() )
{
- int count = eventStore.getEventCount( params, organisationUnits );
+ int count = 0;
+
+ if ( params.isTotalPages() )
+ {
+ count = eventStore.getEventCount( params, organisationUnits );
+ }
Pager pager = new Pager( params.getPageWithDefault(), count, params.getPageSizeWithDefault() );
events.setPager( pager );
@@ -440,7 +450,7 @@
@Override
public EventSearchParams getFromUrl( String program, String programStage, ProgramStatus programStatus, Boolean followUp, String orgUnit,
OrganisationUnitSelectionMode orgUnitSelectionMode, String trackedEntityInstance, Date startDate, Date endDate,
- EventStatus status, Date lastUpdated, IdSchemes idSchemes, Integer page, Integer pageSize )
+ EventStatus status, Date lastUpdated, IdSchemes idSchemes, Integer page, Integer pageSize, boolean totalPages, boolean skipPaging )
{
EventSearchParams params = new EventSearchParams();
@@ -486,6 +496,8 @@
params.setIdSchemes( idSchemes );
params.setPage( page );
params.setPageSize( pageSize );
+ params.setTotalPages( totalPages );
+ params.setSkipPaging( skipPaging );
return params;
}
=== modified file 'dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/events/event/EventSearchParams.java'
--- dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/events/event/EventSearchParams.java 2015-04-21 20:08:55 +0000
+++ dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/events/event/EventSearchParams.java 2015-05-01 15:17:23 +0000
@@ -75,6 +75,10 @@
private Integer pageSize;
+ private boolean totalPages;
+
+ private boolean skipPaging;
+
// -------------------------------------------------------------------------
// Constructors
// -------------------------------------------------------------------------
@@ -106,7 +110,17 @@
{
return ( getPageWithDefault() - 1 ) * getPageSizeWithDefault();
}
-
+
+ /**
+ * Sets paging properties to default values.
+ */
+ public void setDefaultPaging()
+ {
+ this.page = DEFAULT_PAGE;
+ this.pageSize = DEFAULT_PAGE_SIZE;
+ this.skipPaging = false;
+ }
+
// -------------------------------------------------------------------------
// Getters and setters
// -------------------------------------------------------------------------
@@ -250,4 +264,24 @@
{
this.pageSize = pageSize;
}
+
+ public boolean isTotalPages()
+ {
+ return totalPages;
+ }
+
+ public void setTotalPages( boolean totalPages )
+ {
+ this.totalPages = totalPages;
+ }
+
+ public boolean isSkipPaging()
+ {
+ return skipPaging;
+ }
+
+ public void setSkipPaging( boolean skipPaging )
+ {
+ this.skipPaging = skipPaging;
+ }
}
=== modified file 'dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/events/event/EventService.java'
--- dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/events/event/EventService.java 2015-03-12 11:27:20 +0000
+++ dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/events/event/EventService.java 2015-05-01 15:17:23 +0000
@@ -56,7 +56,7 @@
EventSearchParams getFromUrl( String program, String programStage, ProgramStatus programStatus, Boolean followUp, String orgUnit,
OrganisationUnitSelectionMode orgUnitSelectionMode, String trackedEntityInstance, Date startDate, Date endDate,
- EventStatus status, Date lastUpdated, IdSchemes idSchemes, Integer page, Integer pageSize );
+ EventStatus status, Date lastUpdated, IdSchemes idSchemes, Integer page, Integer pageSize, boolean totalPages, boolean skipPaging );
Event getEvent( String uid );
=== modified file 'dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/webapi/controller/event/EventController.java'
--- dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/webapi/controller/event/EventController.java 2015-04-28 06:52:28 +0000
+++ dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/webapi/controller/event/EventController.java 2015-05-01 15:17:23 +0000
@@ -141,16 +141,18 @@
@RequestParam( required = false ) Date endDate,
@RequestParam( required = false ) EventStatus status,
@RequestParam( required = false ) Date lastUpdated,
- @RequestParam( required = false ) Integer page,
- @RequestParam( required = false ) Integer pageSize,
@RequestParam( required = false ) boolean skipMeta,
+ @RequestParam( required = false ) Integer page,
+ @RequestParam( required = false ) Integer pageSize,
+ @RequestParam( required = false ) boolean totalPages,
+ @RequestParam( required = false ) boolean skipPaging,
@RequestParam( required = false ) String attachment,
@RequestParam Map<String, String> parameters, IdSchemes idSchemes, Model model, HttpServletResponse response, HttpServletRequest request )
{
WebOptions options = new WebOptions( parameters );
EventSearchParams params = eventService.getFromUrl( program, programStage, programStatus, followUp, orgUnit, ouMode,
- trackedEntityInstance, startDate, endDate, status, lastUpdated, idSchemes, page, pageSize );
+ trackedEntityInstance, startDate, endDate, status, lastUpdated, idSchemes, page, pageSize, totalPages, skipPaging );
Events events = eventService.getEvents( params );
@@ -194,13 +196,15 @@
@RequestParam( required = false ) Date lastUpdated,
@RequestParam( required = false ) Integer page,
@RequestParam( required = false ) Integer pageSize,
+ @RequestParam( required = false ) boolean totalPages,
+ @RequestParam( required = false ) boolean skipPaging,
@RequestParam( required = false ) String attachment,
@RequestParam( required = false, defaultValue = "false" ) boolean skipHeader,
@RequestParam Map<String, String> parameters,
IdSchemes idSchemes, Model model, HttpServletResponse response, HttpServletRequest request ) throws IOException
{
EventSearchParams params = eventService.getFromUrl( program, programStage, programStatus, followUp, orgUnit, ouMode,
- trackedEntityInstance, startDate, endDate, status, lastUpdated, idSchemes, page, pageSize );
+ trackedEntityInstance, startDate, endDate, status, lastUpdated, idSchemes, page, pageSize, totalPages, skipPaging );
Events events = eventService.getEvents( params );
@@ -234,12 +238,14 @@
@RequestParam( required = false ) EventStatus eventStatus,
@RequestParam( required = false ) Date startDate,
@RequestParam( required = false ) Date endDate,
+ @RequestParam( required = false ) boolean totalPages,
+ @RequestParam( required = false ) boolean skipPaging,
@RequestParam Map<String, String> parameters, Model model, HttpServletRequest request )
{
WebOptions options = new WebOptions( parameters );
EventSearchParams params = eventService.getFromUrl( program, null, programStatus, null,
- orgUnit, ouMode, null, startDate, endDate, eventStatus, null, null, null, null );
+ orgUnit, ouMode, null, startDate, endDate, eventStatus, null, null, null, null, totalPages, skipPaging );
EventRows eventRows = eventRowService.getEventRows( params );