0020761: ESPEC - Criação de 3 três serviços no Doble Decker
bug#20761 dev:fabio qua: git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@104724 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
e12cfc1ded
commit
d16c64c630
|
@ -158,6 +158,9 @@ public class EsquemaCorrida implements Serializable, Auditavel<EsquemaCorrida> {
|
||||||
@Column(name = "NUMCORRIDAPISOEXTRA")
|
@Column(name = "NUMCORRIDAPISOEXTRA")
|
||||||
private Integer numCorridaPisoExtra;
|
private Integer numCorridaPisoExtra;
|
||||||
|
|
||||||
|
@Column(name = "NUMCORRIDAPISOEXTRA2")
|
||||||
|
private Integer numCorridaPisoExtra2;
|
||||||
|
|
||||||
@Column(name = "INDGENERAFERIADO")
|
@Column(name = "INDGENERAFERIADO")
|
||||||
private String indGeneraFeriado;
|
private String indGeneraFeriado;
|
||||||
|
|
||||||
|
@ -759,4 +762,11 @@ public class EsquemaCorrida implements Serializable, Auditavel<EsquemaCorrida> {
|
||||||
return String.format("ID [%s] - Número Serviço [%s]", getEsquemacorridaId(), getNumCorrida());
|
return String.format("ID [%s] - Número Serviço [%s]", getEsquemacorridaId(), getNumCorrida());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Integer getNumCorridaPisoExtra2() {
|
||||||
|
return numCorridaPisoExtra2;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setNumCorridaPisoExtra2(Integer numCorridaPisoExtra2) {
|
||||||
|
this.numCorridaPisoExtra2 = numCorridaPisoExtra2;
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -847,6 +847,7 @@ public class CorridaServiceImpl implements CorridaService {
|
||||||
|
|
||||||
Corrida corrida = generarCorrida(esquemaCorrida, dataGeracao, false, isFeriado);
|
Corrida corrida = generarCorrida(esquemaCorrida, dataGeracao, false, isFeriado);
|
||||||
Corrida corridaPisoExtra = null;
|
Corrida corridaPisoExtra = null;
|
||||||
|
Corrida corridaPisoExtra2 = null;
|
||||||
|
|
||||||
if (corrida == null) {// Si no genera la corrida, no va a
|
if (corrida == null) {// Si no genera la corrida, no va a
|
||||||
// generar el rebote
|
// generar el rebote
|
||||||
|
@ -866,34 +867,28 @@ public class CorridaServiceImpl implements CorridaService {
|
||||||
Boolean atualizarPisoExtra = false;
|
Boolean atualizarPisoExtra = false;
|
||||||
|
|
||||||
// caso corrida segundo piso for gerada antes, atualizar
|
// caso corrida segundo piso for gerada antes, atualizar
|
||||||
if(corridaPisoExtra == null) {
|
atualizarPisoExtra = atualizarCorridaPisoExtra(corridaPisoExtra, esquemaCorridaSegundoPiso, data, mensagemLog, atualizarPisoExtra);
|
||||||
Id id = new Id();
|
|
||||||
id.setCorridaId(esquemaCorridaSegundoPiso.getNumCorrida());
|
|
||||||
id.setFeccorrida(data);
|
|
||||||
|
|
||||||
corridaPisoExtra = corridaDAO.buscarPorId(id);
|
alterarNumPisoCorridaPisoExtra(corrida, corridaPisoExtra, mensagemLog, atualizarPisoExtra, false);
|
||||||
|
|
||||||
atualizarPisoExtra = corridaPisoExtra == null ? false : true;
|
if(esquemaCorrida.getNumCorridaPisoExtra2() != null) {
|
||||||
log.info(mensagemLog + "; atualizarPisoExtra=" + atualizarPisoExtra);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
EsquemaCorrida esquemaCorridaTerceiroPiso = esquemaCorridaDAO.buscarPeloNumCorrida(esquemaCorrida.getNumCorridaPisoExtra2());
|
||||||
|
|
||||||
if (corrida != null && corridaPisoExtra != null) {
|
if(esquemaCorridaTerceiroPiso != null) {
|
||||||
log.info(mensagemLog + "; atualizando as corridas do piso 1 e 2");
|
|
||||||
// Salvando Referencia da Corrida no piso extra
|
|
||||||
corridaPisoExtra.setCorridaPiso(corrida);
|
|
||||||
corridaPisoExtra.setNumPiso(2);
|
|
||||||
corridaPisoExtra = corridaDAO.actualizacion(corridaPisoExtra);
|
|
||||||
// Referencia do Piso extra na Corrida
|
|
||||||
corrida.setCorridaPiso(corridaPisoExtra);
|
|
||||||
corrida.setNumPiso(1);
|
|
||||||
corrida = corridaDAO.actualizacion(corrida);
|
|
||||||
|
|
||||||
if(atualizarPisoExtra) {
|
mensagemLog = String.format("Esquema/Corrida primeiro piso: %s/%s ; Esquema/Corrida terceiro piso: %s/%s ",esquemaCorrida.getEsquemacorridaId(),esquemaCorrida.getNumCorrida(), esquemaCorridaTerceiroPiso.getEsquemacorridaId(),esquemaCorridaTerceiroPiso.getNumCorrida() );
|
||||||
corridaDAO.actualizacion(corridaPisoExtra);
|
log.info(mensagemLog);
|
||||||
|
|
||||||
|
corridaPisoExtra2 = generarCorrida(esquemaCorridaTerceiroPiso, dataGeracao, true, isFeriado);
|
||||||
|
atualizarPisoExtra = false;
|
||||||
|
|
||||||
|
// caso corrida segundo piso for gerada antes, atualizar
|
||||||
|
atualizarPisoExtra = atualizarCorridaPisoExtra(corridaPisoExtra2, esquemaCorridaTerceiroPiso, data, mensagemLog, atualizarPisoExtra);
|
||||||
|
|
||||||
|
// caso corrida segundo piso for gerada antes, atualizar
|
||||||
|
alterarNumPisoCorridaPisoExtra(corrida, corridaPisoExtra2, mensagemLog, atualizarPisoExtra, true);
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
log.info(mensagemLog + "; nao foram atualizadas as corridas do piso 1 e 2");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -964,6 +959,12 @@ public class CorridaServiceImpl implements CorridaService {
|
||||||
corridaPisoExtra.setCorridaRebote(corridaPisoExtraRebote);
|
corridaPisoExtra.setCorridaRebote(corridaPisoExtraRebote);
|
||||||
corridaDAO.actualizacion(corridaPisoExtra);
|
corridaDAO.actualizacion(corridaPisoExtra);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (corridaPisoExtraRebote != null && corridaPisoExtra2 != null) {
|
||||||
|
log.info("Rebote Piso Extra Generado=" + corridaPisoExtraRebote.getId());
|
||||||
|
corridaPisoExtra2.setCorridaRebote(corridaPisoExtraRebote);
|
||||||
|
corridaDAO.actualizacion(corridaPisoExtra2);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -980,6 +981,42 @@ public class CorridaServiceImpl implements CorridaService {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void alterarNumPisoCorridaPisoExtra(Corrida corrida, Corrida corridaPisoExtra, String mensagemLog, Boolean atualizarPisoExtra, boolean isPiso3) {
|
||||||
|
if (corrida != null && corridaPisoExtra != null) {
|
||||||
|
log.info(mensagemLog + "; atualizando as corridas do piso 1 e 2");
|
||||||
|
// Salvando Referencia da Corrida no piso extra
|
||||||
|
corridaPisoExtra.setCorridaPiso(corrida);
|
||||||
|
corridaPisoExtra.setNumPiso(isPiso3 ? 3 : 2);
|
||||||
|
corridaPisoExtra = corridaDAO.actualizacion(corridaPisoExtra);
|
||||||
|
// Referencia do Piso extra na Corrida
|
||||||
|
corrida.setCorridaPiso(corridaPisoExtra);
|
||||||
|
corrida.setNumPiso(1);
|
||||||
|
corrida = corridaDAO.actualizacion(corrida);
|
||||||
|
|
||||||
|
if(atualizarPisoExtra) {
|
||||||
|
corridaDAO.actualizacion(corridaPisoExtra);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
log.info(mensagemLog + "; nao foram atualizadas as corridas do piso 1 e 2");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private Boolean atualizarCorridaPisoExtra(Corrida corridaPisoExtra, EsquemaCorrida esquemaCorridaSegundoPiso, java.sql.Date data, String mensagemLog, Boolean atualizarPisoExtra) {
|
||||||
|
// caso corrida segundo piso for gerada antes, atualizar
|
||||||
|
if(corridaPisoExtra == null) {
|
||||||
|
Id id = new Id();
|
||||||
|
id.setCorridaId(esquemaCorridaSegundoPiso.getNumCorrida());
|
||||||
|
id.setFeccorrida(data);
|
||||||
|
|
||||||
|
corridaPisoExtra = corridaDAO.buscarPorId(id);
|
||||||
|
|
||||||
|
atualizarPisoExtra = corridaPisoExtra == null ? false : true;
|
||||||
|
log.info(mensagemLog + "; atualizarPisoExtra=" + atualizarPisoExtra);
|
||||||
|
}
|
||||||
|
|
||||||
|
return atualizarPisoExtra;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Verifica se hay una excepcione de tiempo para el tramo informado.
|
* Verifica se hay una excepcione de tiempo para el tramo informado.
|
||||||
*
|
*
|
||||||
|
|
Loading…
Reference in New Issue