details:   https://code.openbravo.com/erp/devel/pi/rev/9b3efdffbb5f
changeset: 28088:9b3efdffbb5f
user:      Carlos Aristu <carlos.aristu <at> openbravo.com>
date:      Wed Dec 02 10:33:15 2015 +0100
summary:   related to issue 31577: code review improvements

diffstat:

 
modules/org.openbravo.client.application/src/org/openbravo/client/application/ADAlertDatasourceService.java
 |  35 +++++----
 1 files changed, 20 insertions(+), 15 deletions(-)

diffs (54 lines):

diff -r 1e56db81f203 -r 9b3efdffbb5f 
modules/org.openbravo.client.application/src/org/openbravo/client/application/ADAlertDatasourceService.java
--- 
a/modules/org.openbravo.client.application/src/org/openbravo/client/application/ADAlertDatasourceService.java
       Wed Dec 02 09:03:46 2015 +0000
+++ 
b/modules/org.openbravo.client.application/src/org/openbravo/client/application/ADAlertDatasourceService.java
       Wed Dec 02 10:33:15 2015 +0100
@@ -94,21 +94,26 @@
 
   private List<String> getAlertIds() {
     // Get alert rules visible for context's the role/user.
-    StringBuffer whereClause = new StringBuffer();
-    whereClause.append(" as ar ");
-    whereClause.append("\nwhere exists (select 1 from ar."
-        + AlertRule.PROPERTY_ADALERTRECIPIENTLIST + " as arr");
-    whereClause.append("\n    where arr." + 
AlertRecipient.PROPERTY_USERCONTACT + ".id = :user");
-    whereClause.append("\n      or (");
-    whereClause.append("arr." + AlertRecipient.PROPERTY_USERCONTACT + " is 
null");
-    whereClause.append("\n          and arr." + AlertRecipient.PROPERTY_ROLE + 
".id = :role))");
+    try {
+      OBContext.setAdminMode(false);
+      StringBuffer whereClause = new StringBuffer();
+      whereClause.append(" as ar ");
+      whereClause.append("\nwhere exists (select 1 from ar."
+          + AlertRule.PROPERTY_ADALERTRECIPIENTLIST + " as arr");
+      whereClause.append("\n    where arr." + 
AlertRecipient.PROPERTY_USERCONTACT + ".id = :user");
+      whereClause.append("\n      or (");
+      whereClause.append("arr." + AlertRecipient.PROPERTY_USERCONTACT + " is 
null");
+      whereClause.append("\n          and arr." + AlertRecipient.PROPERTY_ROLE 
+ ".id = :role))");
 
-    OBQuery<AlertRule> alertRulesQuery = 
OBDal.getInstance().createQuery(AlertRule.class,
-        whereClause.toString());
-    alertRulesQuery.setNamedParameter("user", 
DalUtil.getId(OBContext.getOBContext().getUser()));
-    alertRulesQuery.setNamedParameter("role", 
DalUtil.getId(OBContext.getOBContext().getRole()));
+      OBQuery<AlertRule> alertRulesQuery = 
OBDal.getInstance().createQuery(AlertRule.class,
+          whereClause.toString());
+      alertRulesQuery.setNamedParameter("user", 
DalUtil.getId(OBContext.getOBContext().getUser()));
+      alertRulesQuery.setNamedParameter("role", 
DalUtil.getId(OBContext.getOBContext().getRole()));
 
-    return getAlertIdsFromAlertRules(alertRulesQuery.list());
+      return getAlertIdsFromAlertRules(alertRulesQuery.list());
+    } finally {
+      OBContext.restorePreviousMode();
+    }
   }
 
   private List<String> getAlertIdsFromAlertRules(List<AlertRule> alertRules) {
@@ -157,8 +162,8 @@
   private String buildWhereClause(String alertStatus, List<String> alertList) {
     int chunkSize = 1000;
     String filterClause;
-    String whereClause = "coalesce(to_char(status), 'NEW') = upper('"
-        + StringEscapeUtils.escapeSql(alertStatus) + "')";
+    String whereClause = "coalesce(to_char(status), 'NEW') = '"
+        + StringEscapeUtils.escapeSql(alertStatus) + "'";
     ArrayList<String> alertListToRemove;
 
     if (alertList.size() == 0) {

------------------------------------------------------------------------------
Go from Idea to Many App Stores Faster with Intel(R) XDK
Give your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
_______________________________________________
Openbravo-commits mailing list
Openbravo-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to