fixes bug#12260
dev:thiago qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@85734 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
ed30e82f3d
commit
e175339630
|
@ -233,6 +233,9 @@ public class Empresa implements Serializable {
|
|||
@Column(name = "INDPERMITETROCAVDAABERTO")
|
||||
private Boolean indPermiteTrocaVdaAberto;
|
||||
|
||||
@Column(name = "INDEXIBECOMISSAOZERADAAGENCIA")
|
||||
private Boolean indExibeComissaoZeradaAgencia;
|
||||
|
||||
public Empresa() {
|
||||
super();
|
||||
}
|
||||
|
@ -887,5 +890,13 @@ public class Empresa implements Serializable {
|
|||
this.indPermiteTrocaVdaAberto = indPermiteTrocaVdaAberto;
|
||||
}
|
||||
|
||||
public Boolean getIndExibeComissaoZeradaAgencia() {
|
||||
return indExibeComissaoZeradaAgencia;
|
||||
}
|
||||
|
||||
public void setIndExibeComissaoZeradaAgencia(Boolean indExibeComissaoZeradaAgencia) {
|
||||
this.indExibeComissaoZeradaAgencia = indExibeComissaoZeradaAgencia;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -882,10 +882,20 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
|
|||
public List<RegistroCalculo> relatorioCalculoComissao(Integer empresaId, Date periodo, Integer usuarioId, Boolean isRetencaoDiaria, Boolean isRefazerCalculo) throws ComissaoException, BusinessException {
|
||||
List<RegistroCalculo> registrosCalculo = new ArrayList<RegistroCalculo>();
|
||||
List<PuntoVenta> puntoventas = comissaoDAO.buscaPuntoVentasEmpresaComComissaoParametrizada(empresaId);
|
||||
Empresa empresa = empresaService.obtenerID(empresaId);
|
||||
boolean indExibeComissaoZeradaAgencia = empresa.getIndExibeComissaoZeradaAgencia() != null ? empresa.getIndExibeComissaoZeradaAgencia() : false;
|
||||
for (PuntoVenta puntoVenta : puntoventas) {
|
||||
RegistroCalculo registroCalculo = relatorioCalculoComissao(puntoVenta.getPuntoventaId(), empresaId, periodo, usuarioId, isRetencaoDiaria, isRefazerCalculo);
|
||||
totalizarRegistroCalculo(registroCalculo);
|
||||
registrosCalculo.add(registroCalculo);
|
||||
|
||||
/*
|
||||
* Caso parametro de não exibir as agencias com comissão zerada esteja ativado
|
||||
* o registro de calculo não deverá ser adicionado
|
||||
* Mantis #12260
|
||||
*/
|
||||
totalizarRegistroCalculo(registroCalculo, indExibeComissaoZeradaAgencia);
|
||||
if(registroCalculo.getLsReceitas() != null && !registroCalculo.getLsReceitas().isEmpty()) {
|
||||
registrosCalculo.add(registroCalculo);
|
||||
}
|
||||
}
|
||||
Collections.sort(registrosCalculo, new Comparator<RegistroCalculo>() {
|
||||
@Override
|
||||
|
@ -896,9 +906,11 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
|
|||
return registrosCalculo;
|
||||
}
|
||||
|
||||
private void totalizarRegistroCalculo(RegistroCalculo registroCalculo) {
|
||||
private void totalizarRegistroCalculo(RegistroCalculo registroCalculo, boolean indExibeComissaoZeradaAgencia) {
|
||||
ComissaoReceita comissaoReceitaTotal = new ComissaoReceita();
|
||||
for (ComissaoReceita comissaoReceita : registroCalculo.getLsReceitas()) {
|
||||
comissaoReceitaTotal.setNumPuntoVenta(registroCalculo.getNumPuntoVenta());
|
||||
comissaoReceitaTotal.setNombpuntoventa(registroCalculo.getNombpuntoventa());
|
||||
comissaoReceitaTotal.setReceitaComissao(comissaoReceitaTotal.getReceitaComissao().add(comissaoReceita.getReceitaComissao()));
|
||||
comissaoReceitaTotal.setReceitaBPR(comissaoReceitaTotal.getReceitaBPR().add(comissaoReceita.getReceitaBPR()));
|
||||
comissaoReceitaTotal.setReceitaGAP(comissaoReceitaTotal.getReceitaGAP().add(comissaoReceita.getReceitaGAP()));
|
||||
|
@ -921,7 +933,10 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
|
|||
comissaoReceitaTotal.setComissaoOutrosDiaria(comissaoReceitaTotal.getComissaoOutrosDiaria().add(comissaoReceita.getComissaoOutrosDiaria()));
|
||||
}
|
||||
registroCalculo.getLsReceitas().clear();
|
||||
registroCalculo.getLsReceitas().add(comissaoReceitaTotal);
|
||||
if(indExibeComissaoZeradaAgencia ||
|
||||
(MoneyHelper.isMaior(comissaoReceitaTotal.getTotal(), BigDecimal.ZERO) || MoneyHelper.isMaior(comissaoReceitaTotal.getTotalComissao(), BigDecimal.ZERO))) {
|
||||
registroCalculo.getLsReceitas().add(comissaoReceitaTotal);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -3,6 +3,9 @@ package com.rjconsultores.ventaboletos.vo.comissao;
|
|||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
import org.apache.commons.lang.StringEscapeUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
public class ComissaoReceita {
|
||||
|
||||
private Date data;
|
||||
|
@ -28,6 +31,9 @@ public class ComissaoReceita {
|
|||
private BigDecimal comissaoEntregaPassagemDiaria;
|
||||
private BigDecimal comissaoOutrosDiaria;
|
||||
|
||||
private String nombpuntoventa;
|
||||
private String numPuntoVenta;
|
||||
|
||||
public ComissaoReceita() {
|
||||
super();
|
||||
this.receitaComissao = BigDecimal.ZERO;
|
||||
|
@ -254,4 +260,33 @@ public class ComissaoReceita {
|
|||
return totalComissao;
|
||||
}
|
||||
|
||||
public String getNombpuntoventa() {
|
||||
return nombpuntoventa;
|
||||
}
|
||||
|
||||
public void setNombpuntoventa(String nombpuntoventa) {
|
||||
this.nombpuntoventa = nombpuntoventa;
|
||||
}
|
||||
|
||||
public String getNumPuntoVenta() {
|
||||
return numPuntoVenta;
|
||||
}
|
||||
|
||||
public void setNumPuntoVenta(String numPuntoVenta) {
|
||||
this.numPuntoVenta = numPuntoVenta;
|
||||
}
|
||||
|
||||
public String getDescricaoPuntoVenta() {
|
||||
StringBuilder str = new StringBuilder();
|
||||
|
||||
if(StringUtils.isNotBlank(nombpuntoventa)) {
|
||||
if(str.length() > 0) {
|
||||
str.append(" - ");
|
||||
}
|
||||
str.append(nombpuntoventa);
|
||||
}
|
||||
|
||||
return str.toString();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue