Exportação Fiscal : ECF e RMD (issue 8120)
git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@64285 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
81a8c7fab1
commit
3165f78959
|
@ -1230,6 +1230,7 @@ public class FiscalHibernateDAO implements FiscalDAO {
|
|||
StringBuilder sb = new StringBuilder();
|
||||
sb.append(" select distinct");
|
||||
sb.append(" imp.numserie20 as ecf,");
|
||||
sb.append(" imp.numserie as numserie,");
|
||||
sb.append(" r2.datamov as datamov,");
|
||||
sb.append(" r2.cooinicial as cooinicial,");
|
||||
sb.append(" r2.coofinal as coofinal,");
|
||||
|
@ -1306,7 +1307,7 @@ public class FiscalHibernateDAO implements FiscalDAO {
|
|||
registro = new ExportacaoECFTipoCFC();
|
||||
registro.setEstabelecimento(rs.getInt("codestabelecimento"));
|
||||
registro.setDataEmissao(rs.getString("datamov"));
|
||||
registro.setNumeroIdentificacaoECF(rs.getInt("numeroidentificacao"));
|
||||
registro.setNumeroIdentificacaoECF(rs.getInt("numeroidentificacao") > 0 ? rs.getInt("numeroidentificacao") : rs.getInt("numserie"));
|
||||
registro.setEcf(rs.getString("ecf"));
|
||||
registro.setCooReducaoZ(Integer.valueOf(rs.getString("coo")));
|
||||
registro.setCooInicial(Integer.valueOf(rs.getString("cooinicial")));
|
||||
|
@ -1470,6 +1471,7 @@ public class FiscalHibernateDAO implements FiscalDAO {
|
|||
StringBuilder sb = new StringBuilder();
|
||||
sb.append(" select");
|
||||
sb.append(" r4.numserie20 as ecf,");
|
||||
sb.append(" r4.datamov as datamov,");
|
||||
sb.append(" (CASE WHEN s.aliasorigen_id IS NULL THEN co.codibge ELSE cos.codibge END) as municipio_origem,");
|
||||
sb.append(" (CASE WHEN s.aliasorigen_id IS NULL THEN eo.cveestado ELSE eos.cveestado END) as estado_origem,");
|
||||
sb.append(" (CASE WHEN s.aliasdestino_id IS NULL THEN cd.codibge ELSE cds.codibge END) as municipio_destino,");
|
||||
|
@ -1499,6 +1501,7 @@ public class FiscalHibernateDAO implements FiscalDAO {
|
|||
sb.append(" left join estado eds on eds.estado_id = cds.estado_id");
|
||||
sb.append(" left join empresa_imposto eis on eis.empresa_id = b.empresacorrida_id and eis.estado_id = eos.estado_id");
|
||||
sb.append(" where nvl(CASE WHEN s.aliasorigen_id IS NULL THEN ei.activo ELSE eis.activo END, 0) = 1 and b.activo = 1 and r4.datamov >= ? and r4.datamov <= ? and b.empresacorrida_id = ? and ((CASE WHEN s.aliasorigen_id IS NULL THEN eo.cveestado ELSE eos.cveestado END) = ?)");
|
||||
sb.append(" order by r4.numserie20, r4.datamov");
|
||||
|
||||
try {
|
||||
PreparedStatement ps = connection.prepareStatement(sb.toString());
|
||||
|
@ -1544,6 +1547,8 @@ public class FiscalHibernateDAO implements FiscalDAO {
|
|||
BigDecimal valorICMSIsento = BigDecimal.ZERO;
|
||||
BigDecimal valorICMSOutros = BigDecimal.ZERO;
|
||||
|
||||
String ecf = rs.getString("ecf");
|
||||
String datamov = rs.getString("datamov");
|
||||
String ufDestino = "";
|
||||
String ufOrigem = "";
|
||||
Integer municipioOrigem = 0;
|
||||
|
@ -1574,7 +1579,7 @@ public class FiscalHibernateDAO implements FiscalDAO {
|
|||
codigoSituacaoTribColunaB = rs.getInt("red_base_calc_icms") == 0 ? 0 : 20;
|
||||
}
|
||||
|
||||
String key = ufDestino + "|" + cfop.toString() + "|" + codigoSituacaoTribColunaB.toString();
|
||||
String key = ecf + "|" + datamov + "|" + ufDestino + "|" + cfop.toString() + "|" + codigoSituacaoTribColunaB.toString();
|
||||
|
||||
if (group.containsKey(key)) {
|
||||
registro = group.get(key);
|
||||
|
@ -1586,6 +1591,8 @@ public class FiscalHibernateDAO implements FiscalDAO {
|
|||
valorICMSOutros = valorICMSOutros.add(registro.getValorICMSOutros());
|
||||
} else {
|
||||
registro = new ExportacaoECFTipoICF();
|
||||
registro.setEcf(ecf);
|
||||
registro.setDataEmissao(datamov);
|
||||
registro.setUfDestino(ufDestino);
|
||||
registro.setCfop(cfop); // IM=5357; Serviço IE= 6357
|
||||
registro.setCodigoSituacaoTribColunaB(codigoSituacaoTribColunaB); // 00 - tributação normal; 20 - tributação com redução na base de calculo; 40 - isentos
|
||||
|
@ -1622,11 +1629,12 @@ public class FiscalHibernateDAO implements FiscalDAO {
|
|||
List<ExportacaoECFTipoPRC> retorno = new ArrayList<ExportacaoECFTipoPRC>();
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append(" select municipio_origem, estado_origem, estado_destino, red_base_calc_icms, porc_red_municipal, porc_red_estadual, tributacao_importacao, SUM(valortotal) as valortotal");
|
||||
sb.append(" select ecf, datamov, municipio_origem, estado_origem, estado_destino, red_base_calc_icms, porc_red_municipal, porc_red_estadual, tributacao_importacao, SUM(valortotal) as valortotal");
|
||||
sb.append(" from (");
|
||||
|
||||
sb.append(" select");
|
||||
sb.append(" r4.numserie20 as ecf,");
|
||||
sb.append(" r4.datamov as datamov,");
|
||||
sb.append(" (CASE WHEN s.aliasorigen_id IS NULL THEN co.codibge ELSE cos.codibge END) as municipio_origem,");
|
||||
sb.append(" (CASE WHEN s.aliasorigen_id IS NULL THEN eo.cveestado ELSE eos.cveestado END) as estado_origem,");
|
||||
sb.append(" (CASE WHEN s.aliasorigen_id IS NULL THEN ed.cveestado ELSE eds.cveestado END) as estado_destino,");
|
||||
|
@ -1655,7 +1663,7 @@ public class FiscalHibernateDAO implements FiscalDAO {
|
|||
sb.append(" left join empresa_imposto eis on eis.empresa_id = b.empresacorrida_id and eis.estado_id = eos.estado_id");
|
||||
sb.append(" where nvl(CASE WHEN s.aliasorigen_id IS NULL THEN ei.activo ELSE eis.activo END, 0) = 1 and b.activo = 1 and r4.datamov >= ? and r4.datamov <= ? and b.empresacorrida_id = ? and ((CASE WHEN s.aliasorigen_id IS NULL THEN eo.cveestado ELSE eos.cveestado END) = ?)");
|
||||
|
||||
sb.append(" ) group by municipio_origem, estado_origem, estado_destino, red_base_calc_icms, porc_red_municipal, porc_red_estadual, tributacao_importacao");
|
||||
sb.append(" ) group by ecf, datamov, municipio_origem, estado_origem, estado_destino, red_base_calc_icms, porc_red_municipal, porc_red_estadual, tributacao_importacao");
|
||||
|
||||
try {
|
||||
PreparedStatement ps = connection.prepareStatement(sb.toString());
|
||||
|
@ -1667,6 +1675,8 @@ public class FiscalHibernateDAO implements FiscalDAO {
|
|||
ResultSet rs = ps.executeQuery();
|
||||
|
||||
ExportacaoECFTipoPRC registro = null;
|
||||
|
||||
Map<String, ExportacaoECFTipoPRC> group = new HashMap<String, ExportacaoECFTipoPRC>();
|
||||
|
||||
while (rs.next()) {
|
||||
BigDecimal valorTotal = BigDecimal.valueOf(Double.valueOf(rs.getString("valortotal")) / 100);
|
||||
|
@ -1697,16 +1707,33 @@ public class FiscalHibernateDAO implements FiscalDAO {
|
|||
|
||||
BigDecimal valorICMS = (tributacao_importacao == null ? BigDecimal.ZERO : valorBaseCalculoICMS.multiply(tributacao_importacao));
|
||||
|
||||
registro = new ExportacaoECFTipoPRC();
|
||||
registro.setUfOrigem(rs.getString("estado_origem"));
|
||||
registro.setMunicipioOrigem(Integer.valueOf(rs.getString("municipio_origem")));
|
||||
registro.setValorTotal(valorTotal);
|
||||
registro.setValorBaseCalculoICMS(valorBaseCalculoICMS);
|
||||
registro.setValorICMS(valorICMS);
|
||||
String key = rs.getString("ecf") + "|" + rs.getString("datamov") + "|" + rs.getString("estado_origem") + "|" + rs.getString("municipio_origem");
|
||||
|
||||
retorno.add(registro);
|
||||
if (group.containsKey(key)) {
|
||||
registro = group.get(key);
|
||||
|
||||
registro.setValorTotal(registro.getValorTotal().add(valorTotal));
|
||||
registro.setValorBaseCalculoICMS(registro.getValorBaseCalculoICMS().add(valorBaseCalculoICMS));
|
||||
registro.setValorICMS(registro.getValorICMS().add(valorICMS));
|
||||
|
||||
} else {
|
||||
registro = new ExportacaoECFTipoPRC();
|
||||
registro.setEcf(rs.getString("ecf"));
|
||||
registro.setDataEmissao(rs.getString("datamov"));
|
||||
registro.setUfOrigem(rs.getString("estado_origem"));
|
||||
registro.setMunicipioOrigem(Integer.valueOf(rs.getString("municipio_origem")));
|
||||
registro.setValorTotal(valorTotal);
|
||||
registro.setValorBaseCalculoICMS(valorBaseCalculoICMS);
|
||||
registro.setValorICMS(valorICMS);
|
||||
}
|
||||
|
||||
group.put(key, registro);
|
||||
}
|
||||
|
||||
|
||||
for (Map.Entry<String, ExportacaoECFTipoPRC> entry : group.entrySet()) {
|
||||
retorno.add(entry.getValue());
|
||||
}
|
||||
|
||||
rs.close();
|
||||
ps.close();
|
||||
|
||||
|
|
|
@ -53,9 +53,9 @@ public class ExportacaoFiscal {
|
|||
adicionarRegistroECFTipoCAB(writer, dataInicial, dataFinal, nomeEmpresa);
|
||||
// adicionarRegistroECFTipoCFC(writer, listaRegistroECFTipoCFC);
|
||||
// adicionarRegistroECFTipoCCF(writer, listaRegistroECFTipoCCF);
|
||||
adicionarRegistroECFTipoCFC_CCF(writer, listaRegistroECFTipoCFC, listaRegistroECFTipoCCF);
|
||||
adicionarRegistroECFTipoICF(writer, listaRegistroECFTipoICF);
|
||||
adicionarRegistroECFTipoPRC(writer, listaRegistroECFTipoPRC);
|
||||
// adicionarRegistroECFTipoICF(writer, listaRegistroECFTipoICF);
|
||||
// adicionarRegistroECFTipoPRC(writer, listaRegistroECFTipoPRC);
|
||||
adicionarRegistroECF(writer, listaRegistroECFTipoCFC, listaRegistroECFTipoCCF, listaRegistroECFTipoICF, listaRegistroECFTipoPRC);
|
||||
|
||||
writer.close();
|
||||
|
||||
|
@ -83,43 +83,104 @@ public class ExportacaoFiscal {
|
|||
writer.print(sb.toString() + UtiliteriasFiscal.QUEBRA_LINHA);
|
||||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
private void adicionarRegistroECFTipoCFC(PrintWriter writer, final List<ExportacaoECFTipoCFC> listaRegistroECFTipoCFC) {
|
||||
for (ExportacaoECFTipoCFC registro : listaRegistroECFTipoCFC) {
|
||||
adicionarLinhaCFC(writer, registro);
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
private void adicionarRegistroECFTipoCCF(PrintWriter writer, final List<ExportacaoECFTipoCCF> listaRegistroECFTipoCCF) {
|
||||
for (ExportacaoECFTipoCCF registro : listaRegistroECFTipoCCF) {
|
||||
adicionarLinhaCCF(writer, registro);
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
private void adicionarRegistroECFTipoICF(PrintWriter writer, final List<ExportacaoECFTipoICF> listaRegistroECFTipoICF) {
|
||||
for (ExportacaoECFTipoICF registro : listaRegistroECFTipoICF) {
|
||||
adicionarLinhaICF(writer, registro);
|
||||
}
|
||||
}
|
||||
|
||||
private void adicionarRegistroECFTipoCFC_CCF(PrintWriter writer, final List<ExportacaoECFTipoCFC> listaRegistroECFTipoCFC, final List<ExportacaoECFTipoCCF> listaRegistroECFTipoCCF) {
|
||||
@SuppressWarnings("unused")
|
||||
private void adicionarRegistroECFTipoPRC(PrintWriter writer, final List<ExportacaoECFTipoPRC> listaRegistroECFTipoPRC) {
|
||||
for (ExportacaoECFTipoPRC registro : listaRegistroECFTipoPRC) {
|
||||
adicionarLinhaPRC(writer, registro);
|
||||
}
|
||||
}
|
||||
|
||||
private void adicionarRegistroECF(PrintWriter writer, final List<ExportacaoECFTipoCFC> listaRegistroECFTipoCFC, final List<ExportacaoECFTipoCCF> listaRegistroECFTipoCCF,
|
||||
List<ExportacaoECFTipoICF> listaRegistroECFTipoICF, List<ExportacaoECFTipoPRC> listaRegistroECFTipoPRC) {
|
||||
Map<String, List<ExportacaoECFTipoCCF>> groupCCF = new HashMap<String, List<ExportacaoECFTipoCCF>>();
|
||||
Map<String, List<ExportacaoECFTipoICF>> groupICF = new HashMap<String, List<ExportacaoECFTipoICF>>();
|
||||
Map<String, List<ExportacaoECFTipoPRC>> groupPRC = new HashMap<String, List<ExportacaoECFTipoPRC>>();
|
||||
|
||||
List<ExportacaoECFTipoCCF> itens = new ArrayList<ExportacaoECFTipoCCF>();
|
||||
List<ExportacaoECFTipoCCF> itensCCF = new ArrayList<ExportacaoECFTipoCCF>();
|
||||
List<ExportacaoECFTipoICF> itensICF = new ArrayList<ExportacaoECFTipoICF>();
|
||||
List<ExportacaoECFTipoPRC> itensPRC = new ArrayList<ExportacaoECFTipoPRC>();
|
||||
|
||||
for (ExportacaoECFTipoCCF registro : listaRegistroECFTipoCCF) {
|
||||
itens = new ArrayList<ExportacaoECFTipoCCF>();
|
||||
itensCCF = new ArrayList<ExportacaoECFTipoCCF>();
|
||||
|
||||
if (groupCCF.containsKey(registro.getEcf() + "|" + registro.getDataEmissao())) {
|
||||
itens.addAll(groupCCF.get(registro.getEcf() + "|" + registro.getDataEmissao()));
|
||||
itensCCF.addAll(groupCCF.get(registro.getEcf() + "|" + registro.getDataEmissao()));
|
||||
}
|
||||
|
||||
itens.add(registro);
|
||||
itensCCF.add(registro);
|
||||
|
||||
groupCCF.put(registro.getEcf() + "|" + registro.getDataEmissao(), itens);
|
||||
groupCCF.put(registro.getEcf() + "|" + registro.getDataEmissao(), itensCCF);
|
||||
}
|
||||
|
||||
for (ExportacaoECFTipoICF registro : listaRegistroECFTipoICF) {
|
||||
itensICF = new ArrayList<ExportacaoECFTipoICF>();
|
||||
|
||||
if (groupICF.containsKey(registro.getEcf() + "|" + registro.getDataEmissao())) {
|
||||
itensICF.addAll(groupICF.get(registro.getEcf() + "|" + registro.getDataEmissao()));
|
||||
}
|
||||
|
||||
itensICF.add(registro);
|
||||
|
||||
groupICF.put(registro.getEcf() + "|" + registro.getDataEmissao(), itensICF);
|
||||
}
|
||||
|
||||
for (ExportacaoECFTipoPRC registro : listaRegistroECFTipoPRC) {
|
||||
itensPRC = new ArrayList<ExportacaoECFTipoPRC>();
|
||||
|
||||
if (groupPRC.containsKey(registro.getEcf() + "|" + registro.getDataEmissao())) {
|
||||
itensPRC.addAll(groupPRC.get(registro.getEcf() + "|" + registro.getDataEmissao()));
|
||||
}
|
||||
|
||||
itensPRC.add(registro);
|
||||
|
||||
groupPRC.put(registro.getEcf() + "|" + registro.getDataEmissao(), itensPRC);
|
||||
}
|
||||
|
||||
for (ExportacaoECFTipoCFC registro : listaRegistroECFTipoCFC) {
|
||||
adicionarLinhaCFC(writer, registro);
|
||||
|
||||
itens = groupCCF.get(registro.getEcf() + "|" + registro.getDataEmissao());
|
||||
itensCCF = groupCCF.get(registro.getEcf() + "|" + registro.getDataEmissao());
|
||||
|
||||
if (itens != null) {
|
||||
for (ExportacaoECFTipoCCF item : itens) {
|
||||
adicionarLinhaCCF(writer, item);
|
||||
if (itensCCF != null) {
|
||||
for (ExportacaoECFTipoCCF itemCCF : itensCCF) {
|
||||
adicionarLinhaCCF(writer, itemCCF);
|
||||
}
|
||||
}
|
||||
|
||||
itensICF = groupICF.get(registro.getEcf() + "|" + registro.getDataEmissao());
|
||||
|
||||
if (itensICF != null) {
|
||||
for (ExportacaoECFTipoICF itemICF : itensICF) {
|
||||
adicionarLinhaICF(writer, itemICF);
|
||||
}
|
||||
}
|
||||
|
||||
itensPRC = groupPRC.get(registro.getEcf() + "|" + registro.getDataEmissao());
|
||||
|
||||
if (itensPRC != null) {
|
||||
for (ExportacaoECFTipoPRC itemPRC : itensPRC) {
|
||||
adicionarLinhaPRC(writer, itemPRC);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -229,66 +290,62 @@ public class ExportacaoFiscal {
|
|||
writer.print(sb.toString() + UtiliteriasFiscal.QUEBRA_LINHA);
|
||||
}
|
||||
|
||||
private void adicionarRegistroECFTipoICF(PrintWriter writer, final List<ExportacaoECFTipoICF> listaRegistroECFTipoICF) {
|
||||
for (ExportacaoECFTipoICF registro : listaRegistroECFTipoICF) {
|
||||
BigDecimal valorTotal = registro.getValorTotal();
|
||||
String ufDestino = registro.getUfDestino();
|
||||
Integer cfop = registro.getCfop(); // IM=5357; Serviço IE= 6357
|
||||
BigDecimal valorBaseCalculoICMS = registro.getValorBaseCalculoICMS();
|
||||
BigDecimal aliquotaICMS = registro.getAliquotaICMS();
|
||||
BigDecimal valorICMSDebitado = registro.getValorICMSDebitado();
|
||||
BigDecimal valorICMSIsento = registro.getValorICMSIsento();
|
||||
BigDecimal valorICMSOutros = registro.getValorICMSOutros();
|
||||
Integer codigoSituacaoTribColunaB = registro.getCodigoSituacaoTribColunaB(); // 00 - tributação normal; 20 - tributação com redução na base de calculo; 40 - isentos
|
||||
String ufOrigem = registro.getUfOrigem();
|
||||
Integer municipioOrigem = registro.getMunicipioOrigem();
|
||||
private void adicionarLinhaICF(PrintWriter writer, ExportacaoECFTipoICF item) {
|
||||
BigDecimal valorTotal = item.getValorTotal();
|
||||
String ufDestino = item.getUfDestino();
|
||||
Integer cfop = item.getCfop(); // IM=5357; Serviço IE= 6357
|
||||
BigDecimal valorBaseCalculoICMS = item.getValorBaseCalculoICMS();
|
||||
BigDecimal aliquotaICMS = item.getAliquotaICMS();
|
||||
BigDecimal valorICMSDebitado = item.getValorICMSDebitado();
|
||||
BigDecimal valorICMSIsento = item.getValorICMSIsento();
|
||||
BigDecimal valorICMSOutros = item.getValorICMSOutros();
|
||||
Integer codigoSituacaoTribColunaB = item.getCodigoSituacaoTribColunaB(); // 00 - tributação normal; 20 - tributação com redução na base de calculo; 40 - isentos
|
||||
String ufOrigem = item.getUfOrigem();
|
||||
Integer municipioOrigem = item.getMunicipioOrigem();
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append("ICF").append(SEPARADOR);
|
||||
sb.append(formataValor(valorTotal, 15)).append(SEPARADOR);
|
||||
sb.append(formataCaracter(ufDestino, true, 2)).append(SEPARADOR);
|
||||
sb.append(formataNumerico(cfop, true, 4)).append(SEPARADOR);
|
||||
sb.append(formataValor(valorBaseCalculoICMS, 15)).append(SEPARADOR);
|
||||
sb.append(formataValor(aliquotaICMS, 5)).append(SEPARADOR);
|
||||
sb.append(formataValor(valorICMSDebitado, 15)).append(SEPARADOR);
|
||||
sb.append(formataValor(valorICMSIsento, 15)).append(SEPARADOR);
|
||||
sb.append(formataValor(valorICMSOutros, 15)).append(SEPARADOR);
|
||||
sb.append("N").append(SEPARADOR);
|
||||
sb.append("N").append(SEPARADOR);
|
||||
sb.append("N").append(SEPARADOR);
|
||||
sb.append("0").append(SEPARADOR);
|
||||
sb.append(formataNumerico(codigoSituacaoTribColunaB, true, 2)).append(SEPARADOR);
|
||||
sb.append(formataCaracter(VAZIO, false, 1)).append(SEPARADOR); // Posição 15
|
||||
sb.append(formataCaracter(VAZIO, false, 3)).append(SEPARADOR); // Posição 16
|
||||
sb.append("N").append(SEPARADOR);
|
||||
sb.append("N").append(SEPARADOR);
|
||||
sb.append(formataCaracter(ufOrigem, true, 2)).append(SEPARADOR);
|
||||
sb.append(formataNumerico(municipioOrigem, true, 5));
|
||||
|
||||
writer.print(sb.toString() + UtiliteriasFiscal.QUEBRA_LINHA);
|
||||
}
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append("ICF").append(SEPARADOR);
|
||||
sb.append(formataValor(valorTotal, 15)).append(SEPARADOR);
|
||||
sb.append(formataCaracter(ufDestino, true, 2)).append(SEPARADOR);
|
||||
sb.append(formataNumerico(cfop, true, 4)).append(SEPARADOR);
|
||||
sb.append(formataValor(valorBaseCalculoICMS, 15)).append(SEPARADOR);
|
||||
sb.append(formataValor(aliquotaICMS, 5)).append(SEPARADOR);
|
||||
sb.append(formataValor(valorICMSDebitado, 15)).append(SEPARADOR);
|
||||
sb.append(formataValor(valorICMSIsento, 15)).append(SEPARADOR);
|
||||
sb.append(formataValor(valorICMSOutros, 15)).append(SEPARADOR);
|
||||
sb.append("N").append(SEPARADOR);
|
||||
sb.append("N").append(SEPARADOR);
|
||||
sb.append("N").append(SEPARADOR);
|
||||
sb.append("0").append(SEPARADOR);
|
||||
sb.append(formataNumerico(codigoSituacaoTribColunaB, true, 2)).append(SEPARADOR);
|
||||
sb.append(formataCaracter(VAZIO, false, 1)).append(SEPARADOR); // Posição 15
|
||||
sb.append(formataCaracter(VAZIO, false, 3)).append(SEPARADOR); // Posição 16
|
||||
sb.append("N").append(SEPARADOR);
|
||||
sb.append("N").append(SEPARADOR);
|
||||
sb.append(formataCaracter(ufOrigem, true, 2)).append(SEPARADOR);
|
||||
sb.append(formataNumerico(municipioOrigem, true, 5));
|
||||
|
||||
writer.print(sb.toString() + UtiliteriasFiscal.QUEBRA_LINHA);
|
||||
}
|
||||
|
||||
private void adicionarRegistroECFTipoPRC(PrintWriter writer, final List<ExportacaoECFTipoPRC> listaRegistroECFTipoPRC) {
|
||||
for (ExportacaoECFTipoPRC registro : listaRegistroECFTipoPRC) {
|
||||
String ufOrigem = registro.getUfOrigem();
|
||||
Integer municipioOrigem = registro.getMunicipioOrigem();
|
||||
BigDecimal valorTotal = registro.getValorTotal();
|
||||
BigDecimal valorBaseCalculoICMS = registro.getValorBaseCalculoICMS();
|
||||
BigDecimal valorICMS = registro.getValorICMS();
|
||||
private void adicionarLinhaPRC(PrintWriter writer, ExportacaoECFTipoPRC item) {
|
||||
String ufOrigem = item.getUfOrigem();
|
||||
Integer municipioOrigem = item.getMunicipioOrigem();
|
||||
BigDecimal valorTotal = item.getValorTotal();
|
||||
BigDecimal valorBaseCalculoICMS = item.getValorBaseCalculoICMS();
|
||||
BigDecimal valorICMS = item.getValorICMS();
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append("PRC").append(SEPARADOR);
|
||||
sb.append(formataCaracter(ufOrigem, true, 2)).append(SEPARADOR);
|
||||
sb.append(formataNumerico(municipioOrigem, true, 5)).append(SEPARADOR);
|
||||
sb.append(formataValor(valorTotal, 15)).append(SEPARADOR);
|
||||
sb.append(formataValor(valorBaseCalculoICMS, 15)).append(SEPARADOR);
|
||||
sb.append(formataValor(valorICMS, 15));
|
||||
|
||||
writer.print(sb.toString() + UtiliteriasFiscal.QUEBRA_LINHA);
|
||||
}
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append("PRC").append(SEPARADOR);
|
||||
sb.append(formataCaracter(ufOrigem, true, 2)).append(SEPARADOR);
|
||||
sb.append(formataNumerico(municipioOrigem, true, 5)).append(SEPARADOR);
|
||||
sb.append(formataValor(valorTotal, 15)).append(SEPARADOR);
|
||||
sb.append(formataValor(valorBaseCalculoICMS, 15)).append(SEPARADOR);
|
||||
sb.append(formataValor(valorICMS, 15));
|
||||
|
||||
writer.print(sb.toString() + UtiliteriasFiscal.QUEBRA_LINHA);
|
||||
}
|
||||
|
||||
|
||||
public File gerarArquivoRMD(final Date dataInicial, final Date dataFinal, final String nomeEmpresa, List<ExportacaoRMDTipoPAR> listaRegistroRMDTipoPAR,
|
||||
List<ExportacaoRMDTipoRMD> listaRegistroRMDTipoRMD, List<ExportacaoRMDTipoBPS> listaRegistroRMDTipoBPS, List<ExportacaoRMDTipoDBP> listaRegistroRMDTipoDBP) {
|
||||
try {
|
||||
|
|
|
@ -14,6 +14,8 @@ public class ExportacaoECFTipoICF {
|
|||
private Integer codigoSituacaoTribColunaB; // 00 - tributação normal; 20 - tributação com redução na base de calculo; 40 - isentos
|
||||
private String ufOrigem;
|
||||
private Integer municipioOrigem;
|
||||
private String ecf;
|
||||
private String dataEmissao;
|
||||
|
||||
public ExportacaoECFTipoICF() {
|
||||
|
||||
|
@ -107,8 +109,24 @@ public class ExportacaoECFTipoICF {
|
|||
this.municipioOrigem = municipioOrigem;
|
||||
}
|
||||
|
||||
public String getEcf() {
|
||||
return ecf;
|
||||
}
|
||||
|
||||
public void setEcf(String ecf) {
|
||||
this.ecf = ecf;
|
||||
}
|
||||
|
||||
public String getDataEmissao() {
|
||||
return dataEmissao;
|
||||
}
|
||||
|
||||
public void setDataEmissao(String dataEmissao) {
|
||||
this.dataEmissao = dataEmissao;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "ExportacaoECFTipoICF [valorTotal=" + valorTotal + ", ufDestino=" + ufDestino + ", cfop=" + cfop + ", valorBaseCalculoICMS=" + valorBaseCalculoICMS + ", aliquotaICMS=" + aliquotaICMS + ", valorICMSDebitado=" + valorICMSDebitado + ", valorICMSIsento=" + valorICMSIsento + ", valorICMSOutros=" + valorICMSOutros + ", codigoSituacaoTribColunaB=" + codigoSituacaoTribColunaB + ", ufOrigem=" + ufOrigem + ", municipioOrigem=" + municipioOrigem + "]";
|
||||
return "ExportacaoECFTipoICF [valorTotal=" + valorTotal + ", ufDestino=" + ufDestino + ", cfop=" + cfop + ", valorBaseCalculoICMS=" + valorBaseCalculoICMS + ", aliquotaICMS=" + aliquotaICMS + ", valorICMSDebitado=" + valorICMSDebitado + ", valorICMSIsento=" + valorICMSIsento + ", valorICMSOutros=" + valorICMSOutros + ", codigoSituacaoTribColunaB=" + codigoSituacaoTribColunaB + ", ufOrigem=" + ufOrigem + ", municipioOrigem=" + municipioOrigem + ", ecf=" + ecf + ", dataEmissao=" + dataEmissao + "]";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -8,6 +8,8 @@ public class ExportacaoECFTipoPRC {
|
|||
private BigDecimal valorTotal;
|
||||
private BigDecimal valorBaseCalculoICMS;
|
||||
private BigDecimal valorICMS;
|
||||
private String ecf;
|
||||
private String dataEmissao;
|
||||
|
||||
public ExportacaoECFTipoPRC() {
|
||||
|
||||
|
@ -57,4 +59,20 @@ public class ExportacaoECFTipoPRC {
|
|||
public String toString() {
|
||||
return "ExportacaoECFTipoPRC [ufOrigem=" + ufOrigem + ", municipioOrigem=" + municipioOrigem + ", valorTotal=" + valorTotal + ", valorBaseCalculoICMS=" + valorBaseCalculoICMS + ", valorICMS=" + valorICMS + "]";
|
||||
}
|
||||
|
||||
public String getEcf() {
|
||||
return ecf;
|
||||
}
|
||||
|
||||
public void setEcf(String ecf) {
|
||||
this.ecf = ecf;
|
||||
}
|
||||
|
||||
public String getDataEmissao() {
|
||||
return dataEmissao;
|
||||
}
|
||||
|
||||
public void setDataEmissao(String dataEmissao) {
|
||||
this.dataEmissao = dataEmissao;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue