wilian 2017-04-27 21:16:34 +00:00
parent 1404e43b8d
commit 4bef094c87
13 changed files with 357 additions and 118 deletions

View File

@ -0,0 +1,18 @@
package com.rjconsultores.ventaboletos.constantes;
public enum TipoEventoExtra {
OUTRO,
SEGURO_OPCIONAL,
EXCESSO_BAGAGEM,
TAXA_EMBARQUE,
SEGURO_RESSARCIMENTO,
TAXA_EMBARQUE_RESSARCIMENTO,
MULTA,
DIF_MAIOR,
DIF_MENOR,
SUPRIMENTO,
SANGRIA,
PACOTE;
}

View File

@ -4,6 +4,7 @@ import java.util.Date;
import java.util.List;
import com.rjconsultores.ventaboletos.entidad.Comissao;
import com.rjconsultores.ventaboletos.entidad.PtovtaComissao;
import com.rjconsultores.ventaboletos.entidad.PuntoVenta;
import com.rjconsultores.ventaboletos.vo.comissao.BoletoComissao;
import com.rjconsultores.ventaboletos.vo.comissao.HistoricoComissao;

View File

@ -15,6 +15,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Repository;
import com.rjconsultores.ventaboletos.constantes.TipoEventoExtra;
import com.rjconsultores.ventaboletos.dao.ComissaoDAO;
import com.rjconsultores.ventaboletos.entidad.Comissao;
import com.rjconsultores.ventaboletos.entidad.PuntoVenta;
@ -40,11 +41,10 @@ public class ComissaoHibernateDAO extends GenericHibernateDAO<Comissao, Integer>
sql.append("b.tipoventa_id as tipoVenta, b.motivocancelacion_id as motivoCancelacionId, ");
sql.append("coalesce(sum(b.preciopagado), 0) as valorpagado, coalesce(sum(b.importeseguro), 0) as seguro, ");
sql.append("coalesce(sum(b.importepedagio), 0) as pedagio, coalesce(sum(b.importetaxaembarque), 0) as embarque, ");
sql.append("coalesce(sum(case when ee.tipoeventoextra_id = 1 then ee.impingreso else 0 end), 0) as excessoBagagem, ");
sql.append("coalesce(sum(case when ee.tipoeventoextra_id = 21 then ee.impingreso else 0 end), 0) as seguroOpcional, ");
sql.append("coalesce(sum(case when ee.tipoeventoextra_id <> 21 ");
sql.append(" or ee.tipoeventoextra_id <> 1 then ee.impingreso else 0 end), 0) as seguroOutros, ");
sql.append("case when c.ptovtaventa_id = b.puntoventa_id then 1 else 0 end as ptoVtaOrigem, ");
sql.append("coalesce(sum(case when tee.cvetipoevento = :teeexcbag then ee.impingreso else 0 end), 0) as excessoBagagem, ");
sql.append("coalesce(sum(case when tee.cvetipoevento = :teesegop then ee.impingreso else 0 end), 0) as seguroOpcional, ");
sql.append("coalesce(sum(case when tee.cvetipoevento not in (:teesegop,:teeexcbag) then ee.impingreso else 0 end), 0) as seguroOutros, ");
sql.append("case when b.ptovtaventa_id = b.puntoventa_id then 1 else 0 end as ptoVtaOrigem, ");
sql.append("ei.icms as icmsBase, e.estado_id as estadoId ");
sql.append("from boleto b ");
sql.append("inner join parada origen on origen.parada_id = b.origen_id ");
@ -53,14 +53,15 @@ public class ComissaoHibernateDAO extends GenericHibernateDAO<Comissao, Integer>
sql.append("inner join punto_venta p on b.puntoventa_id = p.puntoventa_id ");
sql.append("inner join empresa_imposto ei on (ei.estado_id = e.estado_id ");
sql.append(" and ei.empresa_id = b.marca_id and ei.activo = 1) ");
sql.append("left join caja c on c.numoperacion = b.numoperacion and c.numfoliosistema = b.numfoliosistema ");
sql.append(" and c.numfoliopreimpreso = b.numfoliopreimpreso and c.numseriepreimpresa = b.numseriepreimpresa ");
/*sql.append("left join caja c on c.numoperacion = b.numoperacion and c.numfoliosistema = b.numfoliosistema ");
sql.append(" and c.numfoliopreimpreso = b.numfoliopreimpreso and c.numseriepreimpresa = b.numseriepreimpresa ");*/
sql.append("left join evento_extra ee on ee.boleto_id = b.boleto_id ");
sql.append("where to_char(b.fechorventa, 'mmyyyy') = to_char(:periodo, 'mmyyyy') ");
sql.append("left join tipo_evento_extra tee on tee.tipoeventoextra_id = ee.tipoeventoextra_id ");
sql.append("where b.fechorventa between TO_DATE(:dataInicial,'DD/MM/YYYY HH24:MI') and TO_DATE(:dataFinal,'DD/MM/YYYY HH24:MI') ");
sql.append("and b.marca_id = :empresaId ");
sql.append("and (p.puntoventa_id = :puntoventaId or p.puntoventapadre_id = :puntoventaId) ");
sql.append("group by b.marca_id, b.puntoventa_id, to_char(b.fechorventa, 'dd-mm-yyyy'), ");
sql.append("b.indstatusboleto, b.tipoventa_id, b.motivocancelacion_id, c.ptovtaventa_id, ei.icms, e.estado_id ");
sql.append("b.indstatusboleto, b.tipoventa_id, b.motivocancelacion_id, b.ptovtaventa_id, ei.icms, e.estado_id ");
sql.append("order by datavenda ");
Query query = getSession().createSQLQuery(sql.toString())
@ -82,9 +83,15 @@ public class ComissaoHibernateDAO extends GenericHibernateDAO<Comissao, Integer>
.addScalar("estadoId", IntegerType.INSTANCE)
.setResultTransformer(new AliasToBeanResultTransformer(BoletoComissao.class));
query.setTimestamp("periodo", periodo);
Date inicioPeriodo = DateUtil.inicioFechaPeriodoMeses(periodo);
Date fimPeriodo = DateUtil.fimFechaPeriodoMeses(periodo);
query.setString("dataInicial", DateUtil.getStringDate(inicioPeriodo, "dd/MM/yyyy HH:mm"));
query.setString("dataFinal", DateUtil.getStringDate(fimPeriodo, "dd/MM/yyyy HH:mm"));
query.setInteger("puntoventaId", puntoVentaId);
query.setInteger("empresaId", empresaId);
query.setString("teeexcbag", TipoEventoExtra.EXCESSO_BAGAGEM.toString());
query.setString("teesegop", TipoEventoExtra.SEGURO_OPCIONAL.toString());
return query.list();
}
@ -126,13 +133,17 @@ public class ComissaoHibernateDAO extends GenericHibernateDAO<Comissao, Integer>
sql.append(" c.bonificacao_metas AS bonificacaoMetas, ");
sql.append(" c.entregas_passagem AS entregasPassagem, ");
sql.append(" c.receita_outros AS receitaOutros, ");
sql.append(" c.receita_bpr AS receitaBPR, ");
sql.append(" c.devolvidos AS devolvidos, ");
sql.append(" c.receita_bruta_excessobagagem AS receitaBrutaExcessoBagagem, ");
sql.append(" c.receita_bruta_seguroopcional AS receitaBrutaSeguroopcional, ");
sql.append(" c.indpago AS indPago, ");
sql.append(" CASE WHEN c.indpago = 1 THEN 'PAGO' ELSE 'PENDENTE' END AS pagamento, ");
sql.append(" up.nombusuario AS usuarioPagamento, ");
sql.append(" ul.nombusuario AS usuarioLancamento, ");
sql.append(" e.nombempresa, e.cnpj, ");
sql.append(" pa.numagencia as agencia, pa.numconta || '-' || pa.digito as conta, if.nome as banco, ");
sql.append(" ci.nombciudad as cidade, pv.descCorreo ");
sql.append(" ci.nombciudad as cidade, pv.descCorreo, pv.razonsocial, pv.numdocpuntoventa as cnpjPuntoventa ");
/*
private String sigla;
private String nome;
@ -181,6 +192,12 @@ public class ComissaoHibernateDAO extends GenericHibernateDAO<Comissao, Integer>
.addScalar("cidade", StringType.INSTANCE)
.addScalar("agencia", StringType.INSTANCE)
.addScalar("descCorreo", StringType.INSTANCE)
.addScalar("razonsocial", StringType.INSTANCE)
.addScalar("cnpjPuntoventa", StringType.INSTANCE)
.addScalar("receitaBPR", BigDecimalType.INSTANCE)
.addScalar("devolvidos", BigDecimalType.INSTANCE)
.addScalar("receitaBrutaExcessoBagagem", BigDecimalType.INSTANCE)
.addScalar("receitaBrutaSeguroopcional", BigDecimalType.INSTANCE)
.setResultTransformer(new AliasToBeanResultTransformer(HistoricoComissao.class));
query.setString("periodoInicio", competenciaInicio);
@ -201,7 +218,8 @@ public class ComissaoHibernateDAO extends GenericHibernateDAO<Comissao, Integer>
.append("JOIN c.empresaId e ")
.append("WHERE pv.activo = 1 ")
.append("AND e.empresaId = :empresaId ")
.append("AND c.activo = 1");
.append("AND c.activo = 1")
.append("AND pv.statusaprobacion = 'A'");
Query qr = getSession().createQuery(sQuery.toString());
qr.setParameter("empresaId", empresaId);
return qr.list();

View File

@ -11,6 +11,7 @@ import org.springframework.stereotype.Repository;
import com.rjconsultores.ventaboletos.dao.DescontoComissaoDAO;
import com.rjconsultores.ventaboletos.entidad.DescontoComissao;
import com.rjconsultores.ventaboletos.utilerias.DateUtil;
@Repository("descontoComissaoDAO")
public class DescontoComissaoHibernateDAO extends GenericHibernateDAO<DescontoComissao, Long> implements DescontoComissaoDAO {
@ -29,14 +30,14 @@ public class DescontoComissaoHibernateDAO extends GenericHibernateDAO<DescontoCo
sql.append("where activo = 1 ");
sql.append(" and dc.puntoVenta.puntoventaId = :puntoventaId ");
sql.append(" and dc.empresa.empresaId = :empresaId ");
sql.append(" and dc.datainicial >= :datainicial ");
sql.append(" and (dc.datafinal <= :datafinal or dc.datafinal is null)");
sql.append(" and dc.datainicial <= TO_DATE(:datainicial,'DD/MM/YYYY HH24:MI') ");
sql.append(" and (dc.datafinal >= TO_DATE(:datafinal,'DD/MM/YYYY HH24:MI') or dc.datafinal is null)");
Query query = getSession().createQuery(sql.toString());
query.setInteger("puntoventaId", puntoVentaId);
query.setInteger("empresaId", empresaId);
query.setTimestamp("datainicial", inicioPeriodo);
query.setTimestamp("datafinal", fimPeriodo);
query.setString("datainicial", DateUtil.getStringDate(inicioPeriodo, "dd/MM/yyyy HH:mm"));
query.setString("datafinal", DateUtil.getStringDate(fimPeriodo, "dd/MM/yyyy HH:mm"));
return query.list();
}

View File

@ -12,6 +12,7 @@ import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Repository;
import com.rjconsultores.ventaboletos.dao.PtovtaComissaoDAO;
import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.entidad.PtovtaComissao;
import com.rjconsultores.ventaboletos.entidad.PuntoVenta;
@ -53,18 +54,13 @@ public class PtovtaComissaoHibernateDAO extends GenericHibernateDAO<PtovtaComiss
@Override
public PtovtaComissao buscarPuntaVentaEmpresa(Integer puntaVentaId, Integer empresaId) {
Criteria c = getSession().createCriteria(getPersistentClass());
c.add(Restrictions.eq("activo", Boolean.TRUE));
c.add(Restrictions.eq("puntoventaId", new PuntoVenta(puntaVentaId)));
c.add(Restrictions.eq("empresaId", new Empresa(empresaId)));
c.setMaxResults(1);
StringBuilder sql = new StringBuilder();
sql.append("from PtovtaComissao pc ");
sql.append("where pc.activo = 1 and pc.puntoventaId.puntoventaId = :puntoventaId ");
sql.append(" and pc.empresaId.empresaId = :empresaId ");
Query query = getSession().createQuery(sql.toString());
query.setInteger("puntoventaId", puntaVentaId);
query.setInteger("empresaId", empresaId);
query.setMaxResults(1);
return (PtovtaComissao) query.uniqueResult();
return (PtovtaComissao) c.uniqueResult();
}
}

View File

@ -71,6 +71,18 @@ public class Comissao implements Serializable {
@Column(name = "EMPRESA_ID")
private Integer empresaId;
@Column(name = "RECEITA_BPR")
private BigDecimal receitaBPR;
@Column(name = "DEVOLVIDOS")
private BigDecimal devolvidos;
@Column(name = "RECEITA_BRUTA_EXCESSOBAGAGEM")
private BigDecimal receitaBrutaExcessoBagagem;
@Column(name = "RECEITA_BRUTA_SEGUROOPCIONAL")
private BigDecimal receitaBrutaSeguroopcional;
public Comissao() {
super();
setComissaoBpr(BigDecimal.ZERO);
@ -83,6 +95,10 @@ public class Comissao implements Serializable {
setIssRetido(BigDecimal.ZERO);
setBonificacaoMetas(BigDecimal.ZERO);
setEntregasPassagem(BigDecimal.ZERO);
setReceitaBPR(BigDecimal.ZERO);
setDevolvidos(BigDecimal.ZERO);
setReceitaBrutaExcessoBagagem(BigDecimal.ZERO);
setReceitaBrutaSeguroopcional(BigDecimal.ZERO);
}
public Integer getComissaoId() {
@ -245,4 +261,36 @@ public class Comissao implements Serializable {
this.puntoVenta = puntoVenta;
}
public BigDecimal getReceitaBPR() {
return receitaBPR;
}
public void setReceitaBPR(BigDecimal receitaBPR) {
this.receitaBPR = receitaBPR;
}
public BigDecimal getDevolvidos() {
return devolvidos;
}
public void setDevolvidos(BigDecimal devolvidos) {
this.devolvidos = devolvidos;
}
public BigDecimal getReceitaBrutaExcessoBagagem() {
return receitaBrutaExcessoBagagem;
}
public void setReceitaBrutaExcessoBagagem(BigDecimal receitaBrutaExcessoBagagem) {
this.receitaBrutaExcessoBagagem = receitaBrutaExcessoBagagem;
}
public BigDecimal getReceitaBrutaSeguroopcional() {
return receitaBrutaSeguroopcional;
}
public void setReceitaBrutaSeguroopcional(BigDecimal receitaBrutaSeguroopcional) {
this.receitaBrutaSeguroopcional = receitaBrutaSeguroopcional;
}
}

View File

@ -15,6 +15,8 @@ import javax.persistence.Basic;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
@ -101,6 +103,10 @@ public class TipoEventoExtra implements Serializable {
@Column(name = "INDCONFERENCIAFISICACOMISSAO")
private Boolean indconferenciafisicacomissao;
@Enumerated(EnumType.STRING)
@Column(name = "CVETIPOEVENTO")
private com.rjconsultores.ventaboletos.constantes.TipoEventoExtra cvetipoevento;
public TipoEventoExtraEmpresa addEmpresa(Empresa e) {
TipoEventoExtraEmpresa t = new TipoEventoExtraEmpresa();
t.setEmpresa(e);
@ -372,4 +378,12 @@ public class TipoEventoExtra implements Serializable {
this.empresas = empresas;
}
public com.rjconsultores.ventaboletos.constantes.TipoEventoExtra getCvetipoevento() {
return cvetipoevento;
}
public void setCvetipoevento(com.rjconsultores.ventaboletos.constantes.TipoEventoExtra cvetipoevento) {
this.cvetipoevento = cvetipoevento;
}
}

View File

@ -41,6 +41,7 @@ import com.rjconsultores.ventaboletos.service.DescontoComissaoService;
import com.rjconsultores.ventaboletos.service.EmpresaImpostoService;
import com.rjconsultores.ventaboletos.service.PtovtaComissaoService;
import com.rjconsultores.ventaboletos.utilerias.DateUtil;
import com.rjconsultores.ventaboletos.utilerias.MoneyHelper;
import com.rjconsultores.ventaboletos.utilerias.SendMail;
import com.rjconsultores.ventaboletos.vo.comissao.BoletoComissao;
import com.rjconsultores.ventaboletos.vo.comissao.ComissaoDesconto;
@ -141,6 +142,17 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
}
}
for (ComissaoReceita comissaoReceita : rc.getLsReceitas()) {
comissao.setReceitaBPR(MoneyHelper.somar(comissao.getReceitaBPR(), comissaoReceita.getReceitaBPR(), 2));
comissao.setDevolvidos(MoneyHelper.somar(comissao.getDevolvidos(), comissaoReceita.getDevolvidosRelatorio(), 2));
comissao.setDevolvidos(MoneyHelper.somar(comissao.getDevolvidos(), comissaoReceita.getDevolvidosGAPRelatorio(), 2));
comissao.setDevolvidos(MoneyHelper.somar(comissao.getDevolvidos(), comissaoReceita.getCancelados(), 2));
comissao.setDevolvidos(MoneyHelper.somar(comissao.getDevolvidos(), comissaoReceita.getCanceladosGAP(), 2));
comissao.setDevolvidos(MoneyHelper.somar(comissao.getDevolvidos(), comissaoReceita.getCanceladosGAP(), 2));
comissao.setReceitaBrutaExcessoBagagem(MoneyHelper.somar(comissao.getReceitaBrutaExcessoBagagem(), comissaoReceita.getReceitaExcessoBagagem(), 2));
comissao.setReceitaBrutaSeguroopcional(MoneyHelper.somar(comissao.getReceitaBrutaSeguroopcional(), comissaoReceita.getReceitaSeguroOpcional(), 2));
}
comissao = comissaoService.suscribir(comissao);
} else if(!ignorarComissaoGerada){
throw new ComissaoException("busquedaCalculoComissaoController.registro.exception", null, comissaoCadastrada.getPuntoVenta().getNombpuntoventa());
@ -182,11 +194,11 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
// Comissão BPR = Receita Comissão * (% Com BPR)
BigDecimal recbpr = BigDecimal.ZERO;
BigDecimal receitaBPR = bpr.add(gap);
BigDecimal receitaBPR = MoneyHelper.somar(bpr, gap, 2);
if (isAltaTemporada) {
recbpr = receitaBPR.multiply(ptovtaComissao.getPassagemAlta() != null ? ptovtaComissao.getPassagemAlta().divide(CEM) : BigDecimal.ZERO);
recbpr = MoneyHelper.multiplicar(receitaBPR, ptovtaComissao.getPassagemAlta() != null ? MoneyHelper.dividir(ptovtaComissao.getPassagemAlta(), CEM) : BigDecimal.ZERO, 2);
} else {
recbpr = receitaBPR.multiply(ptovtaComissao.getPassagemBaixa() != null ? ptovtaComissao.getPassagemBaixa().divide(CEM) : BigDecimal.ZERO);
recbpr = MoneyHelper.multiplicar(receitaBPR, ptovtaComissao.getPassagemBaixa() != null ? MoneyHelper.dividir(ptovtaComissao.getPassagemBaixa(), CEM) : BigDecimal.ZERO, 2);
}
return recbpr;
@ -196,12 +208,12 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
// EntregaPassagem (Internet/Venda Impressão Posterior/Outros)
BigDecimal entregaPassagem = BigDecimal.ZERO;
BigDecimal receitaEntrega = gapImpressa.add(internet);
BigDecimal receitaEntrega = MoneyHelper.somar(gapImpressa, internet, 2);
if(ptovtaComissao.getValorImpressaoGap() != null) {
if (BooleanUtils.toBoolean(ptovtaComissao.getIndimpressaogapporc())) {
entregaPassagem = receitaEntrega.multiply(ptovtaComissao.getValorImpressaoGap() != null ? ptovtaComissao.getValorImpressaoGap().divide(CEM) : BigDecimal.ZERO);
entregaPassagem = MoneyHelper.multiplicar(receitaEntrega, ptovtaComissao.getValorImpressaoGap() != null ? MoneyHelper.dividir(ptovtaComissao.getValorImpressaoGap(),CEM) : BigDecimal.ZERO, 2);
} else {
entregaPassagem = ptovtaComissao.getValorImpressaoGap() != null ? ptovtaComissao.getValorImpressaoGap().multiply(new BigDecimal(contImpressa)) : BigDecimal.ZERO;
entregaPassagem = ptovtaComissao.getValorImpressaoGap() != null ? MoneyHelper.multiplicar(ptovtaComissao.getValorImpressaoGap(),new BigDecimal(contImpressa), 2) : BigDecimal.ZERO;
}
}
@ -213,9 +225,9 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
// Comissão Excesso = Receita Excesso Bagagem * (% Com. Exc. Bag)
BigDecimal excessoBagagem = BigDecimal.ZERO;
if (isAltaTemporada) {
excessoBagagem = excBag.multiply(ptovtaComissao.getExcessoAlta() != null ? ptovtaComissao.getExcessoAlta().divide(CEM) : BigDecimal.ZERO);
excessoBagagem = MoneyHelper.multiplicar(excBag, ptovtaComissao.getExcessoAlta() != null ? MoneyHelper.dividir(ptovtaComissao.getExcessoAlta(), CEM) : BigDecimal.ZERO, 2);
} else {
excessoBagagem = excBag.multiply(ptovtaComissao.getExcessoBaixa() != null ? ptovtaComissao.getExcessoBaixa().divide(CEM) : BigDecimal.ZERO);
excessoBagagem = MoneyHelper.multiplicar(excBag, ptovtaComissao.getExcessoBaixa() != null ? MoneyHelper.dividir(ptovtaComissao.getExcessoBaixa(), CEM) : BigDecimal.ZERO, 2);
}
return excessoBagagem;
@ -226,9 +238,9 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
// Comissão Seg. Opcional = Receita Seguro Opcional * (% Com. Seg. Pol)
BigDecimal recsegOpcional = BigDecimal.ZERO;
if (isAltaTemporada) {
recsegOpcional = segOpcional.multiply(ptovtaComissao.getSeguroAlta() != null ? ptovtaComissao.getSeguroAlta().divide(CEM) : BigDecimal.ZERO);
recsegOpcional = MoneyHelper.multiplicar(segOpcional, ptovtaComissao.getSeguroAlta() != null ? MoneyHelper.dividir(ptovtaComissao.getSeguroAlta(), CEM) : BigDecimal.ZERO, 2);
} else {
recsegOpcional = segOpcional.multiply(ptovtaComissao.getSeguroBaixa() != null ? ptovtaComissao.getSeguroBaixa().divide(CEM) : BigDecimal.ZERO);
recsegOpcional = MoneyHelper.multiplicar(segOpcional, ptovtaComissao.getSeguroBaixa() != null ? MoneyHelper.dividir(ptovtaComissao.getSeguroBaixa(), CEM) : BigDecimal.ZERO, 2);
}
return recsegOpcional;
}
@ -238,9 +250,9 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
// Comissão Seg. Opcional = Receita Seguro Opcional * (% Com. Seg. Pol)
BigDecimal recoutros = BigDecimal.ZERO;
if (isAltaTemporada) {
recoutros = outros.multiply(ptovtaComissao.getOutrosAlta() != null ? ptovtaComissao.getOutrosAlta().divide(CEM) : BigDecimal.ZERO);
recoutros = MoneyHelper.multiplicar(outros, ptovtaComissao.getOutrosAlta() != null ? MoneyHelper.dividir(ptovtaComissao.getOutrosAlta(), CEM) : BigDecimal.ZERO, 2);
} else {
recoutros = outros.multiply(ptovtaComissao.getOutrosBaixa() != null ? ptovtaComissao.getOutrosBaixa().divide(CEM) : BigDecimal.ZERO);
recoutros = MoneyHelper.multiplicar(outros, ptovtaComissao.getOutrosBaixa() != null ? MoneyHelper.dividir(ptovtaComissao.getOutrosBaixa(), CEM) : BigDecimal.ZERO, 2);
}
return recoutros;
}
@ -257,7 +269,7 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
for (DescontoComissao dc : itensDescontos) {
BigDecimal valorDesconto = dc.getPreco();
valorDescontoTotal = valorDescontoTotal.add(valorDesconto);
valorDescontoTotal = MoneyHelper.somar(valorDescontoTotal, valorDesconto, 2);
ComissaoDesconto desconto = new ComissaoDesconto();
if (dc.getDatafinal() == null) {
@ -305,14 +317,16 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
BigDecimal comissaoEntregaPassagem = BigDecimal.ZERO;
BigDecimal comissaoOutros = BigDecimal.ZERO;
BigDecimal receitaTotal = BigDecimal.ZERO;
BigDecimal comissaoTotal = BigDecimal.ZERO;
for (ComissaoReceita cr : receitas) {
receitaTotal = receitaTotal.add(cr.getReceitaComissao());
comissaoBPR = comissaoBPR.add(cr.getComissaoBPRDiaria());
comissaoEntregaPassagem = comissaoEntregaPassagem.add(cr.getComissaoEntregaPassagemDiaria());
comissaoExcessoBagagem = comissaoExcessoBagagem.add(cr.getComissaoExcessoBagagemDiaria());
comissaoSegOpcional = comissaoSegOpcional.add(cr.getComissaoSegOpcionalDiaria());
comissaoOutros = comissaoOutros.add(cr.getComissaoOutrosDiaria());
receitaTotal = MoneyHelper.somar(receitaTotal, cr.getReceitaComissao());
comissaoBPR = MoneyHelper.somar(comissaoBPR, cr.getComissaoBPRDiaria());
comissaoEntregaPassagem = MoneyHelper.somar(comissaoEntregaPassagem, cr.getComissaoEntregaPassagemDiaria());
comissaoExcessoBagagem = MoneyHelper.somar(comissaoExcessoBagagem, cr.getComissaoExcessoBagagemDiaria());
comissaoSegOpcional = MoneyHelper.somar(comissaoSegOpcional, cr.getComissaoSegOpcionalDiaria());
comissaoOutros = MoneyHelper.somar(comissaoOutros, cr.getComissaoOutrosDiaria());
comissaoTotal = MoneyHelper.somar(comissaoTotal, cr.getTotalComissao());
}
rc.setLsReceitas(receitas);
@ -337,25 +351,30 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
// Royaties
BigDecimal royaties = BigDecimal.ZERO;
if(ptovtaComissao.getRoyalties() != null) {
royaties = receitaTotal.multiply(ptovtaComissao.getRoyalties().divide(CEM));
royaties = MoneyHelper.multiplicar(receitaTotal, MoneyHelper.dividir(ptovtaComissao.getRoyalties(), CEM));
}
rc.setRoyaties(royaties);
// ISS retido
BigDecimal issRetido = BigDecimal.ZERO;
if(ptovtaComissao.getIssretido() != null) {
issRetido = receitaTotal.multiply(ptovtaComissao.getIssretido().divide(CEM));
issRetido = MoneyHelper.multiplicar(comissaoTotal, MoneyHelper.dividir(ptovtaComissao.getIssretido(), CEM));
}
rc.setRetidoISS(issRetido);
// Comissão à pagar = Comissão BPR + Comissão Excesso Bagagem + Comissão Seg. Opcional + Bonificação Metas + Internet(EntregaPassagem)
BigDecimal comissaoPagar = BigDecimal.ZERO;
comissaoPagar = comissaoPagar.add(comissaoBPR).add(comissaoExcessoBagagem).add(comissaoSegOpcional);
comissaoPagar = comissaoPagar.add(comissaoEntregaPassagem).add(comissaoOutros);
comissaoPagar = comissaoPagar.add(comissaoBonificaoMetas);
comissaoPagar = MoneyHelper.somar(comissaoPagar,comissaoBPR);
comissaoPagar = MoneyHelper.somar(comissaoPagar,comissaoExcessoBagagem);
comissaoPagar = MoneyHelper.somar(comissaoPagar,comissaoSegOpcional);
comissaoPagar = MoneyHelper.somar(comissaoPagar,comissaoEntregaPassagem);
comissaoPagar = MoneyHelper.somar(comissaoPagar,comissaoOutros);
comissaoPagar = MoneyHelper.somar(comissaoPagar,comissaoBonificaoMetas);
// - Descontos (Fixos e Eventuais) - Royaties - ISS retido
comissaoPagar = comissaoPagar.subtract(rc.getDescontos()).subtract(royaties).subtract(issRetido);
comissaoPagar = MoneyHelper.subtrair(comissaoPagar,rc.getDescontos());
comissaoPagar = MoneyHelper.subtrair(comissaoPagar,royaties);
comissaoPagar = MoneyHelper.subtrair(comissaoPagar,issRetido);
rc.setComissaoPagar(comissaoPagar);
return rc;
@ -463,117 +482,117 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
// Totais
if (BooleanUtils.toBoolean(ptovtaComissao.getTarifaReceita())) {
receitaItem = receitaItem.add(rcc.getValorpagado());
receitaItem = MoneyHelper.somar(receitaItem, rcc.getValorpagado());
}
if (BooleanUtils.toBoolean(ptovtaComissao.getTaxaReceita())) {
receitaItem = receitaItem.add(rcc.getEmbarque());
receitaItem = MoneyHelper.somar(receitaItem, rcc.getEmbarque());
}
if (BooleanUtils.toBoolean(ptovtaComissao.getSeguroReceita())) {
receitaItem = receitaItem.add(rcc.getSeguro());
receitaItem = MoneyHelper.somar(receitaItem, rcc.getSeguro());
}
if (BooleanUtils.toBoolean(ptovtaComissao.getPedagioReceita())) {
receitaItem = receitaItem.add(rcc.getPedagio());
receitaItem = MoneyHelper.somar(receitaItem, rcc.getPedagio());
}
// Totais de Devolução / Cancelamento
if (BooleanUtils.toBoolean(ptovtaComissao.getTarifaDev())) {
receitaDevItem = receitaDevItem.add(rcc.getValorpagado());
receitaDevItem = MoneyHelper.somar(receitaDevItem, rcc.getValorpagado());
}
if (BooleanUtils.toBoolean(ptovtaComissao.getTaxaDev())) {
receitaDevItem = receitaDevItem.add(rcc.getEmbarque());
receitaDevItem = MoneyHelper.somar(receitaDevItem, rcc.getEmbarque());
}
if (BooleanUtils.toBoolean(ptovtaComissao.getSeguroDev())) {
receitaDevItem = receitaDevItem.add(rcc.getSeguro());
receitaDevItem = MoneyHelper.somar(receitaDevItem, rcc.getSeguro());
}
if (BooleanUtils.toBoolean(ptovtaComissao.getPedagioDev())) {
receitaDevItem = receitaDevItem.add(rcc.getPedagio());
receitaDevItem = MoneyHelper.somar(receitaDevItem, rcc.getPedagio());
}
// Calculo de ICMS sobre o valor do bilhete
if (isReceitaLiquida) {
BigDecimal icsm = BigDecimal.ZERO;
icsm = receitaItem.multiply(rcc.getIcmsBase().divide(CEM));
receitaItem = receitaItem.subtract(icsm);
icsm = MoneyHelper.multiplicar(receitaItem, MoneyHelper.dividir(rcc.getIcmsBase(), CEM));
receitaItem = MoneyHelper.subtrair(receitaItem, icsm);
BigDecimal icsmDev = BigDecimal.ZERO;
icsmDev = receitaDevItem.multiply(rcc.getIcmsBase().divide(CEM));
receitaDevItem = receitaDevItem.subtract(icsmDev);
icsmDev = MoneyHelper.multiplicar(receitaDevItem, MoneyHelper.dividir(rcc.getIcmsBase(), CEM));
receitaDevItem = MoneyHelper.subtrair(receitaDevItem,icsmDev);
}
// Boletos impressos no punto venta
if (statusBoleto.equals(IndStatusBoleto.E)) {
contImpressa++;
gapImpressa = gapImpressa.add(receitaItem);
gapImpressa = MoneyHelper.somar(gapImpressa, receitaItem);
BigDecimal entregaPassagem = calculoEntregaPassagem(isAltaTemporada, ptovtaComissao, receitaItem, BigDecimal.ZERO, contImpressa);
comissaoEntregaPassagem = comissaoEntregaPassagem.add(entregaPassagem);
comissaoEntregaPassagem = MoneyHelper.somar(comissaoEntregaPassagem, entregaPassagem);
} else {
// Receitas calculadas sempre
receitaExcessoBagagem = receitaExcessoBagagem.add(rcc.getExcessoBagagem());
receitaExcessoBagagem = MoneyHelper.somar(receitaExcessoBagagem, rcc.getExcessoBagagem());
BigDecimal excessoBagagem = calculoExcessoBagagem(isAltaTemporada, ptovtaComissao, rcc.getExcessoBagagem());
comissaoExcessoBagagem = comissaoExcessoBagagem.add(excessoBagagem);
comissaoExcessoBagagem = MoneyHelper.somar(comissaoExcessoBagagem, excessoBagagem);
receitaSeguroOpcional = receitaSeguroOpcional.add(rcc.getSeguroOpcional());
receitaSeguroOpcional = MoneyHelper.somar(receitaSeguroOpcional, rcc.getSeguroOpcional());
BigDecimal segOpcional = calculoSeguroOpcional(isAltaTemporada, ptovtaComissao, rcc.getSeguroOpcional());
comissaoSegOpcional = comissaoSegOpcional.add(segOpcional);
comissaoSegOpcional = MoneyHelper.somar(comissaoSegOpcional, segOpcional);
receitaSeguroOutros = receitaSeguroOutros.add(rcc.getSeguroOutros());
receitaSeguroOutros = MoneyHelper.somar(receitaSeguroOutros, rcc.getSeguroOutros());
BigDecimal outros = calculoOutros(isAltaTemporada, ptovtaComissao, rcc.getSeguroOutros());
comissaoOutros = comissaoOutros.add(outros);
comissaoOutros = MoneyHelper.somar(comissaoOutros, outros);
// Receita GAP
if (rcc.getTipoVenta().equals(Constantes.TPV_BOLETO_REMOTO.intValue())) {
receitaGAP = receitaGAP.add(receitaItem);
receitaGAP = MoneyHelper.somar(receitaGAP, receitaItem);
BigDecimal bpr = calculoComisssaoBPR(isAltaTemporada, ptovtaComissao, BigDecimal.ZERO, receitaItem);
comissaoBPR = comissaoBPR.add(bpr);
comissaoBPR = MoneyHelper.somar(comissaoBPR, bpr);
}
// Internet
else if (rcc.getTipoVenta().equals(Constantes.TPV_POR_INTERNET.intValue())) {
internet = internet.add(receitaItem);
internet = MoneyHelper.somar(internet, receitaItem);
BigDecimal entregaPassagem = calculoEntregaPassagem(isAltaTemporada, ptovtaComissao, BigDecimal.ZERO, receitaItem, contImpressa);
comissaoEntregaPassagem = comissaoEntregaPassagem.add(entregaPassagem);
comissaoEntregaPassagem = MoneyHelper.somar(comissaoEntregaPassagem, entregaPassagem);
}
// Receita BPR
else {
receitaBPR = receitaBPR.add(receitaItem);
receitaBPR = MoneyHelper.somar(receitaBPR, receitaItem);
BigDecimal bpr = calculoComisssaoBPR(isAltaTemporada, ptovtaComissao, receitaItem, BigDecimal.ZERO);
comissaoBPR = comissaoBPR.add(bpr);
comissaoBPR = MoneyHelper.somar(comissaoBPR, bpr);
}
}
if (statusBoleto.equals(IndStatusBoleto.C)) {
// Devolução Receita
if (rcc.getMotivoCancelacionId().equals(Constantes.MVO_CANCEL_DEVOLUCAO)) {
if (rcc.getMotivoCancelacionId().equals(Constantes.MVO_CANCEL_DEVOLUCAO) || rcc.getMotivoCancelacionId().equals(Constantes.MVO_CANCEL_GERACAO_OCD)) {
// Devolução Receita GAP
if (rcc.getTipoVenta().equals(Constantes.TPV_BOLETO_REMOTO.intValue())) {
// Impresso Venta de otro punto venta
if (rcc.isPtoVtaOrigem()) {
devolvidosGAPOrigem = devolvidosGAPOrigem.add(receitaDevItem);
devolvidosGAPOrigem = MoneyHelper.somar(devolvidosGAPOrigem, receitaDevItem);
}
devolvidosGAP = devolvidosGAP.add(receitaDevItem);
devolvidosGAP = MoneyHelper.somar(devolvidosGAP, receitaDevItem);
} else {
// Impresso Venta de otro punto venta
if (rcc.isPtoVtaOrigem()) {
devolvidosOrigem = devolvidosOrigem.add(receitaDevItem);
devolvidosOrigem = MoneyHelper.somar(devolvidosOrigem, receitaDevItem);
}
devolvidos = devolvidos.add(receitaDevItem);
devolvidos = MoneyHelper.somar(devolvidos, receitaDevItem);
}
}
@ -582,9 +601,9 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
else {
// Cancelamento Receita GAP
if (rcc.getTipoVenta().equals(Constantes.TPV_BOLETO_REMOTO.intValue())) {
canceladosGAP = canceladosGAP.add(receitaDevItem);
canceladosGAP = MoneyHelper.somar(canceladosGAP, receitaDevItem);
} else {
cancelados = cancelados.add(receitaDevItem);
cancelados = MoneyHelper.somar(cancelados, receitaDevItem);
}
}
}
@ -609,11 +628,19 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
// Receita Comissão = Receita BPR + Receita GAP - GapImpressa - Internet
// - Cancelados - Devoluções Origem - Cancelados GAP - Devoluções GAP Origem - Devoluções - Devoluções GAP
receitaComissao = receitaComissao.add(receitaBPR).add(receitaGAP);
receitaComissao = MoneyHelper.somar(receitaComissao,receitaBPR);
receitaComissao = MoneyHelper.somar(receitaComissao,receitaGAP);
receitaComissao = MoneyHelper.subtrair(receitaComissao,gapImpressa);
receitaComissao = MoneyHelper.subtrair(receitaComissao,internet);
receitaComissao = MoneyHelper.subtrair(receitaComissao,cancelados);
receitaComissao = MoneyHelper.subtrair(receitaComissao,devolvidos);
receitaComissao = MoneyHelper.subtrair(receitaComissao,devolvidosGAP);
receitaComissao = MoneyHelper.subtrair(receitaComissao,devolvidosOrigem);
receitaComissao = MoneyHelper.subtrair(receitaComissao,devolvidosGAPOrigem);
receitaComissao = MoneyHelper.subtrair(receitaComissao,cancelados);
receitaComissao = MoneyHelper.subtrair(receitaComissao,canceladosGAP);
receitaComissao = receitaComissao.subtract(gapImpressa).subtract(internet).subtract(cancelados);
receitaComissao = receitaComissao.subtract(devolvidosOrigem).subtract(devolvidos).subtract(canceladosGAP);
receitaComissao = receitaComissao.subtract(devolvidosGAPOrigem).subtract(devolvidosGAP);
cr.setReceitaComissao(receitaComissao);
cr.setComissaoBPRDiaria(comissaoBPR);

View File

@ -0,0 +1,42 @@
package com.rjconsultores.ventaboletos.utilerias;
import java.text.ParseException;
import javax.swing.text.MaskFormatter;
import org.apache.commons.lang.StringUtils;
public class DocumentosUtil {
private static final String CPF_MASK = "###.###.###-##";
private static final String CNPJ_MASK = "##.###.###/####-##";
public static String formataCpf(String cpf) {
try {
if(StringUtils.isNotBlank(cpf)) {
cpf = StringHelper.preencherZeroEsquerda(cpf.replace("[^0-9]", ""), 11);
MaskFormatter mask = new MaskFormatter(CPF_MASK);
mask.setValueContainsLiteralCharacters(false);
return mask.valueToString(cpf);
}
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
public static String formataCnpj(String cnpj) {
try {
if(StringUtils.isNotBlank(cnpj)) {
cnpj = StringHelper.preencherZeroEsquerda(cnpj.replace("[^0-9]", ""), 14);
MaskFormatter mask = new MaskFormatter(CNPJ_MASK);
mask.setValueContainsLiteralCharacters(false);
return mask.valueToString(cnpj);
}
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
}

View File

@ -46,6 +46,16 @@ public class MoneyHelper {
}
return total;
}
public static BigDecimal somar(int customScale, BigDecimal ... aAmount) {
BigDecimal total = BigDecimal.ZERO;
for(BigDecimal value : aAmount){
BigDecimal fAmountOne = value == null ? BigDecimal.ZERO:arredondar(value, customScale);
total = total.add(fAmountOne);
}
return total;
}
public static BigDecimal somar(BigDecimal aAmountOne, BigDecimal aAmountTwo) {
BigDecimal fAmountOne = aAmountOne == null ? BigDecimal.ZERO:arredondar(aAmountOne);
BigDecimal fAmountTwo =aAmountTwo == null ? BigDecimal.ZERO: arredondar(aAmountTwo);
@ -53,6 +63,13 @@ public class MoneyHelper {
return fAmountOne.add(fAmountTwo);
}
public static BigDecimal somar(BigDecimal aAmountOne, BigDecimal aAmountTwo, int customScale) {
BigDecimal fAmountOne = aAmountOne == null ? BigDecimal.ZERO:arredondar(aAmountOne, customScale);
BigDecimal fAmountTwo =aAmountTwo == null ? BigDecimal.ZERO: arredondar(aAmountTwo, customScale);
return fAmountOne.add(fAmountTwo);
}
public static BigDecimal subtrair(BigDecimal aAmountOne, BigDecimal aAmountTwo) {
BigDecimal fAmountOne = arredondar(aAmountOne);
BigDecimal fAmountTwo = arredondar(aAmountTwo);
@ -60,6 +77,13 @@ public class MoneyHelper {
return fAmountOne.subtract(fAmountTwo);
}
public static BigDecimal subtrair(BigDecimal aAmountOne, BigDecimal aAmountTwo, int customScale) {
BigDecimal fAmountOne = arredondar(aAmountOne, customScale);
BigDecimal fAmountTwo = arredondar(aAmountTwo, customScale);
return fAmountOne.subtract(fAmountTwo);
}
public static BigDecimal dividir(BigDecimal aAmount, BigDecimal aDivisor) {
BigDecimal fAmount = arredondar(aAmount);
BigDecimal fDivisor = arredondar(aDivisor);
@ -67,6 +91,13 @@ public class MoneyHelper {
return fAmount.divide(fDivisor, DECIMALS, ROUNDING_MODE);
}
public static BigDecimal dividir(BigDecimal aAmount, BigDecimal aDivisor, int customScale) {
BigDecimal fAmount = arredondar(aAmount, customScale);
BigDecimal fDivisor = arredondar(aDivisor, customScale);
return fAmount.divide(fDivisor, DECIMALS, ROUNDING_MODE);
}
public static BigDecimal multiplicar(BigDecimal aAmount, BigDecimal aMultiplicand) {
BigDecimal fAmount = arredondar(aAmount);
BigDecimal fMultiplicand = arredondar(aMultiplicand);
@ -74,6 +105,13 @@ public class MoneyHelper {
return fAmount.multiply(fMultiplicand, new MathContext(ROUNDING_MODE));
}
public static BigDecimal multiplicar(BigDecimal aAmount, BigDecimal aMultiplicand, int customScale) {
BigDecimal fAmount = arredondar(aAmount, customScale);
BigDecimal fMultiplicand = arredondar(aMultiplicand, customScale);
return fAmount.multiply(fMultiplicand, new MathContext(ROUNDING_MODE));
}
public static BigDecimal arredondar(BigDecimal aNumber) {
if (aNumber != null) {
return aNumber.setScale(DECIMALS, ROUNDING_MODE);
@ -175,4 +213,8 @@ public class MoneyHelper {
return null;
}
public static BigDecimal arredondar(BigDecimal aNumber, int customScale) {
return aNumber.setScale(customScale, ROUNDING_MODE);
}
}

View File

@ -3,6 +3,8 @@ package com.rjconsultores.ventaboletos.vo.comissao;
import java.math.BigDecimal;
import java.util.Date;
import com.rjconsultores.ventaboletos.utilerias.MoneyHelper;
public class ComissaoReceita {
private Date data;
@ -126,16 +128,15 @@ public class ComissaoReceita {
public BigDecimal getDevolvidosRelatorio() {
BigDecimal devolvidos = BigDecimal.ZERO;
devolvidos = devolvidos.add(getDevolvidos() != null ? getDevolvidos() : BigDecimal.ZERO)
.add(getDevolucoesOrigem() != null ? getDevolucoesOrigem() : BigDecimal.ZERO);
return devolvidos;
devolvidos = MoneyHelper.somar(getDevolvidos() != null ? getDevolvidos() : BigDecimal.ZERO,
getDevolucoesOrigem() != null ? getDevolucoesOrigem() : BigDecimal.ZERO);
return MoneyHelper.arredondar(devolvidos, 2);
}
public BigDecimal getDevolvidosGAPRelatorio() {
BigDecimal devolvidosGap = BigDecimal.ZERO;
devolvidosGap = devolvidosGap.add(getDevolvidosGAP() != null ? getDevolvidosGAP() : BigDecimal.ZERO)
.add(getDevolucoesOrigemGAP() != null ? getDevolucoesOrigemGAP() : BigDecimal.ZERO);
return devolvidos;
BigDecimal devolvidosGap = MoneyHelper.somar(getDevolvidosGAP() != null ? getDevolvidosGAP() : BigDecimal.ZERO,
getDevolucoesOrigemGAP() != null ? getDevolucoesOrigemGAP() : BigDecimal.ZERO);
return MoneyHelper.arredondar(devolvidosGap, 2);
}
public BigDecimal getDevolvidosGAP() {

View File

@ -1,7 +1,6 @@
package com.rjconsultores.ventaboletos.vo.comissao;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.text.NumberFormat;
import java.text.ParseException;
@ -12,7 +11,9 @@ import org.zkoss.util.resource.Labels;
import com.rjconsultores.ventaboletos.entidad.Comissao;
import com.rjconsultores.ventaboletos.utilerias.DateUtil;
import com.rjconsultores.ventaboletos.utilerias.DocumentosUtil;
import com.rjconsultores.ventaboletos.utilerias.LocaleUtil;
import com.rjconsultores.ventaboletos.utilerias.MoneyHelper;
public class HistoricoComissao extends Comissao {
@ -36,6 +37,8 @@ public class HistoricoComissao extends Comissao {
private String nombempresa;
private String cnpj;
private String descCorreo;
private String razonsocial;
private String cnpjPuntoventa;
public HistoricoComissao() {
super();
@ -49,6 +52,8 @@ public class HistoricoComissao extends Comissao {
setIssRetido(BigDecimal.ZERO);
setBonificacaoMetas(BigDecimal.ZERO);
setEntregasPassagem(BigDecimal.ZERO);
setReceitaBPR(BigDecimal.ZERO);
setDevolvidos(BigDecimal.ZERO);
}
public String getPagamento() {
@ -92,29 +97,31 @@ public class HistoricoComissao extends Comissao {
}
public BigDecimal getTotal() {
BigDecimal total = BigDecimal.ZERO;
total = total.add(getComissaoBpr() != null ? getComissaoBpr() : BigDecimal.ZERO)
.add(getReceitaExcessobagagem() != null ? getReceitaExcessobagagem() : BigDecimal.ZERO)
.add(getReceitaSeguroopcional() != null ? getReceitaSeguroopcional() : BigDecimal.ZERO)
.add(getReceitaOutros() != null ? getReceitaOutros() : BigDecimal.ZERO)
.add(getBonificacaoMetas() != null ? getBonificacaoMetas() : BigDecimal.ZERO)
.add(getEntregasPassagem() != null ? getEntregasPassagem() : BigDecimal.ZERO);
BigDecimal total = MoneyHelper.somar((getComissaoBpr() != null ? getComissaoBpr() : BigDecimal.ZERO),
(getReceitaExcessobagagem() != null ? getReceitaExcessobagagem() : BigDecimal.ZERO),
(getReceitaSeguroopcional() != null ? getReceitaSeguroopcional() : BigDecimal.ZERO),
(getReceitaOutros() != null ? getReceitaOutros() : BigDecimal.ZERO),
(getBonificacaoMetas() != null ? getBonificacaoMetas() : BigDecimal.ZERO),
(getEntregasPassagem() != null ? getEntregasPassagem() : BigDecimal.ZERO));
total = total.setScale(2, RoundingMode.HALF_UP);
return total;
return MoneyHelper.arredondar(total, 2);
}
public BigDecimal getTotalLiquido() {
BigDecimal totalLiquido = getTotal();
totalLiquido = totalLiquido.subtract(getDescontosEventuais() != null ? getDescontosEventuais() : BigDecimal.ZERO)
.subtract(getDescontosFixos() != null ? getDescontosFixos() : BigDecimal.ZERO)
.subtract(getIssRetido() != null ? getIssRetido() : BigDecimal.ZERO)
.subtract(getRoyaties() != null ? getRoyaties() : BigDecimal.ZERO);
totalLiquido = MoneyHelper.subtrair(totalLiquido, getDescontosEventuais() != null ? getDescontosEventuais() : BigDecimal.ZERO);
totalLiquido = MoneyHelper.subtrair(totalLiquido, getDescontosFixos() != null ? getDescontosFixos() : BigDecimal.ZERO);
totalLiquido = MoneyHelper.subtrair(totalLiquido, getIssRetido() != null ? getIssRetido() : BigDecimal.ZERO);
totalLiquido = MoneyHelper.subtrair(totalLiquido, getRoyaties() != null ? getRoyaties() : BigDecimal.ZERO);
totalLiquido = totalLiquido.setScale(2, RoundingMode.HALF_UP);
return MoneyHelper.arredondar(totalLiquido, 2);
}
return totalLiquido;
public BigDecimal getReceitaBaseComissao() {
BigDecimal receitaBaseComissao = BigDecimal.ZERO;
receitaBaseComissao = MoneyHelper.somar((getReceitaBPR() != null ? getReceitaBPR() : BigDecimal.ZERO));
receitaBaseComissao = MoneyHelper.subtrair(receitaBaseComissao,(getDevolvidos() != null ? getDevolvidos() : BigDecimal.ZERO));
return MoneyHelper.arredondar(receitaBaseComissao, 2);
}
public String getSigla() {
@ -168,7 +175,7 @@ public class HistoricoComissao extends Comissao {
public String getTexto() {
return Labels.getLabel("busquedaCalculoComissaoController.recibo.texto",
new String[]{getNombempresa(),
getCnpj(),
getCnpjFormatado(),
getTextoValor()});
}
@ -208,6 +215,10 @@ public class HistoricoComissao extends Comissao {
return cnpj;
}
public String getCnpjFormatado() {
return DocumentosUtil.formataCnpj(getCnpj());
}
public void setCnpj(String cnpj) {
this.cnpj = cnpj;
}
@ -278,4 +289,24 @@ public class HistoricoComissao extends Comissao {
return super.getReceitaOutros() != null ? super.getReceitaOutros() : BigDecimal.ZERO;
}
public String getCnpjPuntoventaFormatado() {
return DocumentosUtil.formataCnpj(getCnpjPuntoventa());
}
public String getCnpjPuntoventa() {
return cnpjPuntoventa;
}
public void setCnpjPuntoventa(String cnpjPuntoventa) {
this.cnpjPuntoventa = cnpjPuntoventa;
}
public String getRazonsocial() {
return razonsocial;
}
public void setRazonsocial(String razonsocial) {
this.razonsocial = razonsocial;
}
}