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")
|
@Column(name = "INDPERMITETROCAVDAABERTO")
|
||||||
private Boolean indPermiteTrocaVdaAberto;
|
private Boolean indPermiteTrocaVdaAberto;
|
||||||
|
|
||||||
|
@Column(name = "INDEXIBECOMISSAOZERADAAGENCIA")
|
||||||
|
private Boolean indExibeComissaoZeradaAgencia;
|
||||||
|
|
||||||
public Empresa() {
|
public Empresa() {
|
||||||
super();
|
super();
|
||||||
}
|
}
|
||||||
|
@ -886,6 +889,14 @@ public class Empresa implements Serializable {
|
||||||
public void setIndPermiteTrocaVdaAberto(Boolean indPermiteTrocaVdaAberto) {
|
public void setIndPermiteTrocaVdaAberto(Boolean indPermiteTrocaVdaAberto) {
|
||||||
this.indPermiteTrocaVdaAberto = indPermiteTrocaVdaAberto;
|
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 {
|
public List<RegistroCalculo> relatorioCalculoComissao(Integer empresaId, Date periodo, Integer usuarioId, Boolean isRetencaoDiaria, Boolean isRefazerCalculo) throws ComissaoException, BusinessException {
|
||||||
List<RegistroCalculo> registrosCalculo = new ArrayList<RegistroCalculo>();
|
List<RegistroCalculo> registrosCalculo = new ArrayList<RegistroCalculo>();
|
||||||
List<PuntoVenta> puntoventas = comissaoDAO.buscaPuntoVentasEmpresaComComissaoParametrizada(empresaId);
|
List<PuntoVenta> puntoventas = comissaoDAO.buscaPuntoVentasEmpresaComComissaoParametrizada(empresaId);
|
||||||
|
Empresa empresa = empresaService.obtenerID(empresaId);
|
||||||
|
boolean indExibeComissaoZeradaAgencia = empresa.getIndExibeComissaoZeradaAgencia() != null ? empresa.getIndExibeComissaoZeradaAgencia() : false;
|
||||||
for (PuntoVenta puntoVenta : puntoventas) {
|
for (PuntoVenta puntoVenta : puntoventas) {
|
||||||
RegistroCalculo registroCalculo = relatorioCalculoComissao(puntoVenta.getPuntoventaId(), empresaId, periodo, usuarioId, isRetencaoDiaria, isRefazerCalculo);
|
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>() {
|
Collections.sort(registrosCalculo, new Comparator<RegistroCalculo>() {
|
||||||
@Override
|
@Override
|
||||||
|
@ -896,9 +906,11 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
|
||||||
return registrosCalculo;
|
return registrosCalculo;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void totalizarRegistroCalculo(RegistroCalculo registroCalculo) {
|
private void totalizarRegistroCalculo(RegistroCalculo registroCalculo, boolean indExibeComissaoZeradaAgencia) {
|
||||||
ComissaoReceita comissaoReceitaTotal = new ComissaoReceita();
|
ComissaoReceita comissaoReceitaTotal = new ComissaoReceita();
|
||||||
for (ComissaoReceita comissaoReceita : registroCalculo.getLsReceitas()) {
|
for (ComissaoReceita comissaoReceita : registroCalculo.getLsReceitas()) {
|
||||||
|
comissaoReceitaTotal.setNumPuntoVenta(registroCalculo.getNumPuntoVenta());
|
||||||
|
comissaoReceitaTotal.setNombpuntoventa(registroCalculo.getNombpuntoventa());
|
||||||
comissaoReceitaTotal.setReceitaComissao(comissaoReceitaTotal.getReceitaComissao().add(comissaoReceita.getReceitaComissao()));
|
comissaoReceitaTotal.setReceitaComissao(comissaoReceitaTotal.getReceitaComissao().add(comissaoReceita.getReceitaComissao()));
|
||||||
comissaoReceitaTotal.setReceitaBPR(comissaoReceitaTotal.getReceitaBPR().add(comissaoReceita.getReceitaBPR()));
|
comissaoReceitaTotal.setReceitaBPR(comissaoReceitaTotal.getReceitaBPR().add(comissaoReceita.getReceitaBPR()));
|
||||||
comissaoReceitaTotal.setReceitaGAP(comissaoReceitaTotal.getReceitaGAP().add(comissaoReceita.getReceitaGAP()));
|
comissaoReceitaTotal.setReceitaGAP(comissaoReceitaTotal.getReceitaGAP().add(comissaoReceita.getReceitaGAP()));
|
||||||
|
@ -921,7 +933,10 @@ public class CalculoComissaoServiceImpl implements CalculoComissaoService {
|
||||||
comissaoReceitaTotal.setComissaoOutrosDiaria(comissaoReceitaTotal.getComissaoOutrosDiaria().add(comissaoReceita.getComissaoOutrosDiaria()));
|
comissaoReceitaTotal.setComissaoOutrosDiaria(comissaoReceitaTotal.getComissaoOutrosDiaria().add(comissaoReceita.getComissaoOutrosDiaria()));
|
||||||
}
|
}
|
||||||
registroCalculo.getLsReceitas().clear();
|
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
|
@Override
|
||||||
|
|
|
@ -3,6 +3,9 @@ package com.rjconsultores.ventaboletos.vo.comissao;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
|
import org.apache.commons.lang.StringEscapeUtils;
|
||||||
|
import org.apache.commons.lang.StringUtils;
|
||||||
|
|
||||||
public class ComissaoReceita {
|
public class ComissaoReceita {
|
||||||
|
|
||||||
private Date data;
|
private Date data;
|
||||||
|
@ -28,6 +31,9 @@ public class ComissaoReceita {
|
||||||
private BigDecimal comissaoEntregaPassagemDiaria;
|
private BigDecimal comissaoEntregaPassagemDiaria;
|
||||||
private BigDecimal comissaoOutrosDiaria;
|
private BigDecimal comissaoOutrosDiaria;
|
||||||
|
|
||||||
|
private String nombpuntoventa;
|
||||||
|
private String numPuntoVenta;
|
||||||
|
|
||||||
public ComissaoReceita() {
|
public ComissaoReceita() {
|
||||||
super();
|
super();
|
||||||
this.receitaComissao = BigDecimal.ZERO;
|
this.receitaComissao = BigDecimal.ZERO;
|
||||||
|
@ -254,4 +260,33 @@ public class ComissaoReceita {
|
||||||
return totalComissao;
|
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