Author: mallon Date: 2012-08-20 14:52:54 +0200 (Mon, 20 Aug 2012) New Revision: 3615 Url: http://chorem.org/repositories/revision/lima/3615 Log: refs #769 Modification du jaxx, et mise en place de l affichage html des donnees filtrees, pour l edition de la d?\195?\169claration de TVA - Reste ?\195?\160 revoir l'autocompl?\195?\169tion du document, Removed: trunk/lima-swing/src/main/java/org/chorem/lima/ui/vatreports/VatReportPeriodSearchPanel.java Modified: trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/HttpServerServiceImpl.java trunk/lima-swing/src/main/java/org/chorem/lima/ui/common/IntervalPanel.java trunk/lima-swing/src/main/java/org/chorem/lima/ui/vatreports/VatReportView.jaxx trunk/lima-swing/src/main/java/org/chorem/lima/ui/vatreports/VatReportViewHandler.java Modified: trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/HttpServerServiceImpl.java =================================================================== --- trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/HttpServerServiceImpl.java 2012-08-20 11:59:56 UTC (rev 3614) +++ trunk/lima-business/src/main/java/org/chorem/lima/business/ejb/HttpServerServiceImpl.java 2012-08-20 12:52:54 UTC (rev 3615) @@ -213,7 +213,7 @@ } catch (ParseException eeePE) { log.error("Can't parse date", eeePE); } - + // FIXME echatellier 20120606 on connait le fichier // ou sera généré le rapport, et on peut donc le relire // après génération Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/common/IntervalPanel.java =================================================================== --- trunk/lima-swing/src/main/java/org/chorem/lima/ui/common/IntervalPanel.java 2012-08-20 11:59:56 UTC (rev 3614) +++ trunk/lima-swing/src/main/java/org/chorem/lima/ui/common/IntervalPanel.java 2012-08-20 12:52:54 UTC (rev 3615) @@ -139,7 +139,7 @@ GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(1, 1, 1, 1), 0, 0)); - JLabel endLabel = new JLabel(_("lima.common.begindate")); + JLabel endLabel = new JLabel(_("lima.common.enddate")); periodPanel.add(endLabel, new GridBagConstraints(2, 0, 1, 1, 0, 0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(1, 1, 1, 1), 0, 0)); Deleted: trunk/lima-swing/src/main/java/org/chorem/lima/ui/vatreports/VatReportPeriodSearchPanel.java =================================================================== --- trunk/lima-swing/src/main/java/org/chorem/lima/ui/vatreports/VatReportPeriodSearchPanel.java 2012-08-20 11:59:56 UTC (rev 3614) +++ trunk/lima-swing/src/main/java/org/chorem/lima/ui/vatreports/VatReportPeriodSearchPanel.java 2012-08-20 12:52:54 UTC (rev 3615) @@ -1,168 +0,0 @@ -/* - * #%L - * Lima :: Swing - * - * $Id$ - * $HeadURL$ - * %% - * Copyright (C) 2008 - 2011 CodeLutin - * %% - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public - * License along with this program. If not, see - * <http://www.gnu.org/licenses/gpl-3.0.html>. - * #L% - */ -package org.chorem.lima.ui.vatreports; - -import org.apache.commons.lang3.time.DateUtils; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.chorem.lima.entity.FinancialPeriod; -import org.chorem.lima.entity.FiscalPeriod; -import org.chorem.lima.enums.ComboBoxDatesEnum; -import org.chorem.lima.ui.LimaRendererUtil; -import org.chorem.lima.ui.combobox.FinancialPeriodComboBoxModel; -import org.chorem.lima.ui.combobox.FiscalPeriodComboBoxModel; -import org.jdesktop.swingx.JXDatePicker; - -import javax.swing.JComboBox; -import javax.swing.JLabel; -import javax.swing.JPanel; -import javax.swing.ListCellRenderer; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.util.Calendar; -import java.util.Date; - -import static org.nuiton.i18n.I18n._; - -public class VatReportPeriodSearchPanel extends JPanel { - - private static final long serialVersionUID = 1L; - - private static final Log log = - LogFactory.getLog(VatReportPeriodSearchPanel.class); - - protected VatReportViewHandler handler; - - public VatReportPeriodSearchPanel(VatReportViewHandler handler) { - - this.handler = handler; - - //init date - refresh(ComboBoxDatesEnum.FISCAL_PERIOD); - } - - public void refresh(ComboBoxDatesEnum comboBoxPeriodEnum) { - - switch (comboBoxPeriodEnum) { - case PERIOD: - // get begin date - Calendar calendarBegin = Calendar.getInstance(); - // set begindate to JAN 1 - 0:00.000 of this years - Date beginDate = calendarBegin.getTime(); - beginDate = DateUtils.truncate(beginDate, Calendar.YEAR); - //handler().setBeginDate(beginDate); - - // get end date - Calendar calendarEnd = Calendar.getInstance(); - Date endDate = calendarEnd.getTime(); - //handler().setEndDate(endDate); - JLabel beginDateLabel = new JLabel(_("lima.common.begindate")); - final JXDatePicker beginDatePicker = new JXDatePicker(beginDate); - final VatReportTableModel tableModel = handler.getTableModel(); - - ActionListener beginDateActionListener = new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - - tableModel.setBeginDate(beginDatePicker.getDate()); - handler.refresh(); - } - }; - tableModel.setBeginDate(beginDatePicker.getDate()); - beginDatePicker.addActionListener(beginDateActionListener); - - JLabel endDateLabel = new JLabel(_("lima.common.enddate")); - final JXDatePicker endDatePicker = new JXDatePicker(endDate); - ActionListener endDateActionListener = new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - tableModel.setEndDate(endDatePicker.getDate()); - handler.refresh(); - } - }; - tableModel.setEndDate(endDatePicker.getDate()); - endDatePicker.addActionListener(endDateActionListener); - handler.refresh(); - - removeAll(); - add(beginDateLabel); - add(beginDatePicker); - add(endDateLabel); - add(endDatePicker); - break; - - case FISCAL_PERIOD: - FiscalPeriodComboBoxModel fiscalModel = - new FiscalPeriodComboBoxModel(true); - ListCellRenderer renderer = - LimaRendererUtil.newDecoratorListCellRenderer(FiscalPeriod.class); - final JComboBox fiscalPeriod = new JComboBox(fiscalModel); - fiscalPeriod.setRenderer(renderer); - fiscalPeriod.setEditable(false); - ActionListener fiscalPeriodActionListener = new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - FiscalPeriod fPeriod = (FiscalPeriod) fiscalPeriod.getSelectedItem(); - if (fPeriod != null) { - handler.getTableModel().setBeginDate(fPeriod.getBeginDate()); - handler.getTableModel().setEndDate(fPeriod.getEndDate()); - handler.refresh(); - } - } - }; - fiscalPeriod.addActionListener(fiscalPeriodActionListener); - - removeAll(); - add(fiscalPeriod); - break; - - case FINANCIAL_PERIOD: - FinancialPeriodComboBoxModel financialModel = - new FinancialPeriodComboBoxModel(true); - renderer = - LimaRendererUtil.newDecoratorListCellRenderer(FinancialPeriod.class); - final JComboBox financialPeriod = new JComboBox(financialModel); - financialPeriod.setRenderer(renderer); - financialPeriod.setEditable(false); - ActionListener financialPeriodActionListener = new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - FinancialPeriod fPeriod = (FinancialPeriod) financialPeriod.getSelectedItem(); - if (fPeriod != null) { - handler.getTableModel().setBeginDate(fPeriod.getBeginDate()); - handler.getTableModel().setEndDate(fPeriod.getEndDate()); - handler.refresh(); - } - } - }; - financialPeriod.addActionListener(financialPeriodActionListener); - removeAll(); - add(financialPeriod); - break; - } - - } - -} Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/vatreports/VatReportView.jaxx =================================================================== --- trunk/lima-swing/src/main/java/org/chorem/lima/ui/vatreports/VatReportView.jaxx 2012-08-20 11:59:56 UTC (rev 3614) +++ trunk/lima-swing/src/main/java/org/chorem/lima/ui/vatreports/VatReportView.jaxx 2012-08-20 12:52:54 UTC (rev 3615) @@ -29,9 +29,7 @@ <import> javax.swing.ListSelectionModel org.jdesktop.swingx.JXTable - org.chorem.lima.entity.FiscalPeriod - org.chorem.lima.entity.FinancialPeriod - org.chorem.lima.enums.ComboBoxDatesEnum + org.chorem.lima.ui.common.IntervalPanel </import> <Boolean id="autoComplete" javaBean="false"/> @@ -45,18 +43,8 @@ </script> <row weightx="1" weighty="0" anchor="center"> - <cell anchor="east"> - <JLabel id="fiscalPeriodLabel" text="lima.charts.fiscalyear"/> - </cell> - <cell anchor="west"> - <JComboBox id="periodComboBox" - javaBean="new JComboBox(ComboBoxDatesEnum.descriptions())" - onActionPerformed="periodSearchPanel.refresh(ComboBoxDatesEnum.valueOfDescription((String) periodComboBox.getSelectedItem())); - validate(); repaint()"/> - </cell> <cell> - <VatReportPeriodSearchPanel id="periodSearchPanel" - constructorParams="handler"/> + <IntervalPanel id="intervalPanel"/> </cell> <cell> <JCheckBox id='autocompleteCheckBox' text='lima.common.autocomplete' @@ -68,17 +56,4 @@ onActionPerformed="getHandler().editVat()"/> </cell> </row> - <row> - <cell fill="both" weightx="1" weighty="1" rows="3" columns="11"> - <JScrollPane> - <!--<VatReportTableModel id="vatReportTableModel"/>--> - <JXTable id="vatReportTable" sortable="false" rowHeight="22" - model="{new VatReportTableModel()}" - selectionMode="{ListSelectionModel.SINGLE_SELECTION}"/> - <!--<ListSelectionModel--> - <!--initializer="getVatReportTable().getSelectionModel()"--> - <!--onValueChanged="setSelectedRow(vatReportTable.getSelectedRow() != -1)"/>--> - </JScrollPane> - </cell> - </row> </Table> \ No newline at end of file Modified: trunk/lima-swing/src/main/java/org/chorem/lima/ui/vatreports/VatReportViewHandler.java =================================================================== --- trunk/lima-swing/src/main/java/org/chorem/lima/ui/vatreports/VatReportViewHandler.java 2012-08-20 11:59:56 UTC (rev 3614) +++ trunk/lima-swing/src/main/java/org/chorem/lima/ui/vatreports/VatReportViewHandler.java 2012-08-20 12:52:54 UTC (rev 3615) @@ -26,20 +26,22 @@ import java.awt.Desktop; import java.io.IOException; -import java.math.BigDecimal; import java.net.URI; import java.net.URISyntaxException; import java.text.SimpleDateFormat; +import java.util.List; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.chorem.lima.LimaConfig; import org.chorem.lima.business.api.DocumentService; +import org.chorem.lima.business.api.FinancialPeriodService; +import org.chorem.lima.business.api.FiscalPeriodService; import org.chorem.lima.business.api.HttpServerService; import org.chorem.lima.business.utils.DocumentsEnum; +import org.chorem.lima.entity.FinancialPeriod; +import org.chorem.lima.entity.FiscalPeriod; import org.chorem.lima.service.LimaServiceFactory; -import org.chorem.lima.ui.celleditor.BigDecimalTableCellEditor; -import org.chorem.lima.ui.celleditor.BigDecimalTableCellRenderer; public class VatReportViewHandler { /** log. */ @@ -47,12 +49,11 @@ LogFactory.getLog(VatReportViewHandler.class); protected VatReportView view; - protected DocumentService documentService; - + protected FiscalPeriodService fiscalPeriodService; + protected FinancialPeriodService financialPeriodService; private static SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); - protected int port; protected VatReportViewHandler(VatReportView view) { @@ -61,37 +62,28 @@ port = LimaServiceFactory.getService(HttpServerService.class).getHttpPort(); documentService = LimaServiceFactory.getService(DocumentService.class); + fiscalPeriodService = LimaServiceFactory.getService(FiscalPeriodService.class); + financialPeriodService = LimaServiceFactory.getService(FinancialPeriodService.class); } + /** + * Init data models and displayed objects. + */ public void init() { - //Get new BigDecimal editor - view.getVatReportTable().setDefaultEditor(BigDecimal.class, new BigDecimalTableCellEditor()); - - //Get new BigDecimal renderer - view.getVatReportTable().setDefaultRenderer(BigDecimal.class, new BigDecimalTableCellRenderer()); - - // do refresh (TODO check if required...) - refresh(); + List<FiscalPeriod> blockedFiscalPeriods = fiscalPeriodService.getAllBlockedFiscalPeriods(); + List<FinancialPeriod> financialPeriod = financialPeriodService.getUnblockedFinancialPeriods(); + view.getIntervalPanel().init(blockedFiscalPeriods, financialPeriod); } - /** @return VatView */ - public VatReportView getView() { - return view; - } - public VatReportTableModel getTableModel() { - return (VatReportTableModel) view.getVatReportTable().getModel(); - } - /** Edit VAT document */ public void editVat() { - VatReportTableModel tableModel = getTableModel(); - if (tableModel.getBeginDate() != null || tableModel.getEndDate() != null) { + if (view.getIntervalPanel().getBeginDate() != null || view.getIntervalPanel().getEndDate() != null) { String address = LimaConfig.getInstance().getHostAdress(); try { String url = "http://" + address + ":" + port + "/?beginDate=" - + dateFormat.format(tableModel.getBeginDate()) - + "&endDate=" + dateFormat.format(tableModel.getEndDate()) + + dateFormat.format(view.getIntervalPanel().getBeginDate()) + + "&endDate=" + dateFormat.format(view.getIntervalPanel().getEndDate()) + "&format=.pdf&model=" + DocumentsEnum.VAT.getFileName() + "&autocomplete=" + view.getAutoComplete(); Desktop.getDesktop().browse(new URI(url)); @@ -103,10 +95,4 @@ } } - /** Refresh VatTableModel */ - public void refresh() { - VatReportTableModel tableModel = getTableModel(); - tableModel.refresh(); - } - }