r698 - in trunk: faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job
Author: kmorin Date: 2014-11-26 10:17:01 +0000 (Wed, 26 Nov 2014) New Revision: 698 Url: http://forge.codelutin.com/projects/faxtomail/repository/revisions/698 Log: fixes #6160 Les gammes ne sont pas affich?\195?\169es dans l'ordre fixes #6161 Appliquer le filtre de mail de position la moins grande sur l'ensemble des destinataires fixes #6162 Erreur lors de l'enregistrement apr?\195?\168s modification de pi?\195?\168ce jointe fixes #6163 Erreur lors de l'enregistrement Modified: trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/MailFolderService.java trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/MailFolderServiceImpl.java trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/ReferentielServiceImpl.java trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/EditAttachmentAction.java trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/GenerateAnnotatedAttachmentAction.java trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/SaveDemandeAction.java trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIHandler.java trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractFaxToMailDemandListHandler.java trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/MailFilterJob.java Modified: trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/MailFolderService.java =================================================================== --- trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/MailFolderService.java 2014-11-25 16:26:20 UTC (rev 697) +++ trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/MailFolderService.java 2014-11-26 10:17:01 UTC (rev 698) @@ -41,7 +41,7 @@ public interface MailFolderService extends FaxToMailService { MailFolder getFolderForRecipient(String recipient); - Collection<MailFilter> getFiltersForRecipient(String recipient); + List<MailFilter> getFiltersForRecipient(String recipient); List<MailFolder> getAllMailFolders(); Modified: trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/MailFolderServiceImpl.java =================================================================== --- trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/MailFolderServiceImpl.java 2014-11-25 16:26:20 UTC (rev 697) +++ trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/MailFolderServiceImpl.java 2014-11-26 10:17:01 UTC (rev 698) @@ -71,7 +71,7 @@ } @Override - public Collection<MailFilter> getFiltersForRecipient(String recipient) { + public List<MailFilter> getFiltersForRecipient(String recipient) { MailFilterTopiaDao filterTopiaDao = getPersistenceContext().getMailFilterDao(); PaginationParameter tpb = PaginationParameter.of(0, -1, MailFilter.PROPERTY_POSITION, false); @@ -80,7 +80,7 @@ Map<String, Object> params = new HashMap<>(); params.put("recipient", recipient); - Collection<MailFilter> filters = filterTopiaDao.find(query, params, tpb); + List<MailFilter> filters = filterTopiaDao.find(query, params, tpb); return filters; } Modified: trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/ReferentielServiceImpl.java =================================================================== --- trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/ReferentielServiceImpl.java 2014-11-25 16:26:20 UTC (rev 697) +++ trunk/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/ReferentielServiceImpl.java 2014-11-26 10:17:01 UTC (rev 698) @@ -75,25 +75,25 @@ @Override public List<DemandType> getAllDemandType() { DemandTypeTopiaDao dao = getPersistenceContext().getDemandTypeDao(); - return dao.findAll(); + return dao.forAll().setOrderByArguments(DemandType.PROPERTY_LABEL).findAll(); } @Override public List<Priority> getAllPriority() { PriorityTopiaDao dao = getPersistenceContext().getPriorityDao(); - return dao.findAll(); + return dao.forAll().setOrderByArguments(Priority.PROPERTY_LABEL).findAll(); } @Override public List<Range> getAllRange() { RangeTopiaDao dao = getPersistenceContext().getRangeDao(); - return dao.findAll(); + return dao.forAll().setOrderByArguments(Range.PROPERTY_LABEL).findAll(); } @Override public List<WaitingState> getAllWaitingState() { WaitingStateTopiaDao dao = getPersistenceContext().getWaitingStateDao(); - return dao.findAll(); + return dao.forAll().setOrderByArguments(WaitingState.PROPERTY_LABEL).findAll(); } @Override Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/EditAttachmentAction.java =================================================================== --- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/EditAttachmentAction.java 2014-11-25 16:26:20 UTC (rev 697) +++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/EditAttachmentAction.java 2014-11-26 10:17:01 UTC (rev 698) @@ -76,7 +76,9 @@ super.postSuccessAction(); MainUI mainUI = getContext().getMainUI(); frame = getHandler().openFrame(dialogContent, attachment.getOriginalFileName(), mainUI.getSize()); + final Attachment attachment = this.attachment; + final PDFEditorUI dialogContent = this.dialogContent; frame.addWindowListener(new WindowAdapter() { @Override public void windowClosed(WindowEvent e) { Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/GenerateAnnotatedAttachmentAction.java =================================================================== --- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/GenerateAnnotatedAttachmentAction.java 2014-11-25 16:26:20 UTC (rev 697) +++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/GenerateAnnotatedAttachmentAction.java 2014-11-26 10:17:01 UTC (rev 698) @@ -248,11 +248,6 @@ String fileName = model.getOriginalFile().getFilename(); attachmentFileNew.setFilename(FaxToMailUIUtil.getEditedFileName(fileName)); model.setEditedFile(attachmentFileNew); - - AttachmentEditorUI parentUI = (AttachmentEditorUI) getUI().getContextValue(JAXXContext.class, JAXXUtil.PARENT); - parentUI.getModel().fireAttachmentEdited(model.toEntity()); - - model.setModify(false); } protected int[] computeCoordinates(Component panel, int rotation, float zoom) { @@ -327,6 +322,14 @@ @Override public void postSuccessAction() { super.postSuccessAction(); + + PDFEditorUIModel model = getModel(); + + AttachmentEditorUI parentUI = (AttachmentEditorUI) getUI().getContextValue(JAXXContext.class, JAXXUtil.PARENT); + parentUI.getModel().fireAttachmentEdited(model.toEntity()); + + model.setModify(false); + getHandler().closeFrame(); } } Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/SaveDemandeAction.java =================================================================== --- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/SaveDemandeAction.java 2014-11-25 16:26:20 UTC (rev 697) +++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/actions/SaveDemandeAction.java 2014-11-26 10:17:01 UTC (rev 698) @@ -85,6 +85,7 @@ } else { persistedEmail = new EmailImpl(); } + model.setRangeRow(persistedEmail.getRangeRow()); Collection<RangeRowModel> rows = model.getValidRangeRowModels(); @@ -143,9 +144,9 @@ model.setClientCode(null); // reset the range rows of the model - BeanMonitor monitor = getHandler().getMonitor(); - List<RangeRow> rangeRows = (List<RangeRow>) monitor.getOriginalValues().get(Email.PROPERTY_RANGE_ROW); - model.setRangeRow(rangeRows); +// BeanMonitor monitor = getHandler().getMonitor(); +// List<RangeRow> rangeRows = (List<RangeRow>) monitor.getOriginalValues().get(Email.PROPERTY_RANGE_ROW); +// model.setRangeRow(rangeRows); } } } Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIHandler.java =================================================================== --- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIHandler.java 2014-11-25 16:26:20 UTC (rev 697) +++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/content/demande/DemandeUIHandler.java 2014-11-26 10:17:01 UTC (rev 698) @@ -33,6 +33,8 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; +import java.util.Collections; +import java.util.Comparator; import java.util.Date; import java.util.List; import java.util.Map; @@ -53,6 +55,7 @@ import jaxx.runtime.validator.swing.SwingValidator; import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.jdesktop.swingx.JXTable; @@ -176,6 +179,13 @@ } else { ranges.addAll(folderRanges); } + Collections.sort(ranges, new Comparator<Range>() { + @Override + public int compare(Range o1, Range o2) { + return ObjectUtils.compare(o1.getLabel(), o2.getLabel()); + } + }); + TableColumnModelExt columnModel = new DefaultTableColumnModelExt(); addComboDataColumnToModel(columnModel, RangeTableModel.RANGE_COLUMN, Modified: trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractFaxToMailDemandListHandler.java =================================================================== --- trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractFaxToMailDemandListHandler.java 2014-11-25 16:26:20 UTC (rev 697) +++ trunk/faxtomail-ui-swing/src/main/java/com/franciaflex/faxtomail/ui/swing/util/AbstractFaxToMailDemandListHandler.java 2014-11-26 10:17:01 UTC (rev 698) @@ -361,7 +361,6 @@ String text = null; - List<String> ranges = new ArrayList<String>(); List<RangeRow> rangeRows = demande.getRangeRow(); if (CollectionUtils.isNotEmpty(rangeRows)) { text = decorate(rangeRows.get(0).getRange()); 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-11-25 16:26:20 UTC (rev 697) +++ trunk/faxtomail-ui-web/src/main/java/com/franciaflex/faxtomail/web/job/MailFilterJob.java 2014-11-26 10:17:01 UTC (rev 698) @@ -39,8 +39,12 @@ import java.util.Collection; import java.util.Date; import java.util.Enumeration; +import java.util.HashMap; +import java.util.HashSet; import java.util.List; +import java.util.Map; import java.util.Properties; +import java.util.Set; import java.util.regex.Pattern; import javax.activation.DataHandler; @@ -262,7 +266,7 @@ Charset charset = FaxToMailServiceUtils.getCharset(message); - List<String> modifiedProperties = new ArrayList<>(); + Set<String> modifiedProperties = new HashSet<>(); if (log.isDebugEnabled()) { log.debug(String.format("Message %d/%d : %s", i, count, message.getSubject())); @@ -288,16 +292,19 @@ recipient = recipient.replaceFirst("^.*<(.*)>$", "$1"); recipient = recipient.toLowerCase(); - Collection<MailFilter> filters = mailFolderService.getFiltersForRecipient(recipient); + List<MailFilter> filters = mailFolderService.getFiltersForRecipient(recipient); if (CollectionUtils.isNotEmpty(filters)) { - filter = filters.iterator().next(); - email.setRecipient(recipient); - modifiedProperties.add(Email.PROPERTY_RECIPIENT); - break; + MailFilter mailFilter = filters.get(0); + // TODO create issue + if (filter == null || mailFilter.getPosition() < filter.getPosition()) { + filter = mailFilter; + email.setRecipient(recipient); + modifiedProperties.add(Email.PROPERTY_RECIPIENT); + } } + } - } if (filter == null) { if (log.isDebugEnabled()) { log.debug(" ==> No filter found for this message"); @@ -307,7 +314,7 @@ } } } - + // on garde le mail sur le serveur pour le traiter suite à l'ajout d'un futur filtre continue; } @@ -415,7 +422,7 @@ } if (Boolean.TRUE.equals(reject)) { - + if (StringUtils.isAnyBlank(senderEmail, rejectMessage)) { if (log.isWarnEnabled()) { log.warn("Can't send reject message due to invalid configuration"); @@ -427,7 +434,7 @@ recipient = FaxToMailServiceUtils.addFaxDomainToFaxNumber(recipient, mailFolder); } emailService.rejectEmail(senderEmail, recipient, t("faxtomail.email.subject.re", message.getSubject()), rejectMessage); - + // important, delete mail deleteMail(message); }
participants (1)
-
kmorin@users.forge.codelutin.com