julio 2017-10-19 19:34:29 +00:00
parent bbf17ce272
commit 1b02002f60
2 changed files with 25 additions and 18 deletions

View File

@ -4105,7 +4105,7 @@ public class FiscalHibernateDAO extends HibernateDaoSupport implements FiscalDAO
cp = det.getPorcRedMunicipal() == null ? BigDecimal.ZERO : det.getPorcRedMunicipal(); cp = det.getPorcRedMunicipal() == null ? BigDecimal.ZERO : det.getPorcRedMunicipal();
} }
rbc = det.getRedBaseCalcIcms() == null ? cp.divide(UtiliteriasFiscal.CEM) : det.getRedBaseCalcIcms().divide(UtiliteriasFiscal.CEM); rbc = det.getRedBaseCalcIcms() == null ? BigDecimal.ZERO : det.getRedBaseCalcIcms().divide(UtiliteriasFiscal.CEM);
BigDecimal redutor = passagem.multiply(rbc); BigDecimal redutor = passagem.multiply(rbc);
baseCalculo = passagem.subtract(redutor); baseCalculo = passagem.subtract(redutor);
icms = baseCalculo.multiply(aliquota.divide(BigDecimal.TEN.multiply(BigDecimal.TEN))); icms = baseCalculo.multiply(aliquota.divide(BigDecimal.TEN.multiply(BigDecimal.TEN)));

View File

@ -363,17 +363,23 @@ public class ExportacaoFiscal {
} }
private void adicionarLinhaICF(PrintWriter writer, ExportacaoECFTipoICF item, BigDecimal valorBaseCalculoICMS) { private void adicionarLinhaICF(PrintWriter writer, ExportacaoECFTipoICF item, BigDecimal valorBaseCalculoICMS) {
BigDecimal valorTotal = item.getValorTotal(); BigDecimal valorTotal = item.getValorTotal();
String ufDestino = item.getUfDestino(); String ufDestino = item.getUfDestino();
Integer cfop = item.getCfop(); // IM=5357; Serviço IE= 6357 Integer cfop = item.getCfop(); // IM=5357; Serviço IE= 6357
// BigDecimal valorBaseCalculoICMS = item.getValorBaseCalculoICMS(); // BigDecimal valorBaseCalculoICMS = item.getValorBaseCalculoICMS();
BigDecimal aliquotaICMS = item.getAliquotaICMS(); BigDecimal aliquotaICMS = item.getAliquotaICMS();
BigDecimal valorICMSDebitado = item.getValorICMSDebitado(); BigDecimal valorICMSIsento = item.getValorICMSIsento();
BigDecimal valorICMSIsento = item.getValorICMSIsento(); // BigDecimal valorICMSOutros = item.getValorICMSOutros();
// BigDecimal valorICMSOutros = item.getValorICMSOutros();
// BigDecimal valorICMSDebitado = item.getValorICMSDebitado();
BigDecimal difValorTotalICMS = valorTotal.subtract(valorBaseCalculoICMS); BigDecimal valorICMSDebitado = BigDecimal.ZERO;
if (item.getAliquotaICMS() != null) {
BigDecimal aTributacao_importacao = MoneyHelper.dividir(item.getAliquotaICMS(), BigDecimal.valueOf(100d));
valorICMSDebitado = MoneyHelper.multiplicar(valorBaseCalculoICMS, aTributacao_importacao);
}
BigDecimal difValorTotalICMS = valorTotal.subtract(valorBaseCalculoICMS);
Integer codigoSituacaoTribColunaB = item.getCodigoSituacaoTribColunaB(); // 00 - tributação normal; 20 - tributação com redução na base de calculo; 40 - isentos Integer codigoSituacaoTribColunaB = item.getCodigoSituacaoTribColunaB(); // 00 - tributação normal; 20 - tributação com redução na base de calculo; 40 - isentos
String ufOrigem = item.getUfOrigem(); String ufOrigem = item.getUfOrigem();
String municipioOrigem = item.getMunicipioOrigem() == null ? null : item.getMunicipioOrigem().toString(); String municipioOrigem = item.getMunicipioOrigem() == null ? null : item.getMunicipioOrigem().toString();
@ -381,7 +387,7 @@ public class ExportacaoFiscal {
if (municipioOrigem != null && municipioOrigem.length() > 5) { if (municipioOrigem != null && municipioOrigem.length() > 5) {
municipioOrigem = municipioOrigem.substring(municipioOrigem.length() - 5, municipioOrigem.length()); municipioOrigem = municipioOrigem.substring(municipioOrigem.length() - 5, municipioOrigem.length());
} }
if (item.getRedutorBaseCalculoIcms() == null) { if (item.getRedutorBaseCalculoIcms() == null) {
valorBaseCalculoICMS = valorTotal; valorBaseCalculoICMS = valorTotal;
} }
@ -414,18 +420,19 @@ public class ExportacaoFiscal {
private void adicionarLinhaPRC(PrintWriter writer, ExportacaoECFTipoPRC item, Map<Integer, BigDecimal> totalBaseCalculoICMS) { private void adicionarLinhaPRC(PrintWriter writer, ExportacaoECFTipoPRC item, Map<Integer, BigDecimal> totalBaseCalculoICMS) {
String ufOrigem = item.getUfOrigem(); String ufOrigem = item.getUfOrigem();
String municipioOrigem = item.getMunicipioOrigem() == null ? null : item.getMunicipioOrigem().toString(); String municipioOrigem = item.getMunicipioOrigem() == null ? null : item.getMunicipioOrigem().toString();
BigDecimal valorTotal = item.getValorTotal(); BigDecimal valorTotal = item.getValorTotal();
BigDecimal valorBaseCalculoICMS = totalBaseCalculoICMS.containsKey(item.getMunicipioOrigem()) ? totalBaseCalculoICMS.get(item.getMunicipioOrigem()) : item.getValorBaseCalculoICMS(); BigDecimal valorBaseCalculoICMS = totalBaseCalculoICMS.containsKey(item.getMunicipioOrigem()) ? totalBaseCalculoICMS.get(item.getMunicipioOrigem()) : item.getValorBaseCalculoICMS();
BigDecimal valorICMS = item.getValorICMS(); BigDecimal valorICMS = BigDecimal.ZERO;
// BigDecimal valorICMS = item.getValorICMS();
if (municipioOrigem != null && municipioOrigem.length() > 5) { if (municipioOrigem != null && municipioOrigem.length() > 5) {
municipioOrigem = municipioOrigem.substring(municipioOrigem.length() - 5, municipioOrigem.length()); municipioOrigem = municipioOrigem.substring(municipioOrigem.length() - 5, municipioOrigem.length());
} }
// if (item.getTributacao() != null && item.getTributacao().compareTo(BigDecimal.ZERO) > 0) { if (item.getTributacao() != null && item.getTributacao().compareTo(BigDecimal.ZERO) > 0) {
// valorICMS = MoneyHelper.multiplicar(valorBaseCalculoICMS, item.getTributacao()); valorICMS = MoneyHelper.multiplicar(valorBaseCalculoICMS, item.getTributacao());
// } }
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();
sb.append("PRC").append(SEPARADOR); sb.append("PRC").append(SEPARADOR);
sb.append(formataCaracter(ufOrigem, true, 2)).append(SEPARADOR); sb.append(formataCaracter(ufOrigem, true, 2)).append(SEPARADOR);