Line 81... |
Line 81... |
81 |
}
|
81 |
}
|
82 |
|
82 |
|
83 |
private static SQLTable tableVF = Configuration.getInstance().getDirectory().getElement("SAISIE_VENTE_FACTURE").getTable();
|
83 |
private static SQLTable tableVF = Configuration.getInstance().getDirectory().getElement("SAISIE_VENTE_FACTURE").getTable();
|
84 |
|
84 |
|
85 |
class TaxeComplRecap {
|
85 |
class TaxeComplRecap {
|
86 |
private final String code, nom;
|
86 |
private final String code, nom, numeroCptProduit, numeroCpt;
|
87 |
private BigDecimal percentTaxe, totalBase, qte;
|
87 |
private BigDecimal percentTaxe, totalBase, qte;
|
88 |
|
88 |
|
89 |
public TaxeComplRecap(String code, String nom, BigDecimal percentTaxe) {
|
89 |
public TaxeComplRecap(SQLRowAccessor foreignTaxeCompl) {
|
90 |
this.code = code;
|
90 |
this.code = foreignTaxeCompl.getString("CODE");
|
91 |
this.nom = nom;
|
91 |
this.nom = foreignTaxeCompl.getString("NOM");
|
92 |
this.qte = BigDecimal.ZERO;
|
92 |
this.qte = BigDecimal.ZERO;
|
93 |
this.percentTaxe = percentTaxe;
|
93 |
this.percentTaxe = foreignTaxeCompl.getBigDecimal("POURCENT");
|
94 |
this.totalBase = BigDecimal.ZERO;
|
94 |
this.totalBase = BigDecimal.ZERO;
|
- |
|
95 |
if (foreignTaxeCompl.getObject("ID_COMPTE_PCE") != null && !foreignTaxeCompl.isForeignEmpty("ID_COMPTE_PCE")) {
|
- |
|
96 |
this.numeroCpt = foreignTaxeCompl.getForeign("ID_COMPTE_PCE").getString("NUMERO");
|
- |
|
97 |
} else {
|
- |
|
98 |
this.numeroCpt = "";
|
- |
|
99 |
}
|
- |
|
100 |
if (foreignTaxeCompl.getObject("ID_COMPTE_PCE_PRODUITS") != null && !foreignTaxeCompl.isForeignEmpty("ID_COMPTE_PCE_PRODUITS")) {
|
- |
|
101 |
this.numeroCptProduit = foreignTaxeCompl.getForeign("ID_COMPTE_PCE_PRODUITS").getString("NUMERO");
|
- |
|
102 |
} else {
|
- |
|
103 |
this.numeroCptProduit = "";
|
- |
|
104 |
}
|
95 |
}
|
105 |
}
|
96 |
|
106 |
|
97 |
public void cumul(BigDecimal qte, BigDecimal total) {
|
107 |
public void cumul(BigDecimal qte, BigDecimal total) {
|
98 |
this.qte = qte.add(this.qte);
|
108 |
this.qte = qte.add(this.qte);
|
99 |
this.totalBase = total.add(this.totalBase);
|
109 |
this.totalBase = total.add(this.totalBase);
|
Line 105... |
Line 115... |
105 |
|
115 |
|
106 |
public String getNom() {
|
116 |
public String getNom() {
|
107 |
return nom;
|
117 |
return nom;
|
108 |
}
|
118 |
}
|
109 |
|
119 |
|
- |
|
120 |
public String getNumeroCpt() {
|
- |
|
121 |
return numeroCpt;
|
- |
|
122 |
}
|
- |
|
123 |
|
- |
|
124 |
public String getNumeroCptProduit() {
|
- |
|
125 |
return numeroCptProduit;
|
- |
|
126 |
}
|
- |
|
127 |
|
110 |
public BigDecimal getQte() {
|
128 |
public BigDecimal getQte() {
|
111 |
return qte;
|
129 |
return qte;
|
112 |
}
|
130 |
}
|
113 |
|
131 |
|
114 |
public BigDecimal getPercentTaxe() {
|
132 |
public BigDecimal getPercentTaxe() {
|
Line 140... |
Line 158... |
140 |
SQLRowValues rowvalsVFElt = new SQLRowValues(tableVFElt);
|
158 |
SQLRowValues rowvalsVFElt = new SQLRowValues(tableVFElt);
|
141 |
rowvalsVFElt.put("ID_SAISIE_VENTE_FACTURE", rowvalsVF);
|
159 |
rowvalsVFElt.put("ID_SAISIE_VENTE_FACTURE", rowvalsVF);
|
142 |
rowvalsVFElt.put("T_PV_HT", null);
|
160 |
rowvalsVFElt.put("T_PV_HT", null);
|
143 |
rowvalsVFElt.put("QTE", null);
|
161 |
rowvalsVFElt.put("QTE", null);
|
144 |
rowvalsVFElt.put("QTE_UNITAIRE", null);
|
162 |
rowvalsVFElt.put("QTE_UNITAIRE", null);
|
- |
|
163 |
final SQLRowValues rowValsTaxeCompl = rowvalsVFElt.putRowValues("ID_ARTICLE").putRowValues("ID_TAXE_COMPLEMENTAIRE");
|
- |
|
164 |
rowValsTaxeCompl.putNulls("CODE", "NOM", "POURCENT");
|
- |
|
165 |
rowValsTaxeCompl.putRowValues("ID_COMPTE_PCE_PRODUITS").putNulls("NUMERO", "NOM");
|
145 |
rowvalsVFElt.putRowValues("ID_ARTICLE").putRowValues("ID_TAXE_COMPLEMENTAIRE").putNulls("CODE", "NOM", "POURCENT");
|
166 |
rowValsTaxeCompl.putRowValues("ID_COMPTE_PCE").putNulls("NUMERO", "NOM");
|
146 |
|
- |
|
147 |
SQLRowValuesListFetcher fetcher = SQLRowValuesListFetcher.create(rowvalsVFElt);
|
167 |
SQLRowValuesListFetcher fetcher = SQLRowValuesListFetcher.create(rowvalsVFElt);
|
148 |
fetcher.setSelTransf(new ITransformer<SQLSelect, SQLSelect>() {
|
168 |
fetcher.setSelTransf(new ITransformer<SQLSelect, SQLSelect>() {
|
149 |
|
169 |
|
150 |
@Override
|
170 |
@Override
|
151 |
public SQLSelect transformChecked(SQLSelect input) {
|
171 |
public SQLSelect transformChecked(SQLSelect input) {
|
Line 164... |
Line 184... |
164 |
if (foreignArt.getForeign("ID_TAXE_COMPLEMENTAIRE") != null && !foreignArt.isForeignEmpty("ID_TAXE_COMPLEMENTAIRE")) {
|
184 |
if (foreignArt.getForeign("ID_TAXE_COMPLEMENTAIRE") != null && !foreignArt.isForeignEmpty("ID_TAXE_COMPLEMENTAIRE")) {
|
165 |
final SQLRowAccessor foreignTaxeCompl = foreignArt.getForeign("ID_TAXE_COMPLEMENTAIRE");
|
185 |
final SQLRowAccessor foreignTaxeCompl = foreignArt.getForeign("ID_TAXE_COMPLEMENTAIRE");
|
166 |
if (recap.containsKey(foreignTaxeCompl.getID())) {
|
186 |
if (recap.containsKey(foreignTaxeCompl.getID())) {
|
167 |
r = recap.get(foreignTaxeCompl.getID());
|
187 |
r = recap.get(foreignTaxeCompl.getID());
|
168 |
} else {
|
188 |
} else {
|
169 |
r = new TaxeComplRecap(foreignTaxeCompl.getString("CODE"), foreignTaxeCompl.getString("NOM"), foreignTaxeCompl.getBigDecimal("POURCENT"));
|
189 |
r = new TaxeComplRecap(foreignTaxeCompl);
|
170 |
recap.put(foreignTaxeCompl.getID(), r);
|
190 |
recap.put(foreignTaxeCompl.getID(), r);
|
171 |
}
|
191 |
}
|
172 |
r.cumul(sqlRowValues.getBigDecimal("QTE_UNITAIRE").multiply(new BigDecimal(sqlRowValues.getInt("QTE"))), sqlRowValues.getBigDecimal("T_PV_HT"));
|
192 |
r.cumul(sqlRowValues.getBigDecimal("QTE_UNITAIRE").multiply(new BigDecimal(sqlRowValues.getInt("QTE"))), sqlRowValues.getBigDecimal("T_PV_HT"));
|
173 |
}
|
193 |
}
|
174 |
}
|
194 |
}
|
Line 184... |
Line 204... |
184 |
BigDecimal qteTotal = BigDecimal.ZERO;
|
204 |
BigDecimal qteTotal = BigDecimal.ZERO;
|
185 |
|
205 |
|
186 |
for (TaxeComplRecap item : recap.values()) {
|
206 |
for (TaxeComplRecap item : recap.values()) {
|
187 |
Map<String, Object> vals = new HashMap<String, Object>();
|
207 |
Map<String, Object> vals = new HashMap<String, Object>();
|
188 |
|
208 |
|
- |
|
209 |
vals.put("COMPTE_NUMERO", item.getNumeroCpt());
|
- |
|
210 |
vals.put("COMPTE_PRODUIT_NUMERO", item.getNumeroCptProduit());
|
- |
|
211 |
|
189 |
vals.put("CODE", item.getCode());
|
212 |
vals.put("CODE", item.getCode());
|
190 |
vals.put("NOM", item.getNom());
|
213 |
vals.put("NOM", item.getNom());
|
191 |
vals.put("QTE", item.getQte());
|
214 |
vals.put("QTE", item.getQte());
|
192 |
vals.put("POURCENT", item.getPercentTaxe());
|
215 |
vals.put("POURCENT", item.getPercentTaxe());
|
193 |
vals.put("TOTAL_BASE", item.getTotalBaseHT());
|
216 |
vals.put("TOTAL_BASE", item.getTotalBaseHT());
|