=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/SharingUtils.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/SharingUtils.java 2013-10-01 10:06:54 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/SharingUtils.java 2013-10-03 14:24:37 +0000 @@ -36,6 +36,7 @@ import org.hisp.dhis.indicator.Indicator; import org.hisp.dhis.indicator.IndicatorGroup; import org.hisp.dhis.indicator.IndicatorGroupSet; +import org.hisp.dhis.interpretation.Interpretation; import org.hisp.dhis.patientreport.PatientAggregateReport; import org.hisp.dhis.patientreport.PatientTabularReport; import org.hisp.dhis.program.Program; @@ -113,6 +114,7 @@ addType( Document.class, "document", "F_DOCUMENT_EXTERNAL", "F_DOCUMENT_PUBLIC_ADD", "F_DOCUMENT_PRIVATE_ADD" ); addType( Dashboard.class, "dashboard", null, "F_DASHBOARD_PUBLIC_ADD", null ); + addType( Interpretation.class, "interpretation", null, null, null ); } public static boolean isSupported( String type ) === modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/interpretation/Interpretation.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/interpretation/Interpretation.java 2013-10-03 11:55:58 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/interpretation/Interpretation.java 2013-10-03 14:24:37 +0000 @@ -47,9 +47,11 @@ import org.hisp.dhis.period.Period; import org.hisp.dhis.period.PeriodType; import org.hisp.dhis.reporttable.ReportTable; +import org.hisp.dhis.user.UserGroupAccess; import java.util.ArrayList; import java.util.Date; +import java.util.HashSet; import java.util.List; /** @@ -203,6 +205,12 @@ return period != null ? period.getPeriodType() : null; } + public void updateSharing() + { + setPublicAccess( getObject().getPublicAccess() ); + setUserGroupAccesses( new HashSet( getObject().getUserGroupAccesses() ) ); + } + // ------------------------------------------------------------------------- // Get and set methods // ------------------------------------------------------------------------- === modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/interpretation/InterpretationService.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/interpretation/InterpretationService.java 2013-09-13 11:51:49 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/interpretation/InterpretationService.java 2013-10-03 14:24:37 +0000 @@ -28,34 +28,33 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +import java.util.Date; import java.util.List; -import org.hisp.dhis.user.User; - /** * @author Lars Helge Overland */ public interface InterpretationService { int saveInterpretation( Interpretation interpretation ); - + Interpretation getInterpretation( int id ); - + Interpretation getInterpretation( String uid ); - + void updateInterpretation( Interpretation interpretation ); - + void deleteInterpretation( Interpretation interpretation ); - + + List getInterpretations(); + + List getInterpretations( Date lastUpdated ); + List getInterpretations( int first, int max ); - List getInterpretations( User user ); - - List getInterpretations( User user, int first, int max ); - void addInterpretationComment( String uid, String text ); - + void updateCurrentUserLastChecked(); - + long getNewInterpretationCount(); } === modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/interpretation/InterpretationStore.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/interpretation/InterpretationStore.java 2013-09-13 11:51:49 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/interpretation/InterpretationStore.java 2013-10-03 14:24:37 +0000 @@ -28,10 +28,7 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -import java.util.List; - import org.hisp.dhis.common.GenericIdentifiableObjectStore; -import org.hisp.dhis.user.User; /** * @author Lars Helge Overland @@ -39,7 +36,4 @@ public interface InterpretationStore extends GenericIdentifiableObjectStore { - List getInterpretations( User user ); - - List getInterpretations( User user, int first, int max ); } === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/startup/TableAlteror.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/startup/TableAlteror.java 2013-10-01 16:44:42 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/startup/TableAlteror.java 2013-10-03 14:24:37 +0000 @@ -638,6 +638,7 @@ executeSql( "delete from usersetting where name = 'dashboardConfig' or name = 'dashboardConfiguration'" ); executeSql( "ALTER TABLE interpretation ALTER COLUMN userid DROP NOT NULL" ); + executeSql( "UPDATE interpretation SET publicaccess='r-------' WHERE publicaccess IS NULL;" ); upgradeMapViewsToAnalyticalObject(); === modified file 'dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/interpretation/InterpretationDeletionHandler.java' --- dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/interpretation/InterpretationDeletionHandler.java 2013-09-13 11:51:49 +0000 +++ dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/interpretation/InterpretationDeletionHandler.java 2013-10-03 14:24:37 +0000 @@ -28,12 +28,12 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -import java.util.List; - import org.hisp.dhis.system.deletion.DeletionHandler; import org.hisp.dhis.user.User; import org.springframework.beans.factory.annotation.Autowired; +import java.util.List; + /** * @author Lars Helge Overland */ @@ -42,7 +42,7 @@ { @Autowired private InterpretationService interpretationService; - + @Override protected String getClassName() { @@ -51,8 +51,8 @@ public void deleteUser( User user ) { - List interpretations = interpretationService.getInterpretations( user ); - + List interpretations = interpretationService.getInterpretations(); + for ( Interpretation interpretation : interpretations ) { if ( interpretation.getUser() != null && interpretation.getUser().equals( user ) ) === modified file 'dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/interpretation/impl/DefaultInterpretationService.java' --- dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/interpretation/impl/DefaultInterpretationService.java 2013-10-03 12:00:36 +0000 +++ dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/interpretation/impl/DefaultInterpretationService.java 2013-10-03 14:24:37 +0000 @@ -89,14 +89,19 @@ { User user = currentUserService.getCurrentUser(); - if ( user != null ) - { - interpretation.setUser( user ); - } - - if ( interpretation != null && interpretation.getPeriod() != null ) - { - interpretation.setPeriod( periodService.reloadPeriod( interpretation.getPeriod() ) ); + if ( interpretation != null ) + { + if ( user != null ) + { + interpretation.setUser( user ); + } + + if ( interpretation.getPeriod() != null ) + { + interpretation.setPeriod( periodService.reloadPeriod( interpretation.getPeriod() ) ); + } + + interpretation.updateSharing(); } return interpretationStore.save( interpretation ); @@ -122,21 +127,22 @@ interpretationStore.delete( interpretation ); } + public List getInterpretations() + { + return interpretationStore.getAll(); + } + + @Override + public List getInterpretations( Date lastUpdated ) + { + return interpretationStore.getAllGeLastUpdated( lastUpdated ); + } + public List getInterpretations( int first, int max ) { return interpretationStore.getAllOrderedLastUpdated( first, max ); } - public List getInterpretations( User user, int first, int max ) - { - return interpretationStore.getInterpretations( user, first, max ); - } - - public List getInterpretations( User user ) - { - return interpretationStore.getInterpretations( user ); - } - public void addInterpretationComment( String uid, String text ) { Interpretation interpretation = getInterpretation( uid ); @@ -170,7 +176,7 @@ { User user = currentUserService.getCurrentUser(); - long count = 0; + long count; if ( user != null && user.getLastCheckedInterpretations() != null ) { === modified file 'dhis-2/dhis-services/dhis-service-reporting/src/main/resources/org/hisp/dhis/interpretation/hibernate/Interpretation.hbm.xml' --- dhis-2/dhis-services/dhis-service-reporting/src/main/resources/org/hisp/dhis/interpretation/hibernate/Interpretation.hbm.xml 2013-09-13 13:00:37 +0000 +++ dhis-2/dhis-services/dhis-service-reporting/src/main/resources/org/hisp/dhis/interpretation/hibernate/Interpretation.hbm.xml 2013-10-03 14:24:37 +0000 @@ -1,7 +1,7 @@ + "-//Hibernate/Hibernate Mapping DTD 3.0//EN" + "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"> @@ -9,41 +9,49 @@ - + - - + + + foreign-key="fk_interpretation_chartid" /> - - - - - - - - - + foreign-key="fk_interpretation_mapid" /> + + + + + + + + + - - - - - - - - - - + + + + + + + + + + + + + + + + + + + \ No newline at end of file === modified file 'dhis-2/dhis-services/dhis-service-reporting/src/test/java/org/hisp/dhis/interpretation/InterpretationServiceTest.java' --- dhis-2/dhis-services/dhis-service-reporting/src/test/java/org/hisp/dhis/interpretation/InterpretationServiceTest.java 2013-08-23 16:05:01 +0000 +++ dhis-2/dhis-services/dhis-service-reporting/src/test/java/org/hisp/dhis/interpretation/InterpretationServiceTest.java 2013-10-03 14:24:37 +0000 @@ -28,13 +28,6 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertTrue; - -import java.util.List; - import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.chart.Chart; import org.hisp.dhis.chart.ChartService; @@ -43,9 +36,14 @@ import org.hisp.dhis.user.User; import org.hisp.dhis.user.UserService; import org.junit.Before; +import org.junit.Ignore; import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; +import java.util.List; + +import static org.junit.Assert.*; + /** * @author Lars Helge Overland */ @@ -54,63 +52,63 @@ { @Autowired private UserService userService; - + @Autowired private ChartService chartService; - + @Autowired private InterpretationService interpretationService; - + private User userA; private User userB; - + private Chart chartA; - + private Interpretation interpretationA; private Interpretation interpretationB; private Interpretation interpretationC; - - @Before + + @Before public void beforeTest() { userA = createUser( 'A' ); userB = createUser( 'B' ); userService.addUser( userA ); userService.addUser( userB ); - + setDependency( interpretationService, "currentUserService", new MockCurrentUserService( userA ), CurrentUserService.class ); - + chartA = new Chart( "ChartA" ); chartService.addChart( chartA ); - + interpretationA = new Interpretation( chartA, null, "Interpration of chart A" ); interpretationB = new Interpretation( chartA, null, "Interpration of chart B" ); interpretationC = new Interpretation( chartA, null, "Interpration of chart C" ); } - + @Test public void testSaveGet() { int idA = interpretationService.saveInterpretation( interpretationA ); int idB = interpretationService.saveInterpretation( interpretationB ); int idC = interpretationService.saveInterpretation( interpretationC ); - + assertEquals( interpretationA, interpretationService.getInterpretation( idA ) ); assertEquals( interpretationB, interpretationService.getInterpretation( idB ) ); assertEquals( interpretationC, interpretationService.getInterpretation( idC ) ); } - + @Test public void testDelete() { int idA = interpretationService.saveInterpretation( interpretationA ); int idB = interpretationService.saveInterpretation( interpretationB ); int idC = interpretationService.saveInterpretation( interpretationC ); - + assertNotNull( interpretationService.getInterpretation( idA ) ); assertNotNull( interpretationService.getInterpretation( idB ) ); assertNotNull( interpretationService.getInterpretation( idC ) ); - + interpretationService.deleteInterpretation( interpretationB ); assertNotNull( interpretationService.getInterpretation( idA ) ); @@ -129,16 +127,16 @@ assertNull( interpretationService.getInterpretation( idB ) ); assertNull( interpretationService.getInterpretation( idC ) ); } - + @Test public void testGetLast() { interpretationService.saveInterpretation( interpretationA ); interpretationService.saveInterpretation( interpretationB ); interpretationService.saveInterpretation( interpretationC ); - + List interpretations = interpretationService.getInterpretations( 0, 50 ); - + assertEquals( 3, interpretations.size() ); assertTrue( interpretations.contains( interpretationA ) ); assertTrue( interpretations.contains( interpretationB ) ); @@ -146,63 +144,65 @@ } @Test + @Ignore public void testGetLastByUserA() { interpretationService.saveInterpretation( interpretationA ); interpretationService.saveInterpretation( interpretationB ); interpretationService.saveInterpretation( interpretationC ); - - List interpretations = interpretationService.getInterpretations( userA, 0, 50 ); - + + List interpretations = interpretationService.getInterpretations( 0, 50 ); + assertEquals( 3, interpretations.size() ); - + assertTrue( interpretations.contains( interpretationA ) ); assertTrue( interpretations.contains( interpretationB ) ); assertTrue( interpretations.contains( interpretationC ) ); } @Test + @Ignore public void testGetLastByUserB() { interpretationA.addComment( new InterpretationComment( "Comment", userB ) ); interpretationB.addComment( new InterpretationComment( "Comment", userB ) ); - + interpretationService.saveInterpretation( interpretationA ); interpretationService.saveInterpretation( interpretationB ); interpretationService.saveInterpretation( interpretationC ); - - List interpretations = interpretationService.getInterpretations( userB, 0, 50 ); - + + List interpretations = interpretationService.getInterpretations( 0, 50 ); + assertEquals( 2, interpretations.size() ); - + assertTrue( interpretations.contains( interpretationA ) ); assertTrue( interpretations.contains( interpretationB ) ); } - + @Test public void testAddComment() { interpretationService.saveInterpretation( interpretationA ); - String uid = interpretationA.getUid(); + String uid = interpretationA.getUid(); assertNotNull( uid ); - + interpretationService.addInterpretationComment( uid, "This interpretation is good" ); interpretationService.addInterpretationComment( uid, "This interpretation is bad" ); - + interpretationA = interpretationService.getInterpretation( uid ); assertNotNull( interpretationA.getComments() ); assertEquals( 2, interpretationA.getComments().size() ); } - + @Test public void testGetNewCount() { interpretationService.saveInterpretation( interpretationA ); interpretationService.saveInterpretation( interpretationB ); interpretationService.saveInterpretation( interpretationC ); - + long count = interpretationService.getNewInterpretationCount(); - + assertEquals( 3, count ); } } === modified file 'dhis-2/dhis-support/dhis-support-hibernate/src/main/java/org/hisp/dhis/hibernate/HibernateGenericStore.java' --- dhis-2/dhis-support/dhis-support-hibernate/src/main/java/org/hisp/dhis/hibernate/HibernateGenericStore.java 2013-10-03 12:00:36 +0000 +++ dhis-2/dhis-support/dhis-support-hibernate/src/main/java/org/hisp/dhis/hibernate/HibernateGenericStore.java 2013-10-03 14:24:37 +0000 @@ -47,6 +47,7 @@ import org.hisp.dhis.hibernate.exception.DeleteAccessDeniedException; import org.hisp.dhis.hibernate.exception.ReadAccessDeniedException; import org.hisp.dhis.hibernate.exception.UpdateAccessDeniedException; +import org.hisp.dhis.interpretation.Interpretation; import org.hisp.dhis.user.CurrentUserService; import org.hisp.dhis.user.UserGroupAccess; import org.springframework.beans.factory.annotation.Autowired; @@ -198,7 +199,7 @@ * @param expressions the Criterions for the Criteria. * @return an object of the implementation Class type. */ - @SuppressWarnings( "unchecked" ) + @SuppressWarnings("unchecked") protected final T getObject( Criterion... expressions ) { return (T) getCriteria( expressions ).uniqueResult(); @@ -210,7 +211,7 @@ * @param expressions the Criterions for the Criteria. * @return a List with objects of the implementation Class type. */ - @SuppressWarnings( "unchecked" ) + @SuppressWarnings("unchecked") protected final List getList( Criterion... expressions ) { return getCriteria( expressions ).list(); @@ -223,7 +224,7 @@ @Override public int save( T object ) { - if ( currentUserService.getCurrentUser() != null && SharingUtils.isSupported( clazz ) ) + if ( !Interpretation.class.isAssignableFrom( clazz ) && currentUserService.getCurrentUser() != null && SharingUtils.isSupported( clazz ) ) { BaseIdentifiableObject identifiableObject = (BaseIdentifiableObject) object; @@ -271,7 +272,7 @@ @Override public void update( T object ) { - if ( !isUpdateAllowed( object ) ) + if ( !Interpretation.class.isAssignableFrom( clazz ) && !isUpdateAllowed( object ) ) { AuditLogUtil.infoWrapper( log, currentUserService.getCurrentUsername(), object, AuditLogUtil.ACTION_UPDATE_DENIED ); throw new UpdateAccessDeniedException( object.toString() ); === modified file 'dhis-2/dhis-support/dhis-support-hibernate/src/main/resources/ehcache.xml' --- dhis-2/dhis-support/dhis-support-hibernate/src/main/resources/ehcache.xml 2013-09-19 14:01:30 +0000 +++ dhis-2/dhis-support/dhis-support-hibernate/src/main/resources/ehcache.xml 2013-10-03 14:24:37 +0000 @@ -280,6 +280,8 @@ + + === modified file 'dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/InterpretationController.java' --- dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/InterpretationController.java 2013-08-23 16:00:30 +0000 +++ dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/api/controller/InterpretationController.java 2013-10-03 14:24:37 +0000 @@ -28,12 +28,6 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - -import javax.servlet.http.HttpServletResponse; - import org.hisp.dhis.api.utils.ContextUtils; import org.hisp.dhis.chart.Chart; import org.hisp.dhis.chart.ChartService; @@ -60,6 +54,11 @@ import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; +import javax.servlet.http.HttpServletResponse; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + /** * @author Lars Helge Overland */ @@ -75,22 +74,22 @@ @Autowired private ChartService chartService; - + @Autowired private ReportTableService reportTableService; - + @Autowired private DataSetService dataSetService; - + @Autowired private OrganisationUnitService organisationUnitService; - + @Autowired private MappingService mappingService; - + @Autowired private CurrentUserService currentUserService; - + @Override protected List getEntityList( WebMetaData metaData, WebOptions options ) { @@ -100,7 +99,7 @@ if ( lastUpdated != null ) { - entityList = new ArrayList( manager.getByLastUpdated( getEntityClass(), lastUpdated ) ); + entityList = new ArrayList( interpretationService.getInterpretations( lastUpdated ) ); } else if ( options.hasPaging() ) { @@ -113,25 +112,25 @@ } else { - entityList = new ArrayList( manager.getAll( getEntityClass() ) ); + entityList = new ArrayList( interpretationService.getInterpretations() ); } return entityList; } @RequestMapping( value = "/chart/{uid}", method = RequestMethod.POST, consumes = { "text/html", "text/plain" } ) - public void shareChartInterpretation( - @PathVariable( "uid" ) String chartUid, + public void shareChartInterpretation( + @PathVariable( "uid" ) String chartUid, @RequestBody String text, HttpServletResponse response ) { Chart chart = chartService.getChart( chartUid ); - + if ( chart == null ) { ContextUtils.conflictResponse( response, "Chart identifier not valid: " + chartUid ); return; } - + User user = currentUserService.getCurrentUser(); // --------------------------------------------------------------------- @@ -140,43 +139,43 @@ // --------------------------------------------------------------------- OrganisationUnit unit = chart.hasUserOrgUnit() && user.hasOrganisationUnit() ? user.getOrganisationUnit() : null; - + Interpretation interpretation = new Interpretation( chart, unit, text ); - + interpretationService.saveInterpretation( interpretation ); ContextUtils.createdResponse( response, "Interpretation created", InterpretationController.RESOURCE_PATH + "/" + interpretation.getUid() ); } @RequestMapping( value = "/map/{uid}", method = RequestMethod.POST, consumes = { "text/html", "text/plain" } ) - public void shareMapInterpretation( - @PathVariable( "uid" ) String mapUid, + public void shareMapInterpretation( + @PathVariable( "uid" ) String mapUid, @RequestBody String text, HttpServletResponse response ) { Map map = mappingService.getMap( mapUid ); - + if ( map == null ) { ContextUtils.conflictResponse( response, "Map identifier not valid: " + mapUid ); return; } - + Interpretation interpretation = new Interpretation( map, text ); - + interpretationService.saveInterpretation( interpretation ); ContextUtils.createdResponse( response, "Interpretation created", InterpretationController.RESOURCE_PATH + "/" + interpretation.getUid() ); } @RequestMapping( value = "/reportTable/{uid}", method = RequestMethod.POST, consumes = { "text/html", "text/plain" } ) - public void shareReportTableInterpretation( - @PathVariable( "uid" ) String reportTableUid, + public void shareReportTableInterpretation( + @PathVariable( "uid" ) String reportTableUid, @RequestParam( value = "pe", required = false ) String isoPeriod, - @RequestParam( value = "ou", required = false ) String orgUnitUid, + @RequestParam( value = "ou", required = false ) String orgUnitUid, @RequestBody String text, HttpServletResponse response ) { ReportTable reportTable = reportTableService.getReportTable( reportTableUid ); - + if ( reportTable == null ) { ContextUtils.conflictResponse( response, "Report table identifier not valid: " + reportTableUid ); @@ -184,68 +183,68 @@ } Period period = PeriodType.getPeriodFromIsoString( isoPeriod ); - + OrganisationUnit orgUnit = null; - + if ( orgUnitUid != null ) { orgUnit = organisationUnitService.getOrganisationUnit( orgUnitUid ); - + if ( orgUnit == null ) { ContextUtils.conflictResponse( response, "Organisation unit identifier not valid: " + orgUnitUid ); return; } } - + Interpretation interpretation = new Interpretation( reportTable, period, orgUnit, text ); - + interpretationService.saveInterpretation( interpretation ); ContextUtils.createdResponse( response, "Interpretation created", InterpretationController.RESOURCE_PATH + "/" + interpretation.getUid() ); } @RequestMapping( value = "/dataSetReport/{uid}", method = RequestMethod.POST, consumes = { "text/html", "text/plain" } ) - public void shareDataSetReportInterpretation( + public void shareDataSetReportInterpretation( @PathVariable( "uid" ) String dataSetUid, @RequestParam( "pe" ) String isoPeriod, @RequestParam( "ou" ) String orgUnitUid, @RequestBody String text, HttpServletResponse response ) { DataSet dataSet = dataSetService.getDataSet( dataSetUid ); - + if ( dataSet == null ) { ContextUtils.conflictResponse( response, "Data set identifier not valid: " + dataSetUid ); return; } - + Period period = PeriodType.getPeriodFromIsoString( isoPeriod ); - + if ( period == null ) { ContextUtils.conflictResponse( response, "Period identifier not valid: " + isoPeriod ); return; } - + OrganisationUnit orgUnit = organisationUnitService.getOrganisationUnit( orgUnitUid ); - + if ( orgUnit == null ) { ContextUtils.conflictResponse( response, "Organisation unit identifier not valid: " + orgUnitUid ); return; } - + Interpretation interpretation = new Interpretation( dataSet, period, orgUnit, text ); - + interpretationService.saveInterpretation( interpretation ); ContextUtils.createdResponse( response, "Interpretation created", InterpretationController.RESOURCE_PATH + "/" + interpretation.getUid() ); } @RequestMapping( value = "/{uid}/comment", method = RequestMethod.POST, consumes = { "text/html", "text/plain" } ) - public void postComment( - @PathVariable( "uid" ) String uid, + public void postComment( + @PathVariable( "uid" ) String uid, @RequestBody String text, HttpServletResponse response ) { interpretationService.addInterpretationComment( uid, text ); === modified file 'dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/java/org/hisp/dhis/dashboard/interpretation/action/GetInterpretationsAction.java' --- dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/java/org/hisp/dhis/dashboard/interpretation/action/GetInterpretationsAction.java 2013-08-23 16:05:01 +0000 +++ dhis-2/dhis-web/dhis-web-dashboard-integration/src/main/java/org/hisp/dhis/dashboard/interpretation/action/GetInterpretationsAction.java 2013-10-03 14:24:37 +0000 @@ -46,15 +46,12 @@ implements Action { private static final int PAGE_SIZE = 5; - + // ------------------------------------------------------------------------- // Dependencies // ------------------------------------------------------------------------- @Autowired - private UserService userService; - - @Autowired private InterpretationService interpretationService; // ------------------------------------------------------------------------- @@ -67,48 +64,30 @@ { this.page = page; } - - private String userId; - - public void setUserId( String userId ) - { - this.userId = userId; - } // ------------------------------------------------------------------------- // Output // ------------------------------------------------------------------------- private List interpretations; - + public List getInterpretations() { return interpretations; } - + // ------------------------------------------------------------------------- // Action implementation // ------------------------------------------------------------------------- public String execute() { - userId = StringUtils.trimToNull( userId ); - int first = page != null ? ( page * PAGE_SIZE ) : 0; - - if ( userId != null ) - { - User user = userService.getUser( userId ); - - interpretations = interpretationService.getInterpretations( user, first, PAGE_SIZE ); - } - else - { - interpretationService.updateCurrentUserLastChecked(); - - interpretations = interpretationService.getInterpretations( first, PAGE_SIZE ); - } - + + interpretationService.updateCurrentUserLastChecked(); + + interpretations = interpretationService.getInterpretations( first, PAGE_SIZE ); + return SUCCESS; } }