fixes bug#0013130

dev: fabricio
qua: marcelo

Implementação efetuada.

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@88875 d1611594-4594-4d17-8e1d-87c2c4800839
master
emerson 2019-01-15 12:20:45 +00:00
parent bac37126bd
commit 1f3eb3d692
3 changed files with 71 additions and 20 deletions

View File

@ -272,7 +272,7 @@ public class TramoRutaServiceImpl implements TramoRutaService {
s.setTramoServicioId(tramoServicio.getTramoservicioId());
lsSecuenciaRutaTramoRegresoVO.add(new SecuenciaRutaTramoVO(s.getDestino(), s.getOrigen(), s.getVia(), ++secuencia, s.getKmReal(), s.getTiempoRecorrido(),
s.getTramoId(), s.getTramoServicioId(), rutaTramoRegresoVO.getNumRuta(), rutaTramoRegresoVO.getIndSentidoIda(), kmEntradaSaida.containsKey(s.getDestino()) ? kmEntradaSaida.get(s.getDestino()) : BigDecimal.ZERO ));//;s.getKmEntradaSaida()));
s.getTramoId(), s.getTramoServicioId(), rutaTramoRegresoVO.getNumRuta(), rutaTramoRegresoVO.getIndSentidoIda(), kmEntradaSaida.containsKey(s.getDestino()) ? kmEntradaSaida.get(s.getDestino()) : BigDecimal.ZERO ));
} else {
lsSecuenciaRutaTramoRegresoVO.add(new SecuenciaRutaTramoVO(s.getDestino(), s.getOrigen(), s.getVia(), ++secuencia, s.getKmReal(), s.getTiempoRecorrido(), rutaTramoRegresoVO.getNumRuta(), rutaTramoRegresoVO.getIndSentidoIda(),kmEntradaSaida.containsKey(s.getDestino()) ? kmEntradaSaida.get(s.getDestino()) : BigDecimal.ZERO ));
}
@ -311,6 +311,11 @@ public class TramoRutaServiceImpl implements TramoRutaService {
secuenciaRutaTramoCoeficienteVO.setCoeficienteTarifa2(orgaoTramo.getCoeficienteTarifa2());
secuenciaRutaTramoCoeficienteVO.setKmCoeficiente2(orgaoTramo.getKmCoeficiente2());
}
if (orgaoTramo.getCoeficienteTarifa3() != null) {
secuenciaRutaTramoCoeficienteVO.setCoeficienteTarifa3(orgaoTramo.getCoeficienteTarifa3());
secuenciaRutaTramoCoeficienteVO.setKmCoeficiente3(orgaoTramo.getKmCoeficiente3());
}
}
secuenciaRutaTramoCoeficienteVO.setPermiteVenda(s.getPermiteVenda());
@ -323,6 +328,9 @@ public class TramoRutaServiceImpl implements TramoRutaService {
secuenciaRutaTramoCoeficienteVO.setCoeficienteTarifa2(s.getCoeficienteTarifa2());
secuenciaRutaTramoCoeficienteVO.setKmCoeficiente2(s.getKmCoeficiente2());
secuenciaRutaTramoCoeficienteVO.setCoeficienteTarifa3(s.getCoeficienteTarifa3());
secuenciaRutaTramoCoeficienteVO.setKmCoeficiente3(s.getKmCoeficiente3());
secuenciaRutaTramoCoeficienteVO.setPermiteVenda(s.getPermiteVenda());
lsCombinacionRutaTramoRegresoVO.add(secuenciaRutaTramoCoeficienteVO);
@ -397,13 +405,13 @@ public class TramoRutaServiceImpl implements TramoRutaService {
nuevaSecuencia.setKmCoeficiente1(orgaoTramo.getKmCoeficiente1());
nuevaSecuencia.setCoeficienteTarifa2(orgaoTramo.getCoeficienteTarifa2());
nuevaSecuencia.setKmCoeficiente2(orgaoTramo.getKmCoeficiente2());
nuevaSecuencia.setCoeficienteTarifa3(orgaoTramo.getCoeficienteTarifa3());
nuevaSecuencia.setKmCoeficiente3(orgaoTramo.getKmCoeficiente3());
nuevaSecuencia.setOrgaoTramoId(orgaoTramo.getOrgaoTramoId());
}
}
if (nuevaSecuencia.getKmCoeficiente1() == null) {
nuevaSecuencia.setKmCoeficiente1(nuevaSecuencia.getKmReal());
}
incluirCoeficiente(nuevaSecuencia);
nuevaSecuencia.setKmEntradaSaida(kmEntradaSaida.get(destino));
lsSecuenciaCombinacionRutaTramoVO.add(nuevaSecuencia);
@ -414,9 +422,6 @@ public class TramoRutaServiceImpl implements TramoRutaService {
} else {
totalKmsReal = totalKmsReal.add(lsSecuenciaRutaTramoVO.get(j).getKmReal());
}
// if (kmEntradaSaida.containsKey(destino)){
// totalKmsReal = totalKmsReal.add(kmEntradaSaida.get(destino));
// }
totalTiempoRecorrido = totalTiempoRecorrido.sumar(lsSecuenciaRutaTramoVO.get(j).getTiempoRecorrido());
@ -450,12 +455,12 @@ public class TramoRutaServiceImpl implements TramoRutaService {
nuevaSecuencia.setKmCoeficiente1(orgaoTramo.getKmCoeficiente1());
nuevaSecuencia.setCoeficienteTarifa2(orgaoTramo.getCoeficienteTarifa2());
nuevaSecuencia.setKmCoeficiente2(orgaoTramo.getKmCoeficiente2());
nuevaSecuencia.setCoeficienteTarifa3(orgaoTramo.getCoeficienteTarifa3());
nuevaSecuencia.setKmCoeficiente3(orgaoTramo.getKmCoeficiente3());
nuevaSecuencia.setOrgaoTramoId(orgaoTramo.getOrgaoTramoId());
}
}
if (nuevaSecuencia.getKmCoeficiente1() == null) {
nuevaSecuencia.setKmCoeficiente1(nuevaSecuencia.getKmReal());
}
incluirCoeficiente(nuevaSecuencia);
nuevaSecuencia.setNumRuta(rutaTramoVO.getNumRuta());
lsSecuenciaCombinacionRutaTramoVO.add(nuevaSecuencia);
log.debug("Origen:" + nuevaSecuencia.getOrigen() + ";Destino:" + nuevaSecuencia.getDestino() + ";Via:"
@ -466,6 +471,18 @@ public class TramoRutaServiceImpl implements TramoRutaService {
return lsSecuenciaCombinacionRutaTramoVO;
}
private void incluirCoeficiente(SecuenciaRutaTramoCoeficienteVO nuevaSecuencia) {
if (nuevaSecuencia.getKmCoeficiente1() == null) {
nuevaSecuencia.setKmCoeficiente1(nuevaSecuencia.getKmReal());
}
if (nuevaSecuencia.getKmCoeficiente2() == null) {
nuevaSecuencia.setKmCoeficiente2(nuevaSecuencia.getKmReal());
}
if (nuevaSecuencia.getKmCoeficiente3() == null) {
nuevaSecuencia.setKmCoeficiente3(nuevaSecuencia.getKmReal());
}
}
@Override
public List<SecuenciaRutaTramoCoeficienteVO> generarCombinacionTrechoRuta(RutaTramoVO rutaTramoVO, List<ParadaSecuencia> secuenciasDestino) {
// una nueva lista que va a ser ordenada. Con eso, no afecta la lista original
@ -522,6 +539,8 @@ public class TramoRutaServiceImpl implements TramoRutaService {
nuevaSecuencia.setKmCoeficiente1(orgaoTramo.getKmCoeficiente1());
nuevaSecuencia.setCoeficienteTarifa2(orgaoTramo.getCoeficienteTarifa2());
nuevaSecuencia.setKmCoeficiente2(orgaoTramo.getKmCoeficiente2());
nuevaSecuencia.setCoeficienteTarifa3(orgaoTramo.getCoeficienteTarifa3());
nuevaSecuencia.setKmCoeficiente3(orgaoTramo.getKmCoeficiente3());
nuevaSecuencia.setOrgaoTramoId(orgaoTramo.getOrgaoTramoId());
}
}
@ -596,6 +615,11 @@ public class TramoRutaServiceImpl implements TramoRutaService {
orgaoTramo.setKmCoeficiente2(secuencia.getKmCoeficiente2());
}
if (secuencia.getCoeficienteTarifa3() != null) {
orgaoTramo.setCoeficienteTarifa3(secuencia.getCoeficienteTarifa3());
orgaoTramo.setKmCoeficiente3(secuencia.getKmCoeficiente3());
}
orgaoTramo = orgaoTramoDAO.suscribir(orgaoTramo);
}

View File

@ -23,8 +23,9 @@ public class RutaTramoVO {
private List<SecuenciaRutaTramoVO> lsSecuenciaRutaTramoVO;
private List<SecuenciaRutaTramoCoeficienteVO> lsCombinacionRutaTramoVO;
private List<Empresa> lsEmpresa;
private CoeficienteTarifa coeficienteDefaul1;
private CoeficienteTarifa coeficienteDefaul2;
private CoeficienteTarifa coeficienteDefault1;
private CoeficienteTarifa coeficienteDefault2;
private CoeficienteTarifa coeficienteDefault3;
private String prefixo;
private String descRuta;
private Boolean indSentidoIda;
@ -136,20 +137,28 @@ public class RutaTramoVO {
this.indSentidoIda = indSentidoIda;
}
public CoeficienteTarifa getCoeficienteDefaul1() {
return coeficienteDefaul1;
public CoeficienteTarifa getCoeficienteDefault1() {
return coeficienteDefault1;
}
public void setCoeficienteDefaul1(CoeficienteTarifa coeficienteDefaul1) {
this.coeficienteDefaul1 = coeficienteDefaul1;
public void setCoeficienteDefaul1(CoeficienteTarifa coeficienteDefault1) {
this.coeficienteDefault1 = coeficienteDefault1;
}
public CoeficienteTarifa getCoeficienteDefaul2() {
return coeficienteDefaul2;
public CoeficienteTarifa getCoeficienteDefault2() {
return coeficienteDefault2;
}
public void setCoeficienteDefaul2(CoeficienteTarifa coeficienteDefaul2) {
this.coeficienteDefaul2 = coeficienteDefaul2;
public void setCoeficienteDefaul2(CoeficienteTarifa coeficienteDefault2) {
this.coeficienteDefault2 = coeficienteDefault2;
}
public CoeficienteTarifa getCoeficienteDefault3() {
return coeficienteDefault3;
}
public void setCoeficienteDefaul3(CoeficienteTarifa coeficienteDefault3) {
this.coeficienteDefault3 = coeficienteDefault3;
}
public List<ParadaSecuenciaCombinacaoLinha> getLsParadaSecuenciaCombinacaoLinhas() {

View File

@ -24,6 +24,8 @@ public class SecuenciaRutaTramoCoeficienteVO {
private BigDecimal kmCoeficiente1;
private CoeficienteTarifa coeficienteTarifa2;
private BigDecimal kmCoeficiente2;
private CoeficienteTarifa coeficienteTarifa3;
private BigDecimal kmCoeficiente3;
private Boolean permiteVenda;
public SecuenciaRutaTramoCoeficienteVO(Parada origen, Parada destino, Via via, Integer secuencia, BigDecimal kmReal, HoraSistema tiempoRecorrido) {
@ -210,6 +212,22 @@ public class SecuenciaRutaTramoCoeficienteVO {
this.kmCoeficiente2 = kmCoeficiente2;
}
public CoeficienteTarifa getCoeficienteTarifa3() {
return coeficienteTarifa3;
}
public void setCoeficienteTarifa3(CoeficienteTarifa coeficienteTarifa3) {
this.coeficienteTarifa3 = coeficienteTarifa3;
}
public BigDecimal getKmCoeficiente3() {
return kmCoeficiente3;
}
public void setKmCoeficiente3(BigDecimal kmCoeficiente3) {
this.kmCoeficiente3 = kmCoeficiente3;
}
public Boolean getPermiteVenda() {
return permiteVenda;
}