bug #7500
git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@56516 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
e274d8d8c0
commit
10083c58f2
|
@ -410,6 +410,7 @@ public class FiscalHibernateDAO implements FiscalDAO {
|
|||
sql.append(" b.importeseguro as importeseguro, ");
|
||||
sql.append(" cs.descclase as claseServicio, ");
|
||||
sql.append(" translate(fi.numcnpj, ' / - . ', ' ') as cnpjEcf, ");
|
||||
sql.append(" ei.icms as impostoEstado, ");
|
||||
sql.append(" 'N' as status ");
|
||||
sql.append(" FROM fiscal_r4 r4 ");
|
||||
sql.append(" LEFT JOIN fiscal_r5 r5 ON r4.numserie20 = r5.numserie20 AND r4.coo = r5.coo ");
|
||||
|
@ -422,6 +423,7 @@ public class FiscalHibernateDAO implements FiscalDAO {
|
|||
sql.append(" INNER JOIN parada o ON coalesce(ase.aliasorigen_id, b.origen_id) = o.parada_id ");
|
||||
sql.append(" INNER JOIN ciudad co ON o.ciudad_id = co.ciudad_id ");
|
||||
sql.append(" INNER JOIN estado eo ON eo.estado_id = co.estado_id ");
|
||||
sql.append(" LEFT JOIN empresa_imposto ei ON ei.estado_id = eo.estado_id AND b.marca_id = ei.empresa_id ");
|
||||
sql.append(" INNER JOIN parada d ON coalesce(ase.aliasdestino_id, b.destino_id) = d.parada_id ");
|
||||
sql.append(" INNER JOIN ciudad cd ON d.ciudad_id = cd.ciudad_id ");
|
||||
sql.append(" INNER JOIN estado ed ON ed.estado_id = cd.estado_id ");
|
||||
|
@ -457,7 +459,8 @@ public class FiscalHibernateDAO implements FiscalDAO {
|
|||
sql.append(" b.importepedagio, ");
|
||||
sql.append(" b.importeseguro, ");
|
||||
sql.append(" cs.descclase, ");
|
||||
sql.append(" fi.numcnpj ");
|
||||
sql.append(" fi.numcnpj, ");
|
||||
sql.append(" ei.icms ");
|
||||
sql.append(" ORDER BY r4.datainicialemissao, ");
|
||||
sql.append(" r4.numserie20, ");
|
||||
sql.append(" r4.coo, ");
|
||||
|
@ -512,6 +515,8 @@ public class FiscalHibernateDAO implements FiscalDAO {
|
|||
if (isCancelados) {
|
||||
item.setMotivocancelacion(rset.getInt("motivocancelacion"));
|
||||
item.setValorMulta(rset.getBigDecimal("valorMulta"));
|
||||
} else {
|
||||
item.setImpostoEstado(rset.getBigDecimal("impostoEstado"));
|
||||
}
|
||||
|
||||
// TODO: Estes atributos foram criados, por motivo de divergencia no valorTotal com o valor unitario na tabela FISCAL_R5
|
||||
|
@ -520,6 +525,8 @@ public class FiscalHibernateDAO implements FiscalDAO {
|
|||
item.setValorEmbarque(rset.getBigDecimal("importetaxaembarque"));
|
||||
item.setValorSeguro(rset.getBigDecimal("importeseguro"));
|
||||
|
||||
|
||||
|
||||
ImportacionFiscalVO novoFiscal = item;
|
||||
|
||||
codProduto = item.getCodProduto();
|
||||
|
@ -600,63 +607,49 @@ public class FiscalHibernateDAO implements FiscalDAO {
|
|||
itensFiscais.add(item);
|
||||
}
|
||||
|
||||
if (inconsistencia) {
|
||||
ItemFiscalVO novaInconsistencia = new ItemFiscalVO(fiscal);
|
||||
novaInconsistencia.setInconsistencia(inconsistencia);
|
||||
novaInconsistencia.setCodProduto(codProduto + "-TX");
|
||||
novaInconsistencia.setTipoPassagem("E");
|
||||
int numeroItem = 1;
|
||||
if (temTarifa && !tarifaCriada) {
|
||||
ItemFiscalVO novoTarifa = new ItemFiscalVO(fiscal);
|
||||
novoTarifa.setCodProduto(codProduto + "-TA");
|
||||
novoTarifa.setTipoPassagem("E");
|
||||
novoTarifa.setValorItem(fiscal.getValorTarifa());
|
||||
novoTarifa.setRepTributado("N1");
|
||||
novoTarifa.setNumItem(StringHelper.preencherZeroEsquerda((numeroItem++) + "", 3));
|
||||
novoTarifa.setInconsistencia(inconsistencia);
|
||||
itensFiscais.add(novoTarifa);
|
||||
}
|
||||
|
||||
BigDecimal total = fiscal.getValorTarifa().add(fiscal.getValorPedagio()).add(fiscal.getValorEmbarque()).add(fiscal.getValorSeguro());
|
||||
novaInconsistencia.setValorItem(total);
|
||||
if (temEmbarque && !embarqueCriada) {
|
||||
ItemFiscalVO novoEmbarque = new ItemFiscalVO(fiscal);
|
||||
novoEmbarque.setCodProduto(codProduto + "-TX");
|
||||
novoEmbarque.setTipoPassagem("E");
|
||||
novoEmbarque.setValorItem(fiscal.getValorEmbarque());
|
||||
novoEmbarque.setRepTributado("N1");
|
||||
novoEmbarque.setNumItem(StringHelper.preencherZeroEsquerda((numeroItem++) + "", 3));
|
||||
novoEmbarque.setInconsistencia(inconsistencia);
|
||||
itensFiscais.add(novoEmbarque);
|
||||
}
|
||||
|
||||
novaInconsistencia.setRepTributado("N1");
|
||||
novaInconsistencia.setNumItem(StringHelper.preencherZeroEsquerda((1) + "", 3));
|
||||
itensFiscais.add(novaInconsistencia);
|
||||
if (temPedagio && !pedagioCriada) {
|
||||
ItemFiscalVO novoPedagio = new ItemFiscalVO(fiscal);
|
||||
novoPedagio.setCodProduto(codProduto + "-PE");
|
||||
novoPedagio.setTipoPassagem("E");
|
||||
novoPedagio.setValorItem(fiscal.getValorPedagio());
|
||||
novoPedagio.setRepTributado("N1");
|
||||
novoPedagio.setNumItem(StringHelper.preencherZeroEsquerda((numeroItem++) + "", 3));
|
||||
novoPedagio.setInconsistencia(inconsistencia);
|
||||
itensFiscais.add(novoPedagio);
|
||||
}
|
||||
|
||||
} else {
|
||||
|
||||
int numeroItem = 1;
|
||||
if (temTarifa && !tarifaCriada) {
|
||||
ItemFiscalVO novoTarifa = new ItemFiscalVO(fiscal);
|
||||
novoTarifa.setCodProduto(codProduto + "-TA");
|
||||
novoTarifa.setTipoPassagem("E");
|
||||
novoTarifa.setValorItem(fiscal.getValorTarifa());
|
||||
novoTarifa.setRepTributado("N1");
|
||||
novoTarifa.setNumItem(StringHelper.preencherZeroEsquerda((numeroItem++) + "", 3));
|
||||
itensFiscais.add(novoTarifa);
|
||||
}
|
||||
|
||||
if (temEmbarque && !embarqueCriada) {
|
||||
ItemFiscalVO novoEmbarque = new ItemFiscalVO(fiscal);
|
||||
novoEmbarque.setCodProduto(codProduto + "-TX");
|
||||
novoEmbarque.setTipoPassagem("E");
|
||||
novoEmbarque.setValorItem(fiscal.getValorEmbarque());
|
||||
novoEmbarque.setRepTributado("N1");
|
||||
novoEmbarque.setNumItem(StringHelper.preencherZeroEsquerda((numeroItem++) + "", 3));
|
||||
itensFiscais.add(novoEmbarque);
|
||||
}
|
||||
|
||||
if (temPedagio && !pedagioCriada) {
|
||||
ItemFiscalVO novoPedagio = new ItemFiscalVO(fiscal);
|
||||
novoPedagio.setCodProduto(codProduto + "-PE");
|
||||
novoPedagio.setTipoPassagem("E");
|
||||
novoPedagio.setValorItem(fiscal.getValorPedagio());
|
||||
novoPedagio.setRepTributado("N1");
|
||||
novoPedagio.setNumItem(StringHelper.preencherZeroEsquerda((numeroItem++) + "", 3));
|
||||
|
||||
itensFiscais.add(novoPedagio);
|
||||
}
|
||||
|
||||
if (temSeguro && !seguroCriada) {
|
||||
ItemFiscalVO novoSeguro = new ItemFiscalVO(fiscal);
|
||||
novoSeguro.setCodProduto(codProduto + "-SE");
|
||||
novoSeguro.setTipoPassagem("E");
|
||||
novoSeguro.setValorItem(fiscal.getValorSeguro());
|
||||
novoSeguro.setRepTributado("N1");
|
||||
novoSeguro.setNumItem(StringHelper.preencherZeroEsquerda((numeroItem++) + "", 3));
|
||||
|
||||
itensFiscais.add(novoSeguro);
|
||||
}
|
||||
if (temSeguro && !seguroCriada) {
|
||||
ItemFiscalVO novoSeguro = new ItemFiscalVO(fiscal);
|
||||
novoSeguro.setCodProduto(codProduto + "-SE");
|
||||
novoSeguro.setTipoPassagem("E");
|
||||
novoSeguro.setValorItem(fiscal.getValorSeguro());
|
||||
novoSeguro.setRepTributado("N1");
|
||||
novoSeguro.setNumItem(StringHelper.preencherZeroEsquerda((numeroItem++) + "", 3));
|
||||
novoSeguro.setInconsistencia(inconsistencia);
|
||||
itensFiscais.add(novoSeguro);
|
||||
}
|
||||
|
||||
return itensFiscais;
|
||||
|
|
|
@ -106,9 +106,9 @@ public class FiscalServiceImpl implements FiscalService {
|
|||
inicio = DateUtil.inicioFecha(inicio);
|
||||
fim = DateUtil.fimFecha(fim);
|
||||
|
||||
connection = DataSourceUtils.getConnection(dataSourceRead);
|
||||
connection = DataSourceUtils.getConnection(dataSourceRead);
|
||||
|
||||
List<ImportacionManualFiscalVO> list = agruparItensFiscaisManual(fiscalDAO.buscaDatosFiscaisECFManual(inicio, fim, empresa.getEmpresaId(),connection));
|
||||
List<ImportacionManualFiscalVO> list = agruparItensFiscaisManual(fiscalDAO.buscaDatosFiscaisECFManual(inicio, fim, empresa.getEmpresaId(), connection));
|
||||
for (ImportacionManualFiscalVO imf : list) {
|
||||
|
||||
qtdDoc++;
|
||||
|
@ -200,13 +200,13 @@ public class FiscalServiceImpl implements FiscalService {
|
|||
log.error("", e);
|
||||
} catch (SQLException e) {
|
||||
log.error("", e);
|
||||
}finally{
|
||||
} finally {
|
||||
try {
|
||||
if (connection != null && !connection.isClosed()){
|
||||
if (connection != null && !connection.isClosed()) {
|
||||
connection.close();
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
log.error("error fechar conexão",e);
|
||||
log.error("error fechar conexão", e);
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
|
@ -350,9 +350,9 @@ public class FiscalServiceImpl implements FiscalService {
|
|||
String abertura = aberturaDeArquivo("0", dataAgora, cnpjFilial, brancos371, sequencial);
|
||||
gravarArq.print(abertura + QUEBRA_LINHA);
|
||||
|
||||
connection = DataSourceUtils.getConnection(dataSourceRead);
|
||||
connection = DataSourceUtils.getConnection(dataSourceRead);
|
||||
|
||||
List<ImportacionFiscalReducaoZVO> list = agruparReducaoZ(fiscalDAO.buscaDatosFiscaisReducaoZ(inicio, fim, empresa.getEmpresaId(),connection));
|
||||
List<ImportacionFiscalReducaoZVO> list = agruparReducaoZ(fiscalDAO.buscaDatosFiscaisReducaoZ(inicio, fim, empresa.getEmpresaId(), connection));
|
||||
|
||||
for (ImportacionFiscalReducaoZVO ifrZ : list) {
|
||||
|
||||
|
@ -438,13 +438,13 @@ public class FiscalServiceImpl implements FiscalService {
|
|||
log.error("", e);
|
||||
} catch (SQLException e) {
|
||||
log.error("", e);
|
||||
}finally{
|
||||
} finally {
|
||||
try {
|
||||
if (connection != null && !connection.isClosed()){
|
||||
if (connection != null && !connection.isClosed()) {
|
||||
connection.close();
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
log.error("error fechar conexão",e);
|
||||
log.error("error fechar conexão", e);
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
|
@ -528,9 +528,9 @@ public class FiscalServiceImpl implements FiscalService {
|
|||
String header = null;
|
||||
List<String> itensDocs = new ArrayList<String>();
|
||||
|
||||
connection = DataSourceUtils.getConnection(dataSourceRead);
|
||||
connection = DataSourceUtils.getConnection(dataSourceRead);
|
||||
|
||||
List<ImportacionFiscalVO> list = fiscalDAO.buscaDatosFiscaisECF(inicio, fim, empresa.getEmpresaId(), isCancelados,connection);
|
||||
List<ImportacionFiscalVO> list = fiscalDAO.buscaDatosFiscaisECF(inicio, fim, empresa.getEmpresaId(), isCancelados, connection);
|
||||
|
||||
for (ImportacionFiscalVO item : list) {
|
||||
|
||||
|
@ -640,13 +640,13 @@ public class FiscalServiceImpl implements FiscalService {
|
|||
log.error("", e);
|
||||
} catch (SQLException e) {
|
||||
log.error("", e);
|
||||
}finally{
|
||||
} finally {
|
||||
try {
|
||||
if (connection != null && !connection.isClosed()){
|
||||
if (connection != null && !connection.isClosed()) {
|
||||
connection.close();
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
log.error("error fechar conexão",e);
|
||||
log.error("error fechar conexão", e);
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
|
@ -727,11 +727,6 @@ public class FiscalServiceImpl implements FiscalService {
|
|||
valorItem = item.getValorSeguro() == null ? valorItem : item.getValorSeguro();
|
||||
}
|
||||
|
||||
boolean inconsistente = item.getInconsistencia() == null ? false : item.getInconsistencia();
|
||||
if (inconsistente) {
|
||||
valorItem = item.getValorTarifa().add(item.getValorPedagio()).add(item.getValorEmbarque()).add(item.getValorSeguro());
|
||||
}
|
||||
|
||||
valorItem = UtileriasFiscal.arredondar(valorItem);
|
||||
String valorUnitario = UtileriasFiscal.formataZeroDecimal(valorItem, 15);
|
||||
item.setValorItem(new BigDecimal(valorUnitario));
|
||||
|
@ -778,6 +773,24 @@ public class FiscalServiceImpl implements FiscalService {
|
|||
aliquotaItem = UtileriasFiscal.formataZeroDecimal(null, 7);
|
||||
}
|
||||
|
||||
boolean inconsistente = item.getInconsistencia() == null ? false : item.getInconsistencia();
|
||||
if (inconsistente) {
|
||||
if (codProduto.indexOf("TA") >= 0) {
|
||||
BigDecimal aliquotaCalc = item.getImpostoEstado() == null ? BigDecimal.ZERO : item.getImpostoEstado();
|
||||
aliquotaCalc = UtileriasFiscal.arredondar(aliquotaCalc);
|
||||
|
||||
BigDecimal baseCalculo = valorItem;
|
||||
baseCalculo = UtileriasFiscal.arredondar(baseCalculo);
|
||||
|
||||
BigDecimal valorImposto = baseCalculo.multiply(aliquotaCalc.divide(CEM));
|
||||
valorImposto = UtileriasFiscal.arredondar(valorImposto);
|
||||
|
||||
impostoItem = UtileriasFiscal.formataZeroDecimal(valorImposto, 15);
|
||||
aliquotaItem = UtileriasFiscal.formataZeroDecimal(null, 7);
|
||||
totalICMSNaotributadoItem = StringHelper.preencherZeroEsquerda(null, 15);
|
||||
}
|
||||
}
|
||||
|
||||
String aliquotaPIS = StringHelper.preencherZeroEsquerda(null, 7);
|
||||
String valorPIS = StringHelper.preencherZeroEsquerda(null, 15);
|
||||
String aliquotaCofins = StringHelper.preencherZeroEsquerda(null, 7);
|
||||
|
@ -902,8 +915,27 @@ public class FiscalServiceImpl implements FiscalService {
|
|||
imposto = UtileriasFiscal.formataZeroDecimal(valorImposto, 14);
|
||||
aliquota = UtileriasFiscal.formataZeroDecimal(aliquotaCalc, 14);
|
||||
}
|
||||
}
|
||||
|
||||
boolean inconsistente = item.getInconsistencia() == null ? false : item.getInconsistencia();
|
||||
if (inconsistente) {
|
||||
if (codProduto.indexOf("TA") >= 0) {
|
||||
BigDecimal aliquotaCalc = item.getImpostoEstado() == null ? BigDecimal.ZERO : item.getImpostoEstado();
|
||||
aliquotaCalc = UtileriasFiscal.arredondar(aliquotaCalc);
|
||||
|
||||
BigDecimal baseCalculo = valorItem;
|
||||
baseCalculo = UtileriasFiscal.arredondar(baseCalculo);
|
||||
|
||||
BigDecimal valorImposto = baseCalculo.multiply(aliquotaCalc.divide(CEM));
|
||||
valorImposto = UtileriasFiscal.arredondar(valorImposto);
|
||||
|
||||
imposto = UtileriasFiscal.formataZeroDecimal(valorImposto, 14);
|
||||
aliquota = UtileriasFiscal.formataZeroDecimal(aliquotaCalc, 14);
|
||||
totalICMSIsento = null;
|
||||
totalICMSNaotributado = null;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
if (StringUtils.isBlank(aliquota))
|
||||
aliquota = StringHelper.preencherZeroEsquerda(null, 14);
|
||||
|
||||
|
@ -1081,21 +1113,21 @@ public class FiscalServiceImpl implements FiscalService {
|
|||
public File importacionNaoFiscal(Date inicio, Date fim, Empresa empresa) {
|
||||
Connection connection = null;
|
||||
try {
|
||||
connection = DataSourceUtils.getConnection(dataSourceRead);
|
||||
connection = DataSourceUtils.getConnection(dataSourceRead);
|
||||
|
||||
List<ImportacionNaoFiscalVO> importacionNaoFiscalVOs = fiscalDAO.buscaDatosNaoFiscais(inicio, fim, empresa.getEmpresaId(),connection);
|
||||
List<ImportacionNaoFiscalVO> importacionNaoFiscalVOs = fiscalDAO.buscaDatosNaoFiscais(inicio, fim, empresa.getEmpresaId(), connection);
|
||||
|
||||
return new ArchivoIntegracionNaoFiscal().gerarArquivo(empresa.getCnpj(), importacionNaoFiscalVOs);
|
||||
|
||||
} catch (Exception e) {
|
||||
log.error(e.getMessage(), e);
|
||||
}finally{
|
||||
} finally {
|
||||
try {
|
||||
if (connection != null && !connection.isClosed()){
|
||||
if (connection != null && !connection.isClosed()) {
|
||||
connection.close();
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
log.error("error fechar conexão",e);
|
||||
log.error("error fechar conexão", e);
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -30,6 +30,7 @@ public class ImportacionFiscalVO {
|
|||
private BigDecimal valorEmbarque;
|
||||
private BigDecimal valorSeguro;
|
||||
private String cnpjEcf;
|
||||
private BigDecimal impostoEstado;
|
||||
|
||||
private List<ItemFiscalVO> itensFiscais;
|
||||
|
||||
|
@ -303,4 +304,12 @@ public class ImportacionFiscalVO {
|
|||
this.cnpjEcf = cnpjEcf;
|
||||
}
|
||||
|
||||
public BigDecimal getImpostoEstado() {
|
||||
return impostoEstado;
|
||||
}
|
||||
|
||||
public void setImpostoEstado(BigDecimal impostoEstado) {
|
||||
this.impostoEstado = impostoEstado;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ public class ItemFiscalVO extends ImportacionFiscalVO {
|
|||
item.getDestinoUf(), item.getNumpdv(), item.getModeloImpressora(), item.getNumCaixa(), item.getStatus(),
|
||||
item.getMotivocancelacion(), item.getValorMulta(), item.getValorTarifa(), item.getValorPedagio(),
|
||||
item.getValorEmbarque(), item.getValorSeguro(), item.getClaseServicio());
|
||||
super.setImpostoEstado(item.getImpostoEstado());
|
||||
}
|
||||
|
||||
public String getNumItem() {
|
||||
|
|
Loading…
Reference in New Issue