Line 12... |
Line 12... |
12 |
*/
|
12 |
*/
|
13 |
|
13 |
|
14 |
package org.openconcerto.erp.core.sales.order.element;
|
14 |
package org.openconcerto.erp.core.sales.order.element;
|
15 |
|
15 |
|
16 |
import org.openconcerto.erp.core.common.element.ComptaSQLConfElement;
|
16 |
import org.openconcerto.erp.core.common.element.ComptaSQLConfElement;
|
- |
|
17 |
import org.openconcerto.erp.core.common.ui.DeviseTableCellRenderer;
|
17 |
import org.openconcerto.erp.core.sales.invoice.report.VenteFactureXmlSheet;
|
18 |
import org.openconcerto.erp.core.sales.invoice.report.VenteFactureXmlSheet;
|
18 |
import org.openconcerto.erp.core.sales.order.ui.TypeFactureCommandeCellRenderer;
|
19 |
import org.openconcerto.erp.core.sales.order.ui.TypeFactureCommandeCellRenderer;
|
19 |
import org.openconcerto.erp.core.sales.order.ui.TypeFactureCommandeClient;
|
20 |
import org.openconcerto.erp.core.sales.order.ui.TypeFactureCommandeClient;
|
20 |
import org.openconcerto.erp.core.sales.order.ui.TypeFactureCommandeClientComboBox;
|
21 |
import org.openconcerto.erp.core.sales.order.ui.TypeFactureCommandeClientComboBox;
|
21 |
import org.openconcerto.erp.core.sales.order.ui.TypeFactureCommandeRowItemView;
|
22 |
import org.openconcerto.erp.core.sales.order.ui.TypeFactureCommandeRowItemView;
|
22 |
import org.openconcerto.sql.element.BaseSQLComponent;
|
23 |
import org.openconcerto.sql.element.BaseSQLComponent;
|
23 |
import org.openconcerto.sql.element.SQLComponent;
|
24 |
import org.openconcerto.sql.element.SQLComponent;
|
24 |
import org.openconcerto.sql.element.UISQLComponent;
|
25 |
import org.openconcerto.sql.element.UISQLComponent;
|
- |
|
26 |
import org.openconcerto.sql.model.FieldPath;
|
25 |
import org.openconcerto.sql.model.SQLRow;
|
27 |
import org.openconcerto.sql.model.SQLRow;
|
26 |
import org.openconcerto.sql.model.SQLRowAccessor;
|
28 |
import org.openconcerto.sql.model.SQLRowAccessor;
|
27 |
import org.openconcerto.sql.model.SQLRowValues;
|
29 |
import org.openconcerto.sql.model.SQLRowValues;
|
- |
|
30 |
import org.openconcerto.sql.model.graph.Path;
|
28 |
import org.openconcerto.sql.view.EditFrame;
|
31 |
import org.openconcerto.sql.view.EditFrame;
|
29 |
import org.openconcerto.sql.view.EditPanelListener;
|
32 |
import org.openconcerto.sql.view.EditPanelListener;
|
- |
|
33 |
import org.openconcerto.sql.view.list.BaseSQLTableModelColumn;
|
30 |
import org.openconcerto.sql.view.list.IListe;
|
34 |
import org.openconcerto.sql.view.list.IListe;
|
31 |
import org.openconcerto.sql.view.list.RowAction;
|
35 |
import org.openconcerto.sql.view.list.RowAction;
|
32 |
import org.openconcerto.sql.view.list.SQLTableModelSource;
|
36 |
import org.openconcerto.sql.view.list.SQLTableModelSource;
|
- |
|
37 |
import org.openconcerto.utils.CollectionUtils;
|
- |
|
38 |
import org.openconcerto.utils.DecimalUtils;
|
33 |
import org.openconcerto.utils.ExceptionHandler;
|
39 |
import org.openconcerto.utils.ExceptionHandler;
|
34 |
|
40 |
|
35 |
import java.awt.event.ActionEvent;
|
41 |
import java.awt.event.ActionEvent;
|
- |
|
42 |
import java.math.BigDecimal;
|
36 |
import java.sql.SQLException;
|
43 |
import java.sql.SQLException;
|
37 |
import java.util.ArrayList;
|
44 |
import java.util.ArrayList;
|
38 |
import java.util.Arrays;
|
45 |
import java.util.Arrays;
|
39 |
import java.util.HashSet;
|
46 |
import java.util.HashSet;
|
40 |
import java.util.List;
|
47 |
import java.util.List;
|
Line 212... |
Line 219... |
212 |
}
|
219 |
}
|
213 |
|
220 |
|
214 |
@Override
|
221 |
@Override
|
215 |
protected void _initTableSource(SQLTableModelSource res) {
|
222 |
protected void _initTableSource(SQLTableModelSource res) {
|
216 |
res.init();
|
223 |
res.init();
|
- |
|
224 |
res.getColumn(getTable().getField("POURCENT")).setRenderer(new DeviseTableCellRenderer());
|
217 |
res.getColumn(getTable().getField("TYPE_FACTURE")).setRenderer(new TypeFactureCommandeCellRenderer());
|
225 |
res.getColumn(getTable().getField("TYPE_FACTURE")).setRenderer(new TypeFactureCommandeCellRenderer());
|
- |
|
226 |
final BaseSQLTableModelColumn pourcentFact = new BaseSQLTableModelColumn("Montant facturé", BigDecimal.class) {
|
- |
|
227 |
|
- |
|
228 |
@Override
|
- |
|
229 |
protected Object show_(SQLRowAccessor r) {
|
- |
|
230 |
long ht = r.getForeign("ID_COMMANDE_CLIENT").getLong("T_TTC");
|
- |
|
231 |
BigDecimal percent = r.getBigDecimal("POURCENT");
|
- |
|
232 |
return percent.movePointLeft(2).multiply(new BigDecimal(ht).movePointLeft(2), DecimalUtils.HIGH_PRECISION);
|
- |
|
233 |
}
|
- |
|
234 |
|
- |
|
235 |
@Override
|
- |
|
236 |
public Set<FieldPath> getPaths() {
|
- |
|
237 |
Path p = new Path(getTable());
|
- |
|
238 |
Path p2 = p.add(p.getFirst().getField("ID_COMMANDE_CLIENT"));
|
- |
|
239 |
return CollectionUtils.createSet(new FieldPath(p, "POURCENT"), new FieldPath(p2, "T_TTC"));
|
- |
|
240 |
}
|
- |
|
241 |
};
|
- |
|
242 |
pourcentFact.setRenderer(new DeviseTableCellRenderer());
|
- |
|
243 |
res.getColumns().add(pourcentFact);
|
218 |
super._initTableSource(res);
|
244 |
super._initTableSource(res);
|
219 |
}
|
245 |
}
|
220 |
|
246 |
|
221 |
/*
|
247 |
/*
|
222 |
* (non-Javadoc)
|
248 |
* (non-Javadoc)
|