r723 - in trunk: faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job
Author: kmorin Date: 2014-12-05 15:37:03 +0000 (Fri, 05 Dec 2014) New Revision: 723 Url: http://forge.codelutin.com/projects/faxtomail/repository/revisions/723 Log: amelioration des perf de recherche Modified: trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/EmailTopiaDao.java trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/MailFilterJob.java Modified: trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/EmailTopiaDao.java =================================================================== --- trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/EmailTopiaDao.java 2014-12-05 14:02:48 UTC (rev 722) +++ trunk/faxtomail-persistence/src/main/java/com/franciaflex/faxtomail/persistence/entities/EmailTopiaDao.java 2014-12-05 15:37:03 UTC (rev 723) @@ -386,18 +386,20 @@ } // add same fecth liste as emailService#getEmailForFolder() - String hqlForFetchStep1 = "select E." + TopiaEntity.PROPERTY_TOPIA_ID + " FROM " + Email.class.getName() + " E " - + "WHERE E." + TopiaEntity.PROPERTY_TOPIA_ID + " IN (" - + "select E." + TopiaEntity.PROPERTY_TOPIA_ID + " FROM " + Email.class.getName() + " E " - + query.toString() + ") "; + String hqlForFetchStep1 = "SELECT E." + TopiaEntity.PROPERTY_TOPIA_ID + " FROM " + Email.class.getName() + " E " + + "WHERE E." + TopiaEntity.PROPERTY_TOPIA_ID + " IN ("; if (searchFilter.isAddGroupDemands()) { - hqlForFetchStep1 += "OR E." + TopiaEntity.PROPERTY_TOPIA_ID + " IN (" - + "select E2." + TopiaEntity.PROPERTY_TOPIA_ID + " FROM " + Email.class.getName() + " E " - + "LEFT OUTER JOIN E." + Email.PROPERTY_EMAIL_GROUP + " AS G " - + "LEFT OUTER JOIN G." + EmailGroup.PROPERTY_EMAIL + " AS E2 " - + query.toString() + ")"; + hqlForFetchStep1 += "SELECT CASE WHEN E." + Email.PROPERTY_EMAIL_GROUP + " IS NULL " + + "THEN E." + TopiaEntity.PROPERTY_TOPIA_ID + + " ELSE E2." + TopiaEntity.PROPERTY_TOPIA_ID + " END " + + "FROM " + Email.class.getName() + " E " + + "INNER JOIN E." + Email.PROPERTY_EMAIL_GROUP + " AS G " + + "INNER JOIN G." + EmailGroup.PROPERTY_EMAIL + " AS E2 "; + } else { + hqlForFetchStep1 += "select E." + TopiaEntity.PROPERTY_TOPIA_ID + " FROM " + Email.class.getName() + " E "; } + hqlForFetchStep1 += query.toString() + ")"; String hqlForFetchStep2 = "select distinct E FROM " + Email.class.getName() + " E " + addAllFecthes( Email.PROPERTY_PRIORITY, @@ -471,6 +473,7 @@ // initialize folder of the grouped demand to transmit the grouped emails of the same folder for (Email groupedEmail : emailGroup.getEmail()) { Hibernate.initialize(groupedEmail.getMailFolder()); + Hibernate.initialize(groupedEmail.getAttachment()); } } } Modified: trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/MailFilterJob.java =================================================================== --- trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/MailFilterJob.java 2014-12-05 14:02:48 UTC (rev 722) +++ trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/MailFilterJob.java 2014-12-05 15:37:03 UTC (rev 723) @@ -549,4 +549,10 @@ } } + public static void main(String[] args) { + String recipient = "- ftm_mailfx03 - <adv29@franciaflex.com>"; + recipient = recipient.replaceFirst("^.*<(.*)>$", "$1"); + recipient = recipient.toLowerCase(); + System.out.println(recipient); + } }
participants (1)
-
kmorin@users.forge.codelutin.com