dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #23602
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 11496: send schedule message to user group - program stage
------------------------------------------------------------
revno: 11496
committer: Lai <lai.hispvietnam@xxxxxxxxx>
branch nick: dhis2
timestamp: Wed 2013-07-24 14:03:54 +0700
message:
send schedule message to user group - program stage
modified:
dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/patient/scheduling/SendScheduledMessageTask.java
dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/program/hibernate/HibernateProgramStageInstanceStore.java
dhis-2/dhis-services/dhis-service-sms/src/main/java/org/hisp/dhis/sms/parse/DefaultParserManager.java
dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/action/caseentry/CompleteDataEntryAction.java
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramForm.vm
--
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-patient/src/main/java/org/hisp/dhis/patient/scheduling/SendScheduledMessageTask.java'
--- dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/patient/scheduling/SendScheduledMessageTask.java 2013-05-21 09:12:58 +0000
+++ dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/patient/scheduling/SendScheduledMessageTask.java 2013-07-24 07:03:54 +0000
@@ -200,7 +200,7 @@
notifier.notify( taskId, "Start to prepare reminder messages for enrollements" );
Collection<SchedulingProgramObject> schedulingProgramObjects = programInstanceService.getSendMesssageEvents();
-
+
for ( SchedulingProgramObject schedulingProgramObject : schedulingProgramObjects )
{
String message = schedulingProgramObject.getMessage();
=== modified file 'dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/program/hibernate/HibernateProgramStageInstanceStore.java'
--- dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/program/hibernate/HibernateProgramStageInstanceStore.java 2013-07-23 04:16:21 +0000
+++ dhis-2/dhis-services/dhis-service-patient/src/main/java/org/hisp/dhis/program/hibernate/HibernateProgramStageInstanceStore.java 2013-07-24 07:03:54 +0000
@@ -400,6 +400,8 @@
sql += " UNION ( " + sendMessageToOrgunitRegisteredSql() + " ) ";
sql += " UNION ( " + sendMessageToUsersSql() + " ) ";
+
+ sql += " UNION ( " + sendMessageToUserGroupsSql() + " ) ";
SqlRowSet rs = jdbcTemplate.queryForRowSet( sql );
@@ -2492,4 +2494,37 @@
+ " and ( DATE(now()) - DATE(psi.duedate) ) = prm.daysallowedsendmessage "
+ " and prm.whentosend is null and prm.sendto = " + PatientReminder.SEND_TO_ALL_USERS_IN_ORGUGNIT_REGISTERED;
}
+
+ private String sendMessageToUserGroupsSql()
+ {
+ return "select psi.programstageinstanceid, uif.phonenumber,prm.templatemessage, p.firstname, p.middlename, p.lastname, org.name as orgunitName ,"
+ + " pg.name as programName, ps.name as programStageName, psi.duedate, "
+ + "(DATE(now()) - DATE(psi.duedate) ) as days_since_due_date "
+ + " from patient p INNER JOIN programinstance pi "
+ + " ON p.patientid=pi.patientid "
+ + " INNER JOIN programstageinstance psi "
+ + " ON psi.programinstanceid=pi.programinstanceid "
+ + " INNER JOIN program pg "
+ + " ON pg.programid=pi.programid "
+ + " INNER JOIN programstage ps "
+ + " ON ps.programstageid=psi.programstageid "
+ + " INNER JOIN patientreminder prm "
+ + " ON prm.programstageid = ps.programstageid "
+ + " INNER JOIN organisationunit org "
+ + " ON org.organisationunitid = p.organisationunitid "
+ + " INNER JOIN usergroupmembers ugm "
+ + " ON ugm.usergroupid = prm.usergroupid "
+ + " INNER JOIN userinfo uif "
+ + " ON uif.userinfoid = ugm.userid "
+ + " WHERE pi.status= "
+ + ProgramInstance.STATUS_ACTIVE
+ + " and uif.phonenumber is not NULL and uif.phonenumber != '' "
+ + " and prm.templatemessage is not NULL and prm.templatemessage != '' "
+ + " and pg.type=1 and prm.daysallowedsendmessage is not null "
+ + " and psi.executiondate is not null "
+ + " and ( DATE(now()) - DATE(psi.duedate) ) = prm.daysallowedsendmessage "
+ + " and prm.whentosend is null "
+ //+ " and prm.whentosend = " + PatientReminder.SEND_WHEN_TO_EMROLLEMENT
+ + " and prm.sendto = " + PatientReminder.SEND_TO_USER_GROUP;
+ }
}
=== modified file 'dhis-2/dhis-services/dhis-service-sms/src/main/java/org/hisp/dhis/sms/parse/DefaultParserManager.java'
--- dhis-2/dhis-services/dhis-service-sms/src/main/java/org/hisp/dhis/sms/parse/DefaultParserManager.java 2013-07-19 06:04:09 +0000
+++ dhis-2/dhis-services/dhis-service-sms/src/main/java/org/hisp/dhis/sms/parse/DefaultParserManager.java 2013-07-24 07:03:54 +0000
@@ -402,7 +402,7 @@
{
Set<User> receivers = new HashSet<User>( userGroup.getMembers() );
- UserCredentials anonymousUser = userService.getUserCredentialsByUsername( "c" );
+ UserCredentials anonymousUser = userService.getUserCredentialsByUsername( ANONYMOUS_USER_NAME );
MessageConversation conversation = new MessageConversation( command.getName(), anonymousUser.getUser() );
=== modified file 'dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/action/caseentry/CompleteDataEntryAction.java'
--- dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/action/caseentry/CompleteDataEntryAction.java 2013-07-23 02:52:29 +0000
+++ dhis-2/dhis-web/dhis-web-caseentry/src/main/java/org/hisp/dhis/caseentry/action/caseentry/CompleteDataEntryAction.java 2013-07-24 07:03:54 +0000
@@ -222,7 +222,7 @@
Collection<PatientReminder> reminders = programStageInstance.getProgramStage().getPatientReminders();
for ( PatientReminder rm : reminders )
{
- if ( rm != null && rm.getWhenToSend() == PatientReminder.SEND_WHEN_TO_C0MPLETED_EVENT )
+ if ( rm != null && rm.getWhenToSend() != null && rm.getWhenToSend() == PatientReminder.SEND_WHEN_TO_C0MPLETED_EVENT )
{
sendEventMessage( rm, programStageInstance, patient );
}
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramForm.vm 2013-07-22 09:24:53 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-patient/src/main/webapp/dhis-web-maintenance-patient/updateProgramForm.vm 2013-07-24 07:03:54 +0000
@@ -320,8 +320,8 @@
<td><label>$i18n.getString( "date_to_compare")</label></td>
<td>
<select class="dateToCompare" id='dateToCompare$index' #if($!reminder.whenToSend==3) disabled #end />
- <option value="dateofincident">$i18n.getString( "incident_date" )</option>
- <option value="enrollmentdate">$i18n.getString( "enrollment_date" )</option>
+ <option value="dateofincident" #if($!reminder.dateToCompare=='dateofincident') selected #end>$i18n.getString( "incident_date" )</option>
+ <option value="enrollmentdate" #if($!reminder.dateToCompare=='enrollmentdate') selected #end>$i18n.getString( "enrollment_date" )</option>
</select>
</td>
</tr>