OpenConcerto

Dépôt officiel du code source de l'ERP OpenConcerto
sonarqube

svn://code.openconcerto.org/openconcerto

Rev

Rev 149 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 149 Rev 156
Line 111... Line 111...
111
        final SQLPreferences prefs = SQLPreferences.getMemCached(getSQLElement().getTable().getDBRoot());
111
        final SQLPreferences prefs = SQLPreferences.getMemCached(getSQLElement().getTable().getDBRoot());
112
        final boolean selectArticle = prefs.getBoolean(GestionArticleGlobalPreferencePanel.USE_CREATED_ARTICLE, false);
112
        final boolean selectArticle = prefs.getBoolean(GestionArticleGlobalPreferencePanel.USE_CREATED_ARTICLE, false);
113
        final boolean createAuto = prefs.getBoolean(GestionArticleGlobalPreferencePanel.CREATE_ARTICLE_AUTO, true);
113
        final boolean createAuto = prefs.getBoolean(GestionArticleGlobalPreferencePanel.CREATE_ARTICLE_AUTO, true);
114
        final boolean showEco = prefs.getBoolean(AbstractVenteArticleItemTable.SHOW_ECO_CONTRIBUTION_COLUMNS, false);
114
        final boolean showEco = prefs.getBoolean(AbstractVenteArticleItemTable.SHOW_ECO_CONTRIBUTION_COLUMNS, false);
115
        final boolean showDmdAchat = prefs.getBoolean(GestionArticleGlobalPreferencePanel.ACTIVE_DEMANDE_ACHAT, false);
115
        final boolean showDmdAchat = prefs.getBoolean(GestionArticleGlobalPreferencePanel.ACTIVE_DEMANDE_ACHAT, false);
-
 
116
        final boolean showDevise = prefs.getBoolean(AbstractVenteArticleItemTable.ARTICLE_SHOW_DEVISE, false);
116
        this.supplierCode = prefs.getBoolean(GestionArticleGlobalPreferencePanel.SUPPLIER_PRODUCT_CODE, false);
117
        this.supplierCode = prefs.getBoolean(GestionArticleGlobalPreferencePanel.SUPPLIER_PRODUCT_CODE, false);
117
 
118
 
118
        final List<SQLTableElement> list = new Vector<SQLTableElement>();
119
        final List<SQLTableElement> list = new Vector<SQLTableElement>();
119
        final SQLTableElement eNiveau = new SQLTableElement(e.getTable().getField("NIVEAU")) {
120
        final SQLTableElement eNiveau = new SQLTableElement(e.getTable().getField("NIVEAU")) {
120
            @Override
121
            @Override
Line 153... Line 154...
153
 
154
 
154
            }
155
            }
155
        };
156
        };
156
        list.add(tableElementArticle);
157
        list.add(tableElementArticle);
157
 
158
 
-
 
159
        // Article
-
 
160
        SQLTableElement tableElementDepot = new SQLTableElement(e.getTable().getField("ID_DEPOT_STOCK"), true, true, true);
-
 
161
        list.add(tableElementDepot);
-
 
162
 
158
        if (e.getTable().getFieldsName().contains("ID_FAMILLE_ARTICLE")) {
163
        if (e.getTable().getFieldsName().contains("ID_FAMILLE_ARTICLE")) {
159
            final SQLTableElement tableFamille = new SQLTableElement(e.getTable().getField("ID_FAMILLE_ARTICLE"));
164
            final SQLTableElement tableFamille = new SQLTableElement(e.getTable().getField("ID_FAMILLE_ARTICLE"));
160
            list.add(tableFamille);
165
            list.add(tableFamille);
161
        }
166
        }
162
 
167
 
Line 229... Line 234...
229
        final SQLTableElement tableElement_ValeurMetrique3 = new SQLTableElement(e.getTable().getField("VALEUR_METRIQUE_3"), Float.class);
234
        final SQLTableElement tableElement_ValeurMetrique3 = new SQLTableElement(e.getTable().getField("VALEUR_METRIQUE_3"), Float.class);
230
        list.add(tableElement_ValeurMetrique3);
235
        list.add(tableElement_ValeurMetrique3);
231
        final SQLTableElement tableElement_ValeurMetrique1 = new SQLTableElement(e.getTable().getField("VALEUR_METRIQUE_1"), Float.class);
236
        final SQLTableElement tableElement_ValeurMetrique1 = new SQLTableElement(e.getTable().getField("VALEUR_METRIQUE_1"), Float.class);
232
        list.add(tableElement_ValeurMetrique1);
237
        list.add(tableElement_ValeurMetrique1);
233
        // Prix d'achat HT de la métrique 1
238
        // Prix d'achat HT de la métrique 1
-
 
239
        final DeviseNumericHTConvertorCellEditor editorPAHT = new DeviseNumericHTConvertorCellEditor(e.getTable().getField("PRIX_METRIQUE_HA_1"));
234
        final SQLTableElement tableElement_PrixMetrique1_AchatHT = new SQLTableElement(e.getTable().getField("PRIX_METRIQUE_HA_1"), BigDecimal.class);
240
        final SQLTableElement tableElement_PrixMetrique1_AchatHT = new SQLTableElement(e.getTable().getField("PRIX_METRIQUE_HA_1"), BigDecimal.class, editorPAHT);
235
        tableElement_PrixMetrique1_AchatHT.setRenderer(new CurrencyWithSymbolRenderer());
241
        tableElement_PrixMetrique1_AchatHT.setRenderer(new CurrencyWithSymbolRenderer());
236
        list.add(tableElement_PrixMetrique1_AchatHT);
242
        list.add(tableElement_PrixMetrique1_AchatHT);
237
 
243
 
238
        if (e.getTable().getFieldsName().contains("ECO_CONTRIBUTION")) {
244
        if (e.getTable().getFieldsName().contains("ECO_CONTRIBUTION")) {
239
            this.tableElementEco = new SQLTableElement(e.getTable().getField("ECO_CONTRIBUTION"));
245
            this.tableElementEco = new SQLTableElement(e.getTable().getField("ECO_CONTRIBUTION"));
Line 243... Line 249...
243
        final SQLTableElement tableElement_Devise = new SQLTableElement(e.getTable().getField("ID_DEVISE"));
249
        final SQLTableElement tableElement_Devise = new SQLTableElement(e.getTable().getField("ID_DEVISE"));
244
        tableElement_Devise.setEditable(false);
250
        tableElement_Devise.setEditable(false);
245
        final SQLTableElement tableElement_PA_Devise = new SQLTableElement(e.getTable().getField("PA_DEVISE"), BigDecimal.class);
251
        final SQLTableElement tableElement_PA_Devise = new SQLTableElement(e.getTable().getField("PA_DEVISE"), BigDecimal.class);
246
        Path p = new Path(getSQLElement().getTable()).addForeignField("ID_DEVISE");
252
        Path p = new Path(getSQLElement().getTable()).addForeignField("ID_DEVISE");
247
        tableElement_PA_Devise.setRenderer(new CurrencyWithSymbolRenderer(new FieldPath(p, "CODE")));
253
        tableElement_PA_Devise.setRenderer(new CurrencyWithSymbolRenderer(new FieldPath(p, "CODE")));
248
        if (DefaultNXProps.getInstance().getBooleanValue(AbstractVenteArticleItemTable.ARTICLE_SHOW_DEVISE, false)) {
254
        if (showDevise) {
249
            // Devise
255
            // Devise
250
            list.add(tableElement_Devise);
256
            list.add(tableElement_Devise);
251
 
257
 
252
            // Prix d'achat HT devise
258
            // Prix d'achat HT devise
253
            list.add(tableElement_PA_Devise);
259
            list.add(tableElement_PA_Devise);
Line 317... Line 323...
317
        if (b != null && b.booleanValue()) {
323
        if (b != null && b.booleanValue()) {
318
            this.service = new SQLTableElement(e.getTable().getField("SERVICE"), Boolean.class);
324
            this.service = new SQLTableElement(e.getTable().getField("SERVICE"), Boolean.class);
319
            list.add(this.service);
325
            list.add(this.service);
320
        }
326
        }
321
 
327
 
322
        if (DefaultNXProps.getInstance().getBooleanValue(AbstractVenteArticleItemTable.ARTICLE_SHOW_DEVISE, false)) {
328
        if (showDevise) {
323
            // Prix d'achat HT devise
329
            // Prix d'achat HT devise
324
            this.tableElementTotalDevise = new SQLTableElement(e.getTable().getField("PA_DEVISE_T"), BigDecimal.class);
330
            this.tableElementTotalDevise = new SQLTableElement(e.getTable().getField("PA_DEVISE_T"), BigDecimal.class);
325
            this.tableElementTotalDevise.setRenderer(new CurrencyWithSymbolRenderer(new FieldPath(p, "CODE")));
331
            this.tableElementTotalDevise.setRenderer(new CurrencyWithSymbolRenderer(new FieldPath(p, "CODE")));
326
            list.add(tableElementTotalDevise);
332
            list.add(tableElementTotalDevise);
327
        }
333
        }
Line 427... Line 433...
427
        }
433
        }
428
        if (e.getTable().getFieldsName().contains("ID_ECO_CONTRIBUTION")) {
434
        if (e.getTable().getFieldsName().contains("ID_ECO_CONTRIBUTION")) {
429
            completionFields.add("ID_ECO_CONTRIBUTION");
435
            completionFields.add("ID_ECO_CONTRIBUTION");
430
        }
436
        }
431
        completionFields.add("ID_UNITE_VENTE");
437
        completionFields.add("ID_UNITE_VENTE");
-
 
438
        completionFields.add("QTE_UNITAIRE");
432
        completionFields.add("PA_HT");
439
        completionFields.add("PA_HT");
433
        completionFields.add("PV_HT");
440
        completionFields.add("PV_HT");
434
        completionFields.add("POIDS");
441
        completionFields.add("POIDS");
435
        completionFields.add("ID_TAXE");
442
        completionFields.add("ID_TAXE");
436
        completionFields.add("PRIX_METRIQUE_HA_1");
443
        completionFields.add("PRIX_METRIQUE_HA_1");
Line 603... Line 610...
603
 
610
 
604
                return r;
611
                return r;
605
            }
612
            }
606
 
613
 
607
        });
614
        });
608
        if (DefaultNXProps.getInstance().getBooleanValue(AbstractVenteArticleItemTable.ARTICLE_SHOW_DEVISE, false)) {
615
        if (showDevise) {
609
 
616
 
610
            if (tableElement_PA_Devise != null) {
617
            if (tableElement_PA_Devise != null) {
611
                tableElement_PA_Devise.addModificationListener(tableElement_PrixMetrique1_AchatHT);
618
                tableElement_PA_Devise.addModificationListener(tableElement_PrixMetrique1_AchatHT);
612
            }
619
            }
613
 
620
 
Line 679... Line 686...
679
                int idTaux = Integer.parseInt(row.getObject("ID_TAXE").toString());
686
                int idTaux = Integer.parseInt(row.getObject("ID_TAXE").toString());
680
                if (idTaux < 0) {
687
                if (idTaux < 0) {
681
                    System.out.println(row);
688
                    System.out.println(row);
682
                }
689
                }
683
                Float resultTaux = TaxeCache.getCache().getTauxFromId(idTaux);
690
                Float resultTaux = TaxeCache.getCache().getTauxFromId(idTaux);
684
 
-
 
-
 
691
                editorPAHT.setTaxe(resultTaux);
685
                BigDecimal b = (row.getObject("QTE_UNITAIRE") == null) ? BigDecimal.ONE : (BigDecimal) row.getObject("QTE_UNITAIRE");
692
                BigDecimal b = (row.getObject("QTE_UNITAIRE") == null) ? BigDecimal.ONE : (BigDecimal) row.getObject("QTE_UNITAIRE");
686
                BigDecimal r = b.multiply(f.multiply(BigDecimal.valueOf(qte), DecimalUtils.HIGH_PRECISION), DecimalUtils.HIGH_PRECISION).setScale(tableElementTotalTTC.getDecimalDigits(),
693
                BigDecimal r = b.multiply(f.multiply(BigDecimal.valueOf(qte), DecimalUtils.HIGH_PRECISION), DecimalUtils.HIGH_PRECISION).setScale(tableElementTotalTTC.getDecimalDigits(),
687
                        BigDecimal.ROUND_HALF_UP);
694
                        BigDecimal.ROUND_HALF_UP);
688
                float taux = (resultTaux == null) ? 0.0F : resultTaux.floatValue();
695
                float taux = (resultTaux == null) ? 0.0F : resultTaux.floatValue();
689
 
696
 
Line 725... Line 732...
725
 
732
 
726
        setColumnVisible(model.getColumnForField("ID_ARTICLE"), selectArticle);
733
        setColumnVisible(model.getColumnForField("ID_ARTICLE"), selectArticle);
727
        setColumnVisible(model.getColumnForField("CODE"), !selectArticle || (selectArticle && createAuto));
734
        setColumnVisible(model.getColumnForField("CODE"), !selectArticle || (selectArticle && createAuto));
728
        setColumnVisible(model.getColumnForField("NOM"), !selectArticle || (selectArticle && createAuto));
735
        setColumnVisible(model.getColumnForField("NOM"), !selectArticle || (selectArticle && createAuto));
729
 
736
 
-
 
737
        setColumnVisible(model.getColumnForField("ID_DEPOT_STOCK"), prefs.getBoolean(GestionArticleGlobalPreferencePanel.STOCK_MULTI_DEPOT, false));
-
 
738
 
730
        // Calcul automatique du poids unitaire
739
        // Calcul automatique du poids unitaire
731
        tableElement_ValeurMetrique1.addModificationListener(tableElementPoids);
740
        tableElement_ValeurMetrique1.addModificationListener(tableElementPoids);
732
        tableElement_ValeurMetrique2.addModificationListener(tableElementPoids);
741
        tableElement_ValeurMetrique2.addModificationListener(tableElementPoids);
733
        tableElement_ValeurMetrique3.addModificationListener(tableElementPoids);
742
        tableElement_ValeurMetrique3.addModificationListener(tableElementPoids);
734
        tableElementPoids.setModifier(new CellDynamicModifier() {
743
        tableElementPoids.setModifier(new CellDynamicModifier() {
Line 1038... Line 1047...
1038
                return Configuration.getInstance().getDirectory().getElement("DEVISE").getTable().getUndefinedID();
1047
                return Configuration.getInstance().getDirectory().getElement("DEVISE").getTable().getUndefinedID();
1039
            } else if ((field.equalsIgnoreCase("PA_DEVISE"))) {
1048
            } else if ((field.equalsIgnoreCase("PA_DEVISE"))) {
1040
 
1049
 
1041
                return BigDecimal.ZERO;
1050
                return BigDecimal.ZERO;
1042
            }
1051
            }
-
 
1052
 
-
 
1053
        }
-
 
1054
        if (field.equalsIgnoreCase("ID_TAXE") && this.rowCatComptable != null) {
-
 
1055
            return this.rowCatComptable.getForeignID("ID_TAXE_VENTE");
1043
        }
1056
        }
1044
        return null;
1057
        return null;
1045
 
1058
 
1046
    }
1059
    }
1047
 
1060