dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #40838
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 20790: use new PI Exists method in JacksonEnrollmentService
------------------------------------------------------------
revno: 20790
committer: Morten Olav Hansen <mortenoh@xxxxxxxxx>
branch nick: dhis2
timestamp: Tue 2015-10-20 14:00:38 +0700
message:
use new PI Exists method in JacksonEnrollmentService
modified:
dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramInstanceService.java
dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramInstanceStore.java
dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/program/DefaultProgramInstanceService.java
dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/program/hibernate/HibernateProgramInstanceStore.java
dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/program/ProgramInstanceStoreTest.java
dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/events/enrollment/JacksonEnrollmentService.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-api/src/main/java/org/hisp/dhis/program/ProgramInstanceService.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramInstanceService.java 2015-09-24 08:32:10 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramInstanceService.java 2015-10-20 07:00:38 +0000
@@ -85,6 +85,14 @@
ProgramInstance getProgramInstance( String uid );
/**
+ * Checks for the existence of a PI by UID
+ *
+ * @param uid PSI UID to check for
+ * @return true/false depending on result
+ */
+ boolean programInstanceExists( String uid );
+
+ /**
* Returns a ProgramInstanceQueryParams based on the given input.
*
* @param ou the set of organisation unit identifiers.
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramInstanceStore.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramInstanceStore.java 2015-09-24 08:32:10 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/program/ProgramInstanceStore.java 2015-10-20 07:00:38 +0000
@@ -247,4 +247,12 @@
* @return A SchedulingProgramObject list
*/
Collection<SchedulingProgramObject> getSendMesssageEvents( String dateToCompare );
+
+ /**
+ * Checks for the existence of a PI by UID
+ *
+ * @param uid PSI UID to check for
+ * @return true/false depending on result
+ */
+ boolean exists( String uid );
}
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/program/DefaultProgramInstanceService.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/program/DefaultProgramInstanceService.java 2015-10-08 14:12:50 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/program/DefaultProgramInstanceService.java 2015-10-20 07:00:38 +0000
@@ -28,18 +28,6 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-import static org.hisp.dhis.common.OrganisationUnitSelectionMode.ACCESSIBLE;
-import static org.hisp.dhis.common.OrganisationUnitSelectionMode.ALL;
-import static org.hisp.dhis.common.OrganisationUnitSelectionMode.CHILDREN;
-
-import java.util.ArrayList;
-import java.util.Calendar;
-import java.util.Collection;
-import java.util.Date;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.hisp.dhis.common.CodeGenerator;
@@ -67,6 +55,16 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.Collection;
+import java.util.Date;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import static org.hisp.dhis.common.OrganisationUnitSelectionMode.*;
+
/**
* @author Abyot Asalefew
*/
@@ -142,6 +140,12 @@
}
@Override
+ public boolean programInstanceExists( String uid )
+ {
+ return programInstanceStore.exists( uid );
+ }
+
+ @Override
public void updateProgramInstance( ProgramInstance programInstance )
{
programInstanceStore.update( programInstance );
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/program/hibernate/HibernateProgramInstanceStore.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/program/hibernate/HibernateProgramInstanceStore.java 2015-09-29 16:08:34 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/program/hibernate/HibernateProgramInstanceStore.java 2015-10-20 07:00:38 +0000
@@ -389,6 +389,13 @@
return criteria.list();
}
+ @Override
+ public boolean exists( String uid )
+ {
+ Integer result = jdbcTemplate.queryForObject( "select count(*) from programinstance where uid=?", Integer.class, uid );
+ return result != null && result > 0;
+ }
+
//TODO from here this class must be rewritten
@Override
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/program/ProgramInstanceStoreTest.java'
--- dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/program/ProgramInstanceStoreTest.java 2015-09-24 08:32:10 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/program/ProgramInstanceStoreTest.java 2015-10-20 07:00:38 +0000
@@ -46,6 +46,7 @@
import java.util.Set;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
/**
@@ -177,6 +178,18 @@
}
@Test
+ public void testProgramStageInstanceExists()
+ {
+ programInstanceStore.save( programInstanceA );
+ programInstanceStore.save( programInstanceB );
+
+ assertTrue( programInstanceStore.exists( programInstanceA.getUid() ) );
+ assertTrue( programInstanceStore.exists( programInstanceB.getUid() ) );
+ assertFalse( programInstanceStore.exists( "aaaabbbbccc" ) );
+ assertFalse( programInstanceStore.exists( null ) );
+ }
+
+ @Test
public void testGetProgramInstancesByProgram()
{
programInstanceStore.save( programInstanceA );
=== modified file 'dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/events/enrollment/JacksonEnrollmentService.java'
--- dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/events/enrollment/JacksonEnrollmentService.java 2015-09-13 21:54:23 +0000
+++ dhis-2/dhis-services/dhis-service-dxf2/src/main/java/org/hisp/dhis/dxf2/events/enrollment/JacksonEnrollmentService.java 2015-10-20 07:00:38 +0000
@@ -157,7 +157,7 @@
}
else
{
- if ( programInstanceService.getProgramInstance( enrollment.getEnrollment() ) == null )
+ if ( !programInstanceService.programInstanceExists( enrollment.getEnrollment() ) )
{
create.add( enrollment );
}