fixes bug#22155

dev: Wallace
qua:

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@106626 d1611594-4594-4d17-8e1d-87c2c4800839
master
fabio 2021-05-11 16:41:37 +00:00
parent aaff5db051
commit 4020ad5086
3 changed files with 161 additions and 39 deletions

View File

@ -1,6 +1,7 @@
package com.rjconsultores.ventaboletos.dao.hibernate; package com.rjconsultores.ventaboletos.dao.hibernate;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode;
import java.sql.Connection; import java.sql.Connection;
import java.sql.Statement; import java.sql.Statement;
import java.text.DateFormat; import java.text.DateFormat;
@ -113,7 +114,9 @@ public class RemessaCNABBancosHibernateDAO extends GenericHibernateDAO<Fechament
sb.append("pv.NUMDOCPUNTOVENTA AS \"numeroInscricaoPagador\", "); sb.append("pv.NUMDOCPUNTOVENTA AS \"numeroInscricaoPagador\", ");
sb.append("pv.NOMBPUNTOVENTA AS \"nomePagador\", "); sb.append("pv.NOMBPUNTOVENTA AS \"nomePagador\", ");
sb.append("pv.DIRECCIONCALLE || ', ' || pv.DIRECCIONNUMERO || ', ' || pl.NOMBPLAZA || ', ' || ci.NOMBCIUDAD || ', ' || es.NOMBESTADO AS \"enderecoCompletoPagador\", "); sb.append("pv.DIRECCIONCALLE || ', ' || pv.DIRECCIONNUMERO || ', ' || pl.NOMBPLAZA || ', ' || ci.NOMBCIUDAD || ', ' || es.NOMBESTADO AS \"enderecoCompletoPagador\", ");
sb.append("pv.CODPOSTAL AS \"cepPagador\" "); sb.append("pv.CODPOSTAL AS \"cepPagador\", ");
sb.append("fb.porc_mora AS \"porcentagemMora\", ");
sb.append("fb.porc_multa AS \"porcentagemMulta\" ");
writeFROMClause(sb, dataDe != null && dataAte != null, reenviar); writeFROMClause(sb, dataDe != null && dataAte != null, reenviar);
@ -129,7 +132,7 @@ public class RemessaCNABBancosHibernateDAO extends GenericHibernateDAO<Fechament
ArquivoRemessa arquivoRemessa = new ArquivoRemessa(BancoLayout.BRADESCO_400_Envio); ArquivoRemessa arquivoRemessa = new ArquivoRemessa(BancoLayout.BRADESCO_400_Envio);
String nomeArquivo = "CB" + new SimpleDateFormat("ddMM").format(new Date()); String nomeArquivo = "CB" + new SimpleDateFormat("ddMM").format(new Date());
int variavel = 0; int variavel = 0;
ArquivoRemessaItem arquivoRemessaItem = null; ArquivoRemessaItem arquivoRemessaItem = null;
CabecalhoRemessaBradesco cabecalhoRemessaBradesco = null; CabecalhoRemessaBradesco cabecalhoRemessaBradesco = null;
@ -192,11 +195,12 @@ public class RemessaCNABBancosHibernateDAO extends GenericHibernateDAO<Fechament
detalhe.setVencimento((Date) tupla[9]); detalhe.setVencimento((Date) tupla[9]);
detalhe.setValor(new BigDecimal(tupla[10].toString().replaceAll(",", "."))); detalhe.setValor(new BigDecimal(tupla[10].toString().replaceAll(",", ".")));
detalhe.setEmissao((Date) tupla[12]); detalhe.setEmissao((Date) tupla[12]);
detalhe.setPercentualMulta( (BigDecimal) tupla[24] );
if (!constanteValidacao) { if (!constanteValidacao) {
detalhe.setEspecieDeTitulo("01"); detalhe.setEspecieDeTitulo("01");
detalhe.setInstrucao1("00"); detalhe.setInstrucao1("00");
detalhe.setInstrucao2("00"); detalhe.setInstrucao2("00");
}else { }else {
detalhe.setEspecieDeTitulo(tupla[11].toString()); detalhe.setEspecieDeTitulo(tupla[11].toString());
detalhe.setInstrucao1(tupla[13].toString()); detalhe.setInstrucao1(tupla[13].toString());
@ -211,8 +215,16 @@ public class RemessaCNABBancosHibernateDAO extends GenericHibernateDAO<Fechament
detalhe.setMensagem1(""); detalhe.setMensagem1("");
try{ try{
detalhe.setValorAtraso(new BigDecimal(tupla[15].toString().replaceAll(",", "."))); if( tupla[15] != null ) {
detalhe.setValorAtraso(new BigDecimal(tupla[15].toString().replaceAll(",", ".")));
}else if( tupla[23] != null ) {
detalhe.setValorAtraso( calculaValorMora( (BigDecimal) tupla[23], new BigDecimal(tupla[10].toString().replaceAll(",", ".") )) );
}else {
detalhe.setValorAtraso( BigDecimal.ZERO );
}
}catch(Exception e){ }catch(Exception e){
throw new RuntimeException("Erro ao setar o valor de atraso do boleto "+tupla[0]+", favor entrar em contato com o suporte! ");
} }
try{ try{
@ -1396,6 +1408,7 @@ public class RemessaCNABBancosHibernateDAO extends GenericHibernateDAO<Fechament
int count = 0; int count = 0;
int seqRemessa = 0; int seqRemessa = 0;
@SuppressWarnings("deprecation")
Connection con = getSession().connection(); Connection con = getSession().connection();
Statement stmt = con.createStatement(); Statement stmt = con.createStatement();
con.setAutoCommit(false); con.setAutoCommit(false);
@ -1469,4 +1482,13 @@ public class RemessaCNABBancosHibernateDAO extends GenericHibernateDAO<Fechament
return sb.toString(); return sb.toString();
} }
private BigDecimal calculaValorMora( BigDecimal mora, BigDecimal valor ) {
if( mora != null && mora.compareTo(BigDecimal.ZERO) > 0 ) {
BigDecimal valorMora = (valor.multiply(mora)).divide( new BigDecimal("100"));
return valorMora.setScale(2, RoundingMode.HALF_UP);
}else {
return BigDecimal.ZERO;
}
}
} }

View File

@ -76,6 +76,13 @@ public class FechamentoBoleto implements java.io.Serializable{
@Column(name = "REMESSA_ID") @Column(name = "REMESSA_ID")
private Long remessaId; private Long remessaId;
@Column(name = "PORC_MULTA", precision = 5, scale = 2)
private BigDecimal porcentagemMulta;
@Column(name = "PORC_MORA", precision = 5, scale = 2)
private BigDecimal porcentagemMora;
public Long getFechamentoboletoId() { public Long getFechamentoboletoId() {
return fechamentoboletoId; return fechamentoboletoId;
} }
@ -186,4 +193,16 @@ public class FechamentoBoleto implements java.io.Serializable{
public void setRemessaId(Long remessaId) { public void setRemessaId(Long remessaId) {
this.remessaId = remessaId; this.remessaId = remessaId;
} }
public BigDecimal getPorcentagemMulta() {
return porcentagemMulta;
}
public void setPorcentagemMulta(BigDecimal porcentagemMulta) {
this.porcentagemMulta = porcentagemMulta;
}
public BigDecimal getPorcentagemMora() {
return porcentagemMora;
}
public void setPorcentagemMora(BigDecimal porcentagemMora) {
this.porcentagemMora = porcentagemMora;
}
} }

View File

@ -1,5 +1,6 @@
package com.rjconsultores.ventaboletos.entidad; package com.rjconsultores.ventaboletos.entidad;
import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
import javax.persistence.Column; import javax.persistence.Column;
@ -20,25 +21,72 @@ public class FechamentoParamgeral implements java.io.Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@SequenceGenerator(name = "FECHAMENTO_PARAMGERAL_SEQ", sequenceName = "FECHAMENTO_PARAMGERAL_SEQ", allocationSize = 1)
@Id
@GeneratedValue(strategy = GenerationType.AUTO, generator = "FECHAMENTO_PARAMGERAL_SEQ")
@Column(name = "FECHAMENTOPARAMGERAL_ID", unique = true, nullable = false, precision = 15, scale = 0)
private Long fechamentoparamgeralId; private Long fechamentoparamgeralId;
@JoinColumn(name = "EMPRESA_ID")
@ManyToOne
private Empresa empresa; private Empresa empresa;
@Column(name = "BOLETO_BANCO_COD", length = 4)
private String boletoBancoCod; private String boletoBancoCod;
@Column(name = "BOLETO_BANCO_AGENCIA", length = 10)
private String boletoBancoAgencia; private String boletoBancoAgencia;
@Column(name = "BOLETO_BANCO_AGENCIA_DIGITO", length = 10)
private String boletoBancoAgenciaDigito; private String boletoBancoAgenciaDigito;
@Column(name = "BOLETO_BANCO_CONTA", length = 10)
private String boletoBancoConta; private String boletoBancoConta;
@Column(name = "BOLETO_BANCO_CONTA_DIGITO", length = 1)
private String boletoBancoContaDigito; private String boletoBancoContaDigito;
@Column(name = "BOLETO_BANCO_CARTEIRA", length = 3)
private String boletoBancoCarteira; private String boletoBancoCarteira;
@Column(name = "BOLETO_BANCO_CARTEIRA_VARIAVEL", length = 3)
private String boletoBancoCarteiraVariavel; private String boletoBancoCarteiraVariavel;
@Column(name = "BOLETO_DIAS_VENC", length = 3)
private Integer boletoDiasVenc; private Integer boletoDiasVenc;
@Column(name = "BOLETO_JUROS", precision = 5, scale = 2)
private BigDecimal boletoJuros;
@Column(name = "BOLETO_MULTA", precision = 5, scale = 2)
private BigDecimal boletoMulta;
@Column(name = "COD_EMP_BANCO", precision = 7, scale = 0)
private String codConvenio; private String codConvenio;
@Column(name = "BOLETO_BANCO_INSTRUCAO", precision = 255)
private String boletoBancoInstrucao; private String boletoBancoInstrucao;
@Column(name = "BOLETO_BANCO_INSTRUCAO2", precision = 255)
private String boletoBancoInstrucao2; private String boletoBancoInstrucao2;
@Column(name = "BOLETO_BANCO_INSTRUCAO3", precision = 255)
private String boletoBancoInstrucao3; private String boletoBancoInstrucao3;
@Column(name = "BOLETO_BANCO_INSTRUCAO_SACADO", precision = 255)
private String boletoBancoInstrucaoSacado; private String boletoBancoInstrucaoSacado;
@Column(name = "COUNT_REMESSA", precision = 15, scale = 0)
private Long countRemessa; private Long countRemessa;
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "FECMODIF", length = 7)
private Date fecmodif; private Date fecmodif;
@Column(name = "USUARIO_ID", precision = 7, scale = 0)
private Integer usuarioId; private Integer usuarioId;
@Column(name = "ACTIVO", precision = 1, scale = 0)
private Boolean activo; private Boolean activo;
public FechamentoParamgeral() { public FechamentoParamgeral() {
@ -64,6 +112,37 @@ public class FechamentoParamgeral implements java.io.Serializable {
this.activo = activo; this.activo = activo;
} }
public FechamentoParamgeral(Long fechamentoparamgeralId, Empresa empresa, String boletoBancoCod,
String boletoBancoAgencia, String boletoBancoAgenciaDigito, String boletoBancoConta,
String boletoBancoContaDigito, String boletoBancoCarteira, String boletoBancoCarteiraVariavel,
Integer boletoDiasVenc, BigDecimal boletoJuros, BigDecimal boletoMulta,
String codConvenio, String boletoBancoInstrucao, String boletoBancoInstrucao2,
String boletoBancoInstrucao3, String boletoBancoInstrucaoSacado, Long countRemessa,
Date fecmodif, Integer usuarioId, Boolean activo) {
super();
this.fechamentoparamgeralId = fechamentoparamgeralId;
this.empresa = empresa;
this.boletoBancoCod = boletoBancoCod;
this.boletoBancoAgencia = boletoBancoAgencia;
this.boletoBancoAgenciaDigito = boletoBancoAgenciaDigito;
this.boletoBancoConta = boletoBancoConta;
this.boletoBancoContaDigito = boletoBancoContaDigito;
this.boletoBancoCarteira = boletoBancoCarteira;
this.boletoBancoCarteiraVariavel = boletoBancoCarteiraVariavel;
this.boletoDiasVenc = boletoDiasVenc;
this.boletoJuros = boletoJuros;
this.boletoMulta = boletoMulta;
this.codConvenio = codConvenio;
this.boletoBancoInstrucao = boletoBancoInstrucao;
this.boletoBancoInstrucao2 = boletoBancoInstrucao2;
this.boletoBancoInstrucao3 = boletoBancoInstrucao3;
this.boletoBancoInstrucaoSacado = boletoBancoInstrucaoSacado;
this.countRemessa = countRemessa;
this.fecmodif = fecmodif;
this.usuarioId = usuarioId;
this.activo = activo;
}
public FechamentoParamgeral(Empresa empresa, String boletoBancoCod, public FechamentoParamgeral(Empresa empresa, String boletoBancoCod,
String boletoBancoAgencia, String boletoBancoConta, String boletoBancoAgencia, String boletoBancoConta,
String boletoBancoContaDigito, String boletoBancoCarteira, String boletoBancoContaDigito, String boletoBancoCarteira,
@ -82,10 +161,6 @@ public class FechamentoParamgeral implements java.io.Serializable {
this.activo = true; this.activo = true;
} }
@SequenceGenerator(name = "FECHAMENTO_PARAMGERAL_SEQ", sequenceName = "FECHAMENTO_PARAMGERAL_SEQ", allocationSize = 1)
@Id
@GeneratedValue(strategy = GenerationType.AUTO, generator = "FECHAMENTO_PARAMGERAL_SEQ")
@Column(name = "FECHAMENTOPARAMGERAL_ID", unique = true, nullable = false, precision = 15, scale = 0)
public Long getFechamentoparamgeralId() { public Long getFechamentoparamgeralId() {
return fechamentoparamgeralId; return fechamentoparamgeralId;
} }
@ -93,97 +168,92 @@ public class FechamentoParamgeral implements java.io.Serializable {
this.fechamentoparamgeralId = fechamentoparamgeralId; this.fechamentoparamgeralId = fechamentoparamgeralId;
} }
@JoinColumn(name = "EMPRESA_ID")
@ManyToOne
public Empresa getEmpresa() { public Empresa getEmpresa() {
return empresa; return empresa;
} }
public void setEmpresa(Empresa empresa) { public void setEmpresa(Empresa empresa) {
this.empresa = empresa; this.empresa = empresa;
} }
@Column(name = "BOLETO_BANCO_COD", length = 4)
public String getBoletoBancoCod() { public String getBoletoBancoCod() {
return boletoBancoCod; return boletoBancoCod;
} }
public void setBoletoBancoCod(String boletoBancoCod) { public void setBoletoBancoCod(String boletoBancoCod) {
this.boletoBancoCod = boletoBancoCod; this.boletoBancoCod = boletoBancoCod;
} }
@Column(name = "BOLETO_BANCO_AGENCIA", length = 10)
public String getBoletoBancoAgencia() { public String getBoletoBancoAgencia() {
return boletoBancoAgencia; return boletoBancoAgencia;
} }
public void setBoletoBancoAgencia(String boletoBancoAgencia) { public void setBoletoBancoAgencia(String boletoBancoAgencia) {
this.boletoBancoAgencia = boletoBancoAgencia; this.boletoBancoAgencia = boletoBancoAgencia;
} }
@Column(name = "BOLETO_BANCO_AGENCIA_DIGITO", length = 10)
public String getBoletoBancoAgenciaDigito() { public String getBoletoBancoAgenciaDigito() {
return boletoBancoAgenciaDigito; return boletoBancoAgenciaDigito;
} }
public void setBoletoBancoAgenciaDigito(String boletoBancoAgenciaDigito) { public void setBoletoBancoAgenciaDigito(String boletoBancoAgenciaDigito) {
this.boletoBancoAgenciaDigito = boletoBancoAgenciaDigito; this.boletoBancoAgenciaDigito = boletoBancoAgenciaDigito;
} }
@Column(name = "BOLETO_BANCO_CONTA", length = 10)
public String getBoletoBancoConta() { public String getBoletoBancoConta() {
return boletoBancoConta; return boletoBancoConta;
} }
public void setBoletoBancoConta(String boletoBancoConta) { public void setBoletoBancoConta(String boletoBancoConta) {
this.boletoBancoConta = boletoBancoConta; this.boletoBancoConta = boletoBancoConta;
} }
@Column(name = "BOLETO_BANCO_CONTA_DIGITO", length = 1)
public String getBoletoBancoContaDigito() { public String getBoletoBancoContaDigito() {
return boletoBancoContaDigito; return boletoBancoContaDigito;
} }
public void setBoletoBancoContaDigito(String boletoBancoContaDigito) { public void setBoletoBancoContaDigito(String boletoBancoContaDigito) {
this.boletoBancoContaDigito = boletoBancoContaDigito; this.boletoBancoContaDigito = boletoBancoContaDigito;
} }
@Column(name = "BOLETO_BANCO_CARTEIRA", length = 3)
public String getBoletoBancoCarteira() { public String getBoletoBancoCarteira() {
return boletoBancoCarteira; return boletoBancoCarteira;
} }
public void setBoletoBancoCarteira(String boletoBancoCarteira) { public void setBoletoBancoCarteira(String boletoBancoCarteira) {
this.boletoBancoCarteira = boletoBancoCarteira; this.boletoBancoCarteira = boletoBancoCarteira;
} }
@Column(name = "BOLETO_BANCO_CARTEIRA_VARIAVEL", length = 3)
public String getBoletoBancoCarteiraVariavel() { public String getBoletoBancoCarteiraVariavel() {
return boletoBancoCarteiraVariavel; return boletoBancoCarteiraVariavel;
} }
public void setBoletoBancoCarteiraVariavel(String boletoBancoCarteiraVariavel) { public void setBoletoBancoCarteiraVariavel(String boletoBancoCarteiraVariavel) {
this.boletoBancoCarteiraVariavel = boletoBancoCarteiraVariavel; this.boletoBancoCarteiraVariavel = boletoBancoCarteiraVariavel;
} }
@Column(name = "BOLETO_DIAS_VENC", length = 3)
public Integer getBoletoDiasVenc() { public Integer getBoletoDiasVenc() {
return boletoDiasVenc; return boletoDiasVenc;
} }
public void setBoletoDiasVenc(Integer boletoDiasVenc) { public void setBoletoDiasVenc(Integer boletoDiasVenc) {
this.boletoDiasVenc = boletoDiasVenc; this.boletoDiasVenc = boletoDiasVenc;
} }
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "FECMODIF", length = 7)
public Date getFecmodif() { public Date getFecmodif() {
return fecmodif; return fecmodif;
} }
public void setFecmodif(Date fecmodif) { public void setFecmodif(Date fecmodif) {
this.fecmodif = fecmodif; this.fecmodif = fecmodif;
} }
@Column(name = "USUARIO_ID", precision = 7, scale = 0)
public Integer getUsuarioId() { public Integer getUsuarioId() {
return usuarioId; return usuarioId;
} }
public void setUsuarioId(Integer usuarioId) { public void setUsuarioId(Integer usuarioId) {
this.usuarioId = usuarioId; this.usuarioId = usuarioId;
} }
@Column(name = "COD_EMP_BANCO", precision = 7, scale = 0)
public String getCodConvenio() { public String getCodConvenio() {
return codConvenio; return codConvenio;
} }
@ -192,7 +262,6 @@ public class FechamentoParamgeral implements java.io.Serializable {
this.codConvenio = codConvenio; this.codConvenio = codConvenio;
} }
@Column(name = "BOLETO_BANCO_INSTRUCAO", precision = 255)
public String getBoletoBancoInstrucao() { public String getBoletoBancoInstrucao() {
return boletoBancoInstrucao; return boletoBancoInstrucao;
} }
@ -201,7 +270,6 @@ public class FechamentoParamgeral implements java.io.Serializable {
this.boletoBancoInstrucao = boletoBancoInstrucao; this.boletoBancoInstrucao = boletoBancoInstrucao;
} }
@Column(name = "BOLETO_BANCO_INSTRUCAO2", precision = 255)
public String getBoletoBancoInstrucao2() { public String getBoletoBancoInstrucao2() {
return boletoBancoInstrucao2; return boletoBancoInstrucao2;
} }
@ -210,7 +278,6 @@ public class FechamentoParamgeral implements java.io.Serializable {
this.boletoBancoInstrucao2 = boletoBancoInstrucao2; this.boletoBancoInstrucao2 = boletoBancoInstrucao2;
} }
@Column(name = "BOLETO_BANCO_INSTRUCAO3", precision = 255)
public String getBoletoBancoInstrucao3() { public String getBoletoBancoInstrucao3() {
return boletoBancoInstrucao3; return boletoBancoInstrucao3;
} }
@ -219,7 +286,6 @@ public class FechamentoParamgeral implements java.io.Serializable {
this.boletoBancoInstrucao3 = boletoBancoInstrucao3; this.boletoBancoInstrucao3 = boletoBancoInstrucao3;
} }
@Column(name = "BOLETO_BANCO_INSTRUCAO_SACADO", precision = 255)
public String getBoletoBancoInstrucaoSacado() { public String getBoletoBancoInstrucaoSacado() {
return boletoBancoInstrucaoSacado; return boletoBancoInstrucaoSacado;
} }
@ -228,7 +294,6 @@ public class FechamentoParamgeral implements java.io.Serializable {
this.boletoBancoInstrucaoSacado = boletoBancoInstrucaoSacado; this.boletoBancoInstrucaoSacado = boletoBancoInstrucaoSacado;
} }
@Column(name = "COUNT_REMESSA", precision = 15, scale = 0)
public Long getCountRemessa() { public Long getCountRemessa() {
return countRemessa; return countRemessa;
} }
@ -237,10 +302,26 @@ public class FechamentoParamgeral implements java.io.Serializable {
this.countRemessa = countRemessa; this.countRemessa = countRemessa;
} }
@Column(name = "ACTIVO", precision = 1, scale = 0) public BigDecimal getBoletoJuros() {
return boletoJuros.setScale(2);
}
public void setBoletoJuros(BigDecimal boletoJuros) {
this.boletoJuros = boletoJuros;
}
public BigDecimal getBoletoMulta() {
return boletoMulta.setScale(2);
}
public void setBoletoMulta(BigDecimal boletoMulta) {
this.boletoMulta = boletoMulta;
}
public Boolean getActivo() { public Boolean getActivo() {
return activo; return activo;
} }
public void setActivo(Boolean activo) { public void setActivo(Boolean activo) {
this.activo = activo; this.activo = activo;
} }