julio 2016-04-01 21:09:45 +00:00
parent 86c8d5dc12
commit ee577a91b1
3 changed files with 155 additions and 42 deletions

View File

@ -22,7 +22,6 @@ import com.rjconsultores.ventaboletos.utilerias.DateUtil;
import com.rjconsultores.ventaboletos.vo.impressaofiscal.ImportacionFiscalReducaoZVO; import com.rjconsultores.ventaboletos.vo.impressaofiscal.ImportacionFiscalReducaoZVO;
import com.rjconsultores.ventaboletos.vo.impressaofiscal.ImportacionManualFiscalVO; import com.rjconsultores.ventaboletos.vo.impressaofiscal.ImportacionManualFiscalVO;
import com.rjconsultores.ventaboletos.vo.impressaofiscal.ImportacionNaoFiscalVO; import com.rjconsultores.ventaboletos.vo.impressaofiscal.ImportacionNaoFiscalVO;
import com.rjconsultores.ventaboletos.vo.impressaofiscal.ItemRelatorioFinanceiro;
import com.rjconsultores.ventaboletos.vo.impressaofiscal.SituacaoTributaria; import com.rjconsultores.ventaboletos.vo.impressaofiscal.SituacaoTributaria;
@Repository("fiscalDAO") @Repository("fiscalDAO")
@ -321,9 +320,9 @@ public class FiscalHibernateDAO extends GenericHibernateDAO<String, String> impl
sql.append(" r5.codproduto as codProduto, "); sql.append(" r5.codproduto as codProduto, ");
sql.append(" fi.modelo as modeloImpressora, "); sql.append(" fi.modelo as modeloImpressora, ");
sql.append(" r4.usuario_id as numCaixa, "); sql.append(" r4.usuario_id as numCaixa, ");
sql.append(" max(ml2.valortarifa) as valorTarifa, "); sql.append(" b.preciopagado as importetarifa, ");
sql.append(" max(ml2.pedagio) as valorPedagio, "); sql.append(" b.importetaxaembarque as importetaxaembarque, ");
sql.append(" max(ml2.taxaembarque) as valorEmbarque, "); sql.append(" b.importepedagio as importepedagio, ");
sql.append(" 'C' as status, "); sql.append(" 'C' as status, ");
sql.append(" b.motivocancelacion_id as motivocancelacion, "); sql.append(" b.motivocancelacion_id as motivocancelacion, ");
sql.append(" ee.impingreso as valorMulta "); sql.append(" ee.impingreso as valorMulta ");
@ -332,7 +331,6 @@ public class FiscalHibernateDAO extends GenericHibernateDAO<String, String> impl
sql.append(" AND r4.datamov = r5.datamov AND r4.contador = r5.contador "); sql.append(" AND r4.datamov = r5.datamov AND r4.contador = r5.contador ");
sql.append(" INNER JOIN fiscal_impressora fi ON fi.numserie20 = r4.numserie20 "); sql.append(" INNER JOIN fiscal_impressora fi ON fi.numserie20 = r4.numserie20 ");
sql.append(" AND fi.fiscalimpressora_id = r5.fiscalimpressora_id "); sql.append(" AND fi.fiscalimpressora_id = r5.fiscalimpressora_id ");
sql.append(" LEFT JOIN fiscal_ml2 ml2 ON ml2.boleto_id = r4.boleto_id ");
sql.append(" INNER JOIN boleto b ON b.boleto_id = r4.boleto_id "); sql.append(" INNER JOIN boleto b ON b.boleto_id = r4.boleto_id ");
sql.append(" LEFT JOIN evento_extra ee on ee.boleto_id = b.boleto_id and ee.tipoeventoextra_id in (42) "); sql.append(" LEFT JOIN evento_extra ee on ee.boleto_id = b.boleto_id and ee.tipoeventoextra_id in (42) ");
sql.append(" LEFT JOIN alias_servico ase ON ase.origen_id = b.origen_id "); sql.append(" LEFT JOIN alias_servico ase ON ase.origen_id = b.origen_id ");
@ -368,7 +366,10 @@ public class FiscalHibernateDAO extends GenericHibernateDAO<String, String> impl
sql.append(" eo.cveestado, "); sql.append(" eo.cveestado, ");
sql.append(" ed.cveestado, "); sql.append(" ed.cveestado, ");
sql.append(" b.motivocancelacion_id, "); sql.append(" b.motivocancelacion_id, ");
sql.append(" ee.impingreso "); sql.append(" ee.impingreso, ");
sql.append(" b.preciopagado, ");
sql.append(" b.importetaxaembarque, ");
sql.append(" b.importepedagio ");
sql.append(" ORDER BY r4.datainicialemissao, "); sql.append(" ORDER BY r4.datainicialemissao, ");
sql.append(" r4.numserie20, "); sql.append(" r4.numserie20, ");
sql.append(" r4.coo "); sql.append(" r4.coo ");
@ -400,16 +401,15 @@ public class FiscalHibernateDAO extends GenericHibernateDAO<String, String> impl
sql.append(" r5.codproduto as codProduto, "); sql.append(" r5.codproduto as codProduto, ");
sql.append(" fi.modelo as modeloImpressora, "); sql.append(" fi.modelo as modeloImpressora, ");
sql.append(" r4.usuario_id as numCaixa, "); sql.append(" r4.usuario_id as numCaixa, ");
sql.append(" max(ml2.valortarifa) as valorTarifa, "); sql.append(" b.preciopagado as importetarifa, ");
sql.append(" max(ml2.pedagio) as valorPedagio, "); sql.append(" b.importetaxaembarque as importetaxaembarque, ");
sql.append(" max(ml2.taxaembarque) as valorEmbarque, "); sql.append(" b.importepedagio as importepedagio, ");
sql.append(" 'N' as status "); sql.append(" 'N' as status ");
sql.append(" FROM fiscal_r4 r4 "); sql.append(" FROM fiscal_r4 r4 ");
sql.append(" INNER JOIN fiscal_r5 r5 ON r4.numserie20 = r5.numserie20 AND r4.coo = r5.coo "); sql.append(" INNER JOIN fiscal_r5 r5 ON r4.numserie20 = r5.numserie20 AND r4.coo = r5.coo ");
sql.append(" AND r4.datamov = r5.datamov AND r4.contador = r5.contador "); sql.append(" AND r4.datamov = r5.datamov AND r4.contador = r5.contador ");
sql.append(" INNER JOIN fiscal_impressora fi ON fi.numserie20 = r4.numserie20 "); sql.append(" INNER JOIN fiscal_impressora fi ON fi.numserie20 = r4.numserie20 ");
sql.append(" AND fi.fiscalimpressora_id = r5.fiscalimpressora_id "); sql.append(" AND fi.fiscalimpressora_id = r5.fiscalimpressora_id ");
sql.append(" LEFT JOIN fiscal_ml2 ml2 ON ml2.boleto_id = r4.boleto_id ");
sql.append(" INNER JOIN boleto b ON b.boleto_id = r4.boleto_id "); sql.append(" INNER JOIN boleto b ON b.boleto_id = r4.boleto_id ");
sql.append(" LEFT JOIN alias_servico ase ON ase.origen_id = b.origen_id "); sql.append(" LEFT JOIN alias_servico ase ON ase.origen_id = b.origen_id ");
sql.append(" and ase.destino_id = b.destino_id and ase.ruta_id = b.ruta_id and ase.activo = 1 and ase.corrida_id is null "); sql.append(" and ase.destino_id = b.destino_id and ase.ruta_id = b.ruta_id and ase.activo = 1 and ase.corrida_id is null ");
@ -441,7 +441,10 @@ public class FiscalHibernateDAO extends GenericHibernateDAO<String, String> impl
sql.append(" fi.modelo, "); sql.append(" fi.modelo, ");
sql.append(" r4.usuario_id, "); sql.append(" r4.usuario_id, ");
sql.append(" eo.cveestado, "); sql.append(" eo.cveestado, ");
sql.append(" ed.cveestado "); sql.append(" ed.cveestado, ");
sql.append(" b.preciopagado, ");
sql.append(" b.importetaxaembarque, ");
sql.append(" b.importepedagio ");
sql.append(" ORDER BY r4.datainicialemissao, "); sql.append(" ORDER BY r4.datainicialemissao, ");
sql.append(" r4.numserie20, "); sql.append(" r4.numserie20, ");
sql.append(" r4.coo "); sql.append(" r4.coo ");

View File

@ -484,12 +484,10 @@ public class FiscalServiceImpl implements FiscalService {
item.setMotivocancelacion(rset.getInt("motivocancelacion")); item.setMotivocancelacion(rset.getInt("motivocancelacion"));
item.setValorMulta(rset.getBigDecimal("valorMulta")); item.setValorMulta(rset.getBigDecimal("valorMulta"));
// TODO: Estes atributos foram criados para corrigir o valorItem que esta sendo gravado errado na tabela FISCAL_R5 // TODO: Estes atributos foram criados, por motivo de divergencia no valorTotal com o valor unitario na tabela FISCAL_R5
// estes dados sao extraidos da tabela FISCAL_ML2, que esta registrando corretamento o valor da tarifa paga item.setValorTarifa(rset.getBigDecimal("importetarifa"));
// e nao o valor do preco base da tarifa, como esta sendo feita na FISCAL_R5 item.setValorPedagio(rset.getBigDecimal("importepedagio"));
item.setValorTarifa(rset.getBigDecimal("valorTarifa")); item.setValorEmbarque(rset.getBigDecimal("importetaxaembarque"));
item.setValorPedagio(rset.getBigDecimal("valorPedagio"));
item.setValorEmbarque(rset.getBigDecimal("valorEmbarque"));
ImportacionFiscalVO novoFiscal = item; ImportacionFiscalVO novoFiscal = item;
if (!novoFiscal.equals(fiscal) && fiscal != null) { if (!novoFiscal.equals(fiscal) && fiscal != null) {
@ -590,7 +588,7 @@ public class FiscalServiceImpl implements FiscalService {
/* /*
* Item da importacion Fiscal ECF * Item da importacion Fiscal ECF
*/ */
String itemDoc = montarItensFiscais(item, seq, true); String itemDoc = montarItensFiscais(item, seq);
itensDocs.add(itemDoc); itensDocs.add(itemDoc);
qtdItens++; qtdItens++;
@ -689,12 +687,10 @@ public class FiscalServiceImpl implements FiscalService {
item.setNumCaixa(rset.getString("numCaixa")); item.setNumCaixa(rset.getString("numCaixa"));
item.setStatus(rset.getString("status")); item.setStatus(rset.getString("status"));
// TODO: Estes atributos foram criados para corrigir o valorItem que esta sendo gravado errado na tabela FISCAL_R5 // TODO: Estes atributos foram criados, por motivo de divergencia no valorTotal com o valor unitario na tabela FISCAL_R5
// estes dados sao extraidos da tabela FISCAL_ML2, que esta registrando corretamento o valor da tarifa paga item.setValorTarifa(rset.getBigDecimal("importetarifa"));
// e nao o valor do preco base da tarifa, como esta sendo feita na FISCAL_R5 item.setValorPedagio(rset.getBigDecimal("importepedagio"));
item.setValorTarifa(rset.getBigDecimal("valorTarifa")); item.setValorEmbarque(rset.getBigDecimal("importetaxaembarque"));
item.setValorPedagio(rset.getBigDecimal("valorPedagio"));
item.setValorEmbarque(rset.getBigDecimal("valorEmbarque"));
ImportacionFiscalVO novoFiscal = item; ImportacionFiscalVO novoFiscal = item;
if (!novoFiscal.equals(fiscal) && fiscal != null) { if (!novoFiscal.equals(fiscal) && fiscal != null) {
@ -791,7 +787,7 @@ public class FiscalServiceImpl implements FiscalService {
/* /*
* Item da importacion Fiscal ECF * Item da importacion Fiscal ECF
*/ */
String itemDoc = montarItensFiscais(item, seq, false); String itemDoc = montarItensFiscais(item, seq);
itensDocs.add(itemDoc); itensDocs.add(itemDoc);
qtdItens++; qtdItens++;
@ -847,7 +843,7 @@ public class FiscalServiceImpl implements FiscalService {
} }
} }
private String montarItensFiscais(ItemFiscalVO item, Integer seq, boolean isCancelados) { private String montarItensFiscais(ItemFiscalVO item, Integer seq) {
String tipoPassagem = null; String tipoPassagem = null;
if (item.getRepTributado().length() == 7 && item.getRepTributado().substring(2, 3).equals(SituacaoTributaria.TRIBUTADO.getValue())) { if (item.getRepTributado().length() == 7 && item.getRepTributado().substring(2, 3).equals(SituacaoTributaria.TRIBUTADO.getValue())) {
@ -894,8 +890,9 @@ public class FiscalServiceImpl implements FiscalService {
} }
String valorUnitario = StringHelper.preencherZeroEsquerda(valorItem.toString(), 15); valorItem = UtileriasFiscal.arredondar(valorItem);
String valorTotal = StringHelper.preencherZeroEsquerda(valorItem.toString(), 15); String valorUnitario = UtileriasFiscal.formataZeroDecimal(valorItem, 15);
String valorTotal = valorUnitario;
String aliquotaItem = StringHelper.preencherZeroEsquerda(null, 7); String aliquotaItem = StringHelper.preencherZeroEsquerda(null, 7);
String impostoItem = StringHelper.preencherZeroEsquerda(null, 15); String impostoItem = StringHelper.preencherZeroEsquerda(null, 15);
@ -955,21 +952,18 @@ public class FiscalServiceImpl implements FiscalService {
String coo = null; String coo = null;
String serie = null; String serie = null;
String brancos = StringHelper.preencherStringEspacoEsquerda(null, 111);
if (isCancelados) { coo = StringHelper.preencherStringEspacoDireita(item.getCoo(), 9);
coo = StringHelper.preencherStringEspacoDireita(item.getCoo(), 9); serie = item.getNumImpressora();
serie = item.getNumImpressora(); if (serie.length() >= 20) {
if (serie.length() >= 20) { serie = serie.substring(17);
serie = serie.substring(17); serie = StringHelper.preencherStringEspacoEsquerda(serie, 3);
serie = StringHelper.preencherStringEspacoEsquerda(serie, 3); } else {
} else { serie = StringHelper.preencherStringEspacoEsquerda(null, 3);
serie = StringHelper.preencherStringEspacoEsquerda(null, 3);
}
brancos = StringHelper.preencherStringEspacoEsquerda(null, 99);
} }
String brancos99 = StringHelper.preencherStringEspacoEsquerda(null, 99);
seq++; seq++;
String sequencial = StringHelper.preencherZeroEsquerda(seq.toString(), 6); String sequencial = StringHelper.preencherZeroEsquerda(seq.toString(), 6);
@ -978,7 +972,7 @@ public class FiscalServiceImpl implements FiscalService {
aliquotaPIS, valorPIS, aliquotaCofins, valorCofins, aliquotaCSLL, valorCSLL, aliquotaPIS, valorPIS, aliquotaCofins, valorCofins, aliquotaCSLL, valorCSLL,
aliquotaISS, valorISS, totalICMSIsentoItem, totalICMSNaotributadoItem, aliquotaISS, valorISS, totalICMSIsentoItem, totalICMSNaotributadoItem,
numeroPDV, numeroSeriePDV, modeloImpressora, numCaixa, status, coo, serie, numeroPDV, numeroSeriePDV, modeloImpressora, numCaixa, status, coo, serie,
brancos, sequencial); brancos99, sequencial);
return itemDoc; return itemDoc;
} }

View File

@ -0,0 +1,116 @@
package com.rjconsultores.ventaboletos.vo.impressaofiscal;
import java.math.BigDecimal;
public class ItemRelatorioVoucher {
private String dataVendaVoucher;
private String dataEmissao;
private String empresa;
private String numDocFiscal;
private String bilhete;
private Long boletoVoucher;
private Long boletoImpresso;
private String tipoVenda;
private BigDecimal tarifa;
private BigDecimal pedagio;
private BigDecimal embarque;
private String status;
public String getDataVendaVoucher() {
return dataVendaVoucher;
}
public void setDataVendaVoucher(String dataVendaVoucher) {
this.dataVendaVoucher = dataVendaVoucher;
}
public String getDataEmissao() {
return dataEmissao;
}
public void setDataEmissao(String dataEmissao) {
this.dataEmissao = dataEmissao;
}
public String getEmpresa() {
return empresa;
}
public void setEmpresa(String empresa) {
this.empresa = empresa;
}
public String getNumDocFiscal() {
return numDocFiscal;
}
public void setNumDocFiscal(String numDocFiscal) {
this.numDocFiscal = numDocFiscal;
}
public String getBilhete() {
return bilhete;
}
public void setBilhete(String bilhete) {
this.bilhete = bilhete;
}
public Long getBoletoVoucher() {
return boletoVoucher;
}
public void setBoletoVoucher(Long boletoVoucher) {
this.boletoVoucher = boletoVoucher;
}
public Long getBoletoImpresso() {
return boletoImpresso;
}
public void setBoletoImpresso(Long boletoImpresso) {
this.boletoImpresso = boletoImpresso;
}
public String getTipoVenda() {
return tipoVenda;
}
public void setTipoVenda(String tipoVenda) {
this.tipoVenda = tipoVenda;
}
public BigDecimal getTarifa() {
return tarifa;
}
public void setTarifa(BigDecimal tarifa) {
this.tarifa = tarifa;
}
public BigDecimal getPedagio() {
return pedagio;
}
public void setPedagio(BigDecimal pedagio) {
this.pedagio = pedagio;
}
public BigDecimal getEmbarque() {
return embarque;
}
public void setEmbarque(BigDecimal embarque) {
this.embarque = embarque;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
}