Exportação Fiscal : ECF e RMD (issue 8120)

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@72815 d1611594-4594-4d17-8e1d-87c2c4800839
master
alberto 2017-08-22 21:40:58 +00:00
parent d94fbe3019
commit ef7df61671
3 changed files with 18 additions and 9 deletions

View File

@ -1445,7 +1445,7 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO
sb.append(" and c.feccreacion >= to_date(?,'DD/MM/YYYY HH24:MI:SS') and c.feccreacion <= to_date(?,'DD/MM/YYYY HH24:MI:SS')"); sb.append(" and c.feccreacion >= to_date(?,'DD/MM/YYYY HH24:MI:SS') and c.feccreacion <= to_date(?,'DD/MM/YYYY HH24:MI:SS')");
sb.append(" and c.empresacorrida_id = ?"); sb.append(" and c.empresacorrida_id = ?");
sb.append(" and ((case when s.aliasorigen_id is null then eo.cveestado else eos.cveestado end) = ?)"); sb.append(" and ((case when s.aliasorigen_id is null then eo.cveestado else eos.cveestado end) = ?)");
// sb.append(" and r2.numserie20 = 'BE091410100011238940'"); sb.append(" and r2.numserie20 = 'BE091410100011220387'");
try { try {
PreparedStatement ps = connection.prepareStatement(sb.toString()); PreparedStatement ps = connection.prepareStatement(sb.toString());

View File

@ -44,7 +44,7 @@ public class MoneyHelper {
BigDecimal fAmountOne = value == null ? BigDecimal.ZERO:arredondar(value); BigDecimal fAmountOne = value == null ? BigDecimal.ZERO:arredondar(value);
total = total.add(fAmountOne); total = total.add(fAmountOne);
} }
return total; return total.setScale(DECIMALS, ROUNDING_MODE);
} }
public static BigDecimal somar(int customScale, BigDecimal ... aAmount) { public static BigDecimal somar(int customScale, BigDecimal ... aAmount) {
@ -53,35 +53,35 @@ public class MoneyHelper {
BigDecimal fAmountOne = value == null ? BigDecimal.ZERO:arredondar(value, customScale); BigDecimal fAmountOne = value == null ? BigDecimal.ZERO:arredondar(value, customScale);
total = total.add(fAmountOne); total = total.add(fAmountOne);
} }
return total; return total.setScale(DECIMALS, ROUNDING_MODE);
} }
public static BigDecimal somar(BigDecimal aAmountOne, BigDecimal aAmountTwo) { public static BigDecimal somar(BigDecimal aAmountOne, BigDecimal aAmountTwo) {
BigDecimal fAmountOne = aAmountOne == null ? BigDecimal.ZERO:arredondar(aAmountOne); BigDecimal fAmountOne = aAmountOne == null ? BigDecimal.ZERO:arredondar(aAmountOne);
BigDecimal fAmountTwo =aAmountTwo == null ? BigDecimal.ZERO: arredondar(aAmountTwo); BigDecimal fAmountTwo =aAmountTwo == null ? BigDecimal.ZERO: arredondar(aAmountTwo);
return fAmountOne.add(fAmountTwo); return fAmountOne.add(fAmountTwo).setScale(DECIMALS, ROUNDING_MODE);
} }
public static BigDecimal somar(BigDecimal aAmountOne, BigDecimal aAmountTwo, int customScale) { public static BigDecimal somar(BigDecimal aAmountOne, BigDecimal aAmountTwo, int customScale) {
BigDecimal fAmountOne = aAmountOne == null ? BigDecimal.ZERO:arredondar(aAmountOne, customScale); BigDecimal fAmountOne = aAmountOne == null ? BigDecimal.ZERO:arredondar(aAmountOne, customScale);
BigDecimal fAmountTwo =aAmountTwo == null ? BigDecimal.ZERO: arredondar(aAmountTwo, customScale); BigDecimal fAmountTwo =aAmountTwo == null ? BigDecimal.ZERO: arredondar(aAmountTwo, customScale);
return fAmountOne.add(fAmountTwo); return fAmountOne.add(fAmountTwo).setScale(DECIMALS, ROUNDING_MODE);
} }
public static BigDecimal subtrair(BigDecimal aAmountOne, BigDecimal aAmountTwo) { public static BigDecimal subtrair(BigDecimal aAmountOne, BigDecimal aAmountTwo) {
BigDecimal fAmountOne = arredondar(aAmountOne); BigDecimal fAmountOne = arredondar(aAmountOne);
BigDecimal fAmountTwo = arredondar(aAmountTwo); BigDecimal fAmountTwo = arredondar(aAmountTwo);
return fAmountOne.subtract(fAmountTwo); return fAmountOne.subtract(fAmountTwo).setScale(DECIMALS, ROUNDING_MODE);
} }
public static BigDecimal subtrair(BigDecimal aAmountOne, BigDecimal aAmountTwo, int customScale) { public static BigDecimal subtrair(BigDecimal aAmountOne, BigDecimal aAmountTwo, int customScale) {
BigDecimal fAmountOne = arredondar(aAmountOne, customScale); BigDecimal fAmountOne = arredondar(aAmountOne, customScale);
BigDecimal fAmountTwo = arredondar(aAmountTwo, customScale); BigDecimal fAmountTwo = arredondar(aAmountTwo, customScale);
return fAmountOne.subtract(fAmountTwo); return fAmountOne.subtract(fAmountTwo).setScale(DECIMALS, ROUNDING_MODE);
} }
public static BigDecimal dividir(BigDecimal aAmount, BigDecimal aDivisor) { public static BigDecimal dividir(BigDecimal aAmount, BigDecimal aDivisor) {
@ -102,14 +102,14 @@ public class MoneyHelper {
BigDecimal fAmount = arredondar(aAmount); BigDecimal fAmount = arredondar(aAmount);
BigDecimal fMultiplicand = arredondar(aMultiplicand); BigDecimal fMultiplicand = arredondar(aMultiplicand);
return fAmount.multiply(fMultiplicand, new MathContext(ROUNDING_MODE)); return fAmount.multiply(fMultiplicand, new MathContext(ROUNDING_MODE)).setScale(DECIMALS, ROUNDING_MODE);
} }
public static BigDecimal multiplicar(BigDecimal aAmount, BigDecimal aMultiplicand, int customScale) { public static BigDecimal multiplicar(BigDecimal aAmount, BigDecimal aMultiplicand, int customScale) {
BigDecimal fAmount = arredondar(aAmount, customScale); BigDecimal fAmount = arredondar(aAmount, customScale);
BigDecimal fMultiplicand = arredondar(aMultiplicand, customScale); BigDecimal fMultiplicand = arredondar(aMultiplicand, customScale);
return fAmount.multiply(fMultiplicand, new MathContext(ROUNDING_MODE)); return fAmount.multiply(fMultiplicand, new MathContext(ROUNDING_MODE)).setScale(DECIMALS, ROUNDING_MODE);
} }
public static BigDecimal arredondar(BigDecimal aNumber) { public static BigDecimal arredondar(BigDecimal aNumber) {

View File

@ -323,6 +323,15 @@ public class ExportacaoECF {
} }
for (Map.Entry<String, ExportacaoECFTipoICF> entry : group.entrySet()) { for (Map.Entry<String, ExportacaoECFTipoICF> entry : group.entrySet()) {
if (entry.getValue().getAliquotaICMS() != null && entry.getValue().getValorBaseCalculoICMS() != null) {
BigDecimal valorICMSDebitado = BigDecimal.ZERO;
BigDecimal aTributacao_importacao = MoneyHelper.dividir(entry.getValue().getAliquotaICMS(), BigDecimal.valueOf(100d));
valorICMSDebitado = MoneyHelper.multiplicar(entry.getValue().getValorBaseCalculoICMS(), aTributacao_importacao);
entry.getValue().setValorICMSDebitado(valorICMSDebitado);
}
listaRegistroECFTipoICF.add(entry.getValue()); listaRegistroECFTipoICF.add(entry.getValue());
} }