dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #23751
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 11564: improve UI in view sent SMS page, show name of receivers
------------------------------------------------------------
revno: 11564
committer: Lai <lai.hispvietnam@xxxxxxxxx>
branch nick: dhis2
timestamp: Mon 2013-08-05 10:16:07 +0700
message:
improve UI in view sent SMS page, show name of receivers
modified:
dhis-2/dhis-services/dhis-service-sms/src/main/java/org/hisp/dhis/sms/outbound/HibernateOutboundSmsStore.java
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-mobile/src/main/java/org/hisp/dhis/mobile/action/ShowSentSMSAction.java
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-mobile/src/main/resources/META-INF/dhis/beans.xml
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-mobile/src/main/webapp/dhis-web-maintenance-mobile/showSentSMSPage.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-sms/src/main/java/org/hisp/dhis/sms/outbound/HibernateOutboundSmsStore.java'
--- dhis-2/dhis-services/dhis-service-sms/src/main/java/org/hisp/dhis/sms/outbound/HibernateOutboundSmsStore.java 2013-07-16 06:53:26 +0000
+++ dhis-2/dhis-services/dhis-service-sms/src/main/java/org/hisp/dhis/sms/outbound/HibernateOutboundSmsStore.java 2013-08-05 03:16:07 +0000
@@ -31,6 +31,7 @@
import java.sql.SQLException;
import java.util.Date;
import java.util.List;
+
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.criterion.Order;
@@ -91,7 +92,7 @@
public List<OutboundSms> getAll()
{
Session session = sessionFactory.getCurrentSession();
- return session.createCriteria( OutboundSms.class ).addOrder( Order.asc( "date" ) ).list();
+ return session.createCriteria( OutboundSms.class ).addOrder( Order.desc( "date" ) ).list();
}
@Override
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-mobile/src/main/java/org/hisp/dhis/mobile/action/ShowSentSMSAction.java'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-mobile/src/main/java/org/hisp/dhis/mobile/action/ShowSentSMSAction.java 2013-03-13 10:11:52 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-mobile/src/main/java/org/hisp/dhis/mobile/action/ShowSentSMSAction.java 2013-08-05 03:16:07 +0000
@@ -29,6 +29,7 @@
import java.util.ArrayList;
import java.util.Collection;
+import java.util.Iterator;
import java.util.List;
import org.hisp.dhis.program.ProgramStageInstanceService;
@@ -36,44 +37,58 @@
import org.hisp.dhis.sms.outbound.OutboundSms;
import org.hisp.dhis.sms.outbound.OutboundSmsService;
import org.hisp.dhis.sms.outbound.OutboundSmsStatus;
+import org.hisp.dhis.user.User;
+import org.hisp.dhis.user.UserService;
import com.opensymphony.xwork2.Action;
public class ShowSentSMSAction
implements Action
{
-
+
// -------------------------------------------------------------------------
// Dependencies
// -------------------------------------------------------------------------
-
+
private OutboundSmsService outboundSmsService;
-
+
public void setOutboundSmsService( OutboundSmsService outboundSmsService )
{
this.outboundSmsService = outboundSmsService;
}
-
+
private ProgramStageInstanceService programStageInstanceService;
public void setProgramStageInstanceService( ProgramStageInstanceService programStageInstanceService )
{
this.programStageInstanceService = programStageInstanceService;
}
-
+
+ private UserService userService;
+
+ public void setUserService( UserService userService )
+ {
+ this.userService = userService;
+ }
+
+ public UserService getUserService()
+ {
+ return userService;
+ }
+
// -------------------------------------------------------------------------
// Input & Output
// -------------------------------------------------------------------------
-
+
private List<OutboundSms> listOutboundSMS;
-
+
public List<OutboundSms> getListOutboundSMS()
{
return listOutboundSMS;
}
-
+
private Integer filterStatusType;
-
+
public Integer getFilterStatusType()
{
return filterStatusType;
@@ -85,12 +100,19 @@
}
private Collection<SchedulingProgramObject> schedulingProgramObjects;
-
+
public Collection<SchedulingProgramObject> getSchedulingProgramObjects()
{
return schedulingProgramObjects;
}
-
+
+ private List<String> recipientNames;
+
+ public List<String> getRecipientNames()
+ {
+ return recipientNames;
+ }
+
// -------------------------------------------------------------------------
// Action Implementation
// -------------------------------------------------------------------------
@@ -102,12 +124,12 @@
List<OutboundSms> tempListOutboundSMS = outboundSmsService.getAllOutboundSms();
listOutboundSMS = new ArrayList<OutboundSms>();
-
- if ( filterStatusType != null && filterStatusType == 0)
+
+ if ( filterStatusType != null && filterStatusType == 0 )
{
- for ( OutboundSms each: tempListOutboundSMS )
+ for ( OutboundSms each : tempListOutboundSMS )
{
- if (each.getStatus().equals( OutboundSmsStatus.OUTBOUND ))
+ if ( each.getStatus().equals( OutboundSmsStatus.OUTBOUND ) )
{
this.listOutboundSMS.add( each );
}
@@ -115,21 +137,48 @@
}
if ( filterStatusType != null && filterStatusType == 1 )
{
- for ( OutboundSms each: tempListOutboundSMS )
+ for ( OutboundSms each : tempListOutboundSMS )
{
- if (each.getStatus().equals( OutboundSmsStatus.SENT ))
+ if ( each.getStatus().equals( OutboundSmsStatus.SENT ) )
{
this.listOutboundSMS.add( each );
}
}
}
- if ( filterStatusType != null && filterStatusType == 2 || filterStatusType == null)
+ if ( filterStatusType != null && filterStatusType == 2 || filterStatusType == null )
{
- for ( OutboundSms each: tempListOutboundSMS )
+ for ( OutboundSms each : tempListOutboundSMS )
{
this.listOutboundSMS.add( each );
}
}
+
+ recipientNames = new ArrayList<String>();
+ recipientNames.add( "" );
+ for ( OutboundSms outboundSms : listOutboundSMS )
+ {
+ String tempString = "";
+ for ( String phoneNumber : outboundSms.getRecipients() )
+ {
+ if ( userService.getUsersByPhoneNumber( phoneNumber ) == null
+ || userService.getUsersByPhoneNumber( phoneNumber ).size() == 0 )
+ {
+ tempString += "[unknown]";
+ }
+ else if ( userService.getUsersByPhoneNumber( phoneNumber ) != null
+ && userService.getUsersByPhoneNumber( phoneNumber ).size() > 0 )
+ {
+
+ Iterator<User> users = userService.getUsersByPhoneNumber( phoneNumber ).iterator();
+ while ( users.hasNext() )
+ {
+ User user = users.next();
+ tempString += "[" + user.getUsername() + "]";
+ }
+ }
+ }
+ recipientNames.add( tempString );
+ }
schedulingProgramObjects = programStageInstanceService.getSendMesssageEvents();
return SUCCESS;
}
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-mobile/src/main/resources/META-INF/dhis/beans.xml'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-mobile/src/main/resources/META-INF/dhis/beans.xml 2013-05-23 08:05:27 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-mobile/src/main/resources/META-INF/dhis/beans.xml 2013-08-05 03:16:07 +0000
@@ -63,6 +63,8 @@
ref="org.hisp.dhis.sms.outbound.OutboundSmsService" />
<property name="programStageInstanceService"
ref="org.hisp.dhis.program.ProgramStageInstanceService" />
+ <property name="userService"
+ ref="org.hisp.dhis.user.UserService" />
</bean>
<!-- Patient Mobile Settings -->
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-mobile/src/main/webapp/dhis-web-maintenance-mobile/showSentSMSPage.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-mobile/src/main/webapp/dhis-web-maintenance-mobile/showSentSMSPage.vm 2013-08-02 08:06:11 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-mobile/src/main/webapp/dhis-web-maintenance-mobile/showSentSMSPage.vm 2013-08-05 03:16:07 +0000
@@ -75,9 +75,9 @@
<option value="2" #if ( $!filterStatusType == 2 ) selected='selected' #end>$i18n.getString('all')</option>
</select>
</td>
- <!--<td style="text-align:right">
+ <td style="text-align:right">
<input type="button" name="btnDelete" value="$i18n.getString( 'delete_checked_option' )" onclick="deleteChecked()"/>
- </td>-->
+ </td>
</tr>
<table>
<table id="detailsSentSMSList" class="listTable" style="width:100%">
@@ -85,6 +85,7 @@
<col width="40px"/>
<col width="200px"/>
<col width="100px"/>
+ <col width="100px"/>
<col width="60px"/>
<col width="130px"/>
<col width="50px"/>
@@ -92,6 +93,7 @@
<th style="text-align:center"><a href="#" onclick="checkAll()" title="$i18n.getString( 'check_all' )"><img src="../images/check.png"/></a></th>
<th style="text-align:center">$i18n.getString( "no." )</th>
<th>$i18n.getString( "message" )</th>
+ <th>$i18n.getString( "phoneNumber" )</th>
<th>$i18n.getString( "receipient" )</th>
<th>$i18n.getString( "status" )</th>
<th>$i18n.getString( "date" )</th>
@@ -99,11 +101,13 @@
</thead>
<tbody id="sentSMS">
#foreach( $outboundSms in $listOutboundSMS)
+ #set($numb=$velocityCount-1)
<tr id="tr${outboundSms.id}" height="40">
<td style="text-align:center"><input type="checkbox" name="mycheck" value="$outboundSms.id"/></td>
<td style="text-align:center">$velocityCount</td>
<td>$outboundSms.message</td>
<td>$outboundSms.recipients</td>
+ <td>$recipientNames.get($velocityCount)</td>
<td>$outboundSms.status</td>
<td>$outboundSms.date.toLocaleString()</td>
<!--<td style="text-align:center"><a href="javascript:removeSingleItem( '$outboundSms.id', '$outboundSms.message' )" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"/></td>-->