Merge pull request 'fixes bug #AL-3494' (!392) from AL-3494 into master

Reviewed-on: adm/VentaBoletosAdm#392
Reviewed-by: fabio <fabio.faria@rjconsultores.com.br>
master 1.51.0
pinheiro 2024-02-19 13:05:49 +00:00
commit 3132dc5f7d
3 changed files with 184 additions and 40 deletions

View File

@ -4,11 +4,11 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>br.com.rjconsultores</groupId> <groupId>br.com.rjconsultores</groupId>
<artifactId>ventaboletosadm</artifactId> <artifactId>ventaboletosadm</artifactId>
<version>1.50.1</version> <version>1.51.0</version>
<packaging>war</packaging> <packaging>war</packaging>
<properties> <properties>
<modelWeb.version>1.37.0</modelWeb.version> <modelWeb.version>1.38.0</modelWeb.version>
<flyway.version>1.28.0</flyway.version> <flyway.version>1.28.0</flyway.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

View File

@ -20,7 +20,6 @@ import org.apache.commons.lang.BooleanUtils;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang.math.NumberUtils; import org.apache.commons.lang.math.NumberUtils;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope; import org.springframework.context.annotation.Scope;
import org.springframework.dao.DataIntegrityViolationException; import org.springframework.dao.DataIntegrityViolationException;
@ -29,6 +28,7 @@ import org.zkoss.util.resource.Labels;
import org.zkoss.zhtml.Messagebox; import org.zkoss.zhtml.Messagebox;
import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Executions; import org.zkoss.zk.ui.Executions;
import org.zkoss.zk.ui.SuspendNotAllowedException;
import org.zkoss.zk.ui.WrongValueException; import org.zkoss.zk.ui.WrongValueException;
import org.zkoss.zk.ui.event.Event; import org.zkoss.zk.ui.event.Event;
import org.zkoss.zk.ui.event.EventListener; import org.zkoss.zk.ui.event.EventListener;
@ -75,6 +75,7 @@ import com.rjconsultores.ventaboletos.service.ClaseServicioService;
import com.rjconsultores.ventaboletos.service.ConstanteService; import com.rjconsultores.ventaboletos.service.ConstanteService;
import com.rjconsultores.ventaboletos.service.CorridaInfoService; import com.rjconsultores.ventaboletos.service.CorridaInfoService;
import com.rjconsultores.ventaboletos.service.CorridaService; import com.rjconsultores.ventaboletos.service.CorridaService;
import com.rjconsultores.ventaboletos.service.CorridaTramoService;
import com.rjconsultores.ventaboletos.service.DisponibilidadService; import com.rjconsultores.ventaboletos.service.DisponibilidadService;
import com.rjconsultores.ventaboletos.service.DivisionService; import com.rjconsultores.ventaboletos.service.DivisionService;
import com.rjconsultores.ventaboletos.service.EmpresaService; import com.rjconsultores.ventaboletos.service.EmpresaService;
@ -95,6 +96,7 @@ import com.rjconsultores.ventaboletos.utilerias.ApplicationProperties;
import com.rjconsultores.ventaboletos.utilerias.CustomEnum; import com.rjconsultores.ventaboletos.utilerias.CustomEnum;
import com.rjconsultores.ventaboletos.utilerias.DateUtil; import com.rjconsultores.ventaboletos.utilerias.DateUtil;
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
import com.rjconsultores.ventaboletos.vo.esquemaoperacional.ItemEditarCorridaTramo;
import com.rjconsultores.ventaboletos.vo.esquemaoperacional.TarefaGeracaoCorridaVO; import com.rjconsultores.ventaboletos.vo.esquemaoperacional.TarefaGeracaoCorridaVO;
import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer;
import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; import com.rjconsultores.ventaboletos.web.utilerias.MyListbox;
@ -164,6 +166,8 @@ public class EditarCorridaController extends MyGenericForwardComposer {
@Autowired @Autowired
private ConstanteService constanteService; private ConstanteService constanteService;
@Autowired
private CorridaTramoService corridaTramoService;
//Radio //Radio
private Radio porBloq; private Radio porBloq;
@ -290,6 +294,7 @@ public class EditarCorridaController extends MyGenericForwardComposer {
private EsquemaCorrida esquemaCorrida; private EsquemaCorrida esquemaCorrida;
private Date dataInicialFiltroCorridaExistente; private Date dataInicialFiltroCorridaExistente;
private Date dataFinalFiltroCorridaExistente; private Date dataFinalFiltroCorridaExistente;
private List<ItemEditarCorridaTramo> itemEditarCorridaTramoList;
private Button btnCancelarRetomar; private Button btnCancelarRetomar;
@ -301,6 +306,7 @@ public class EditarCorridaController extends MyGenericForwardComposer {
salvar = true; salvar = true;
cmbRuta.setItemRenderer(new MyComboRutaRenderer()); cmbRuta.setItemRenderer(new MyComboRutaRenderer());
popularCombobox(cmbIndGeneraFeriado); popularCombobox(cmbIndGeneraFeriado);
itemEditarCorridaTramoList = new ArrayList<ItemEditarCorridaTramo>();
esquemaCorridaEmbarqueDesembarqueListbox.setItemRenderer(new RenderEsquemaCorridaEmbarqueDesembarque()); esquemaCorridaEmbarqueDesembarqueListbox.setItemRenderer(new RenderEsquemaCorridaEmbarqueDesembarque());
lstTrechosInformacaoCorridaListbox.setItemRenderer(new RenderCorridaInfomacaoTramo()); lstTrechosInformacaoCorridaListbox.setItemRenderer(new RenderCorridaInfomacaoTramo());
@ -1001,46 +1007,117 @@ public class EditarCorridaController extends MyGenericForwardComposer {
Date dataIter = Date.from(date.atStartOfDay(ZoneId.systemDefault()).toInstant()); Date dataIter = Date.from(date.atStartOfDay(ZoneId.systemDefault()).toInstant());
try { try {
//1 - Validar se corrida existe vendas disponíveis //1 - Validar se corrida existe vendas disponíveis
if(boletoService.isExisteBoletoPorCorrida(esquemaCorrida.getNumCorrida(), dataIter)) { //if(boletoService.isExisteBoletoPorCorrida(esquemaCorrida.getNumCorrida(), dataIter)) {
String msgErro = "Corrida não será gerada novamente. Existem vendas para a corrida:" + esquemaCorrida.getNumCorrida() + " na data:" + DateUtil.getStringDate(dataIter); // String msgErro = "Corrida não será gerada novamente. Existem vendas para a corrida:" + esquemaCorrida.getNumCorrida() + " na data:" + DateUtil.getStringDate(dataIter);
log.error("Geração de corrida via Conf. " + msgErro); // log.error("Geração de corrida via Conf. " + msgErro);
TarefaGeracaoCorridaVO tarefa = new TarefaGeracaoCorridaVO(msgErro, "ERRO", "ERRO"); // TarefaGeracaoCorridaVO tarefa = new TarefaGeracaoCorridaVO(msgErro, "ERRO", "ERRO");
tarefaErros.add(tarefa); // tarefaErros.add(tarefa);
continue; // continue;
} //}
//Valida Pìso Extra tem boletos vendidos //Valida Pìso Extra tem boletos vendidos
if(Boolean.TRUE.equals(esquemaCorrida.getPisoExtra()) && boletoService.isExisteBoletoPorCorrida(esquemaCorrida.getNumCorridaPisoExtra(), dataIter)) { //if(Boolean.TRUE.equals(esquemaCorrida.getPisoExtra()) && boletoService.isExisteBoletoPorCorrida(esquemaCorrida.getNumCorridaPisoExtra(), dataIter)) {
String msgErro = "Não econtrado corrida:" + esquemaCorrida.getNumCorrida() + " para a data:" + DateUtil.getStringDate(dataIter); // String msgErro = "Não econtrado corrida:" + esquemaCorrida.getNumCorrida() + " para a data:" + DateUtil.getStringDate(dataIter);
// log.error("Geração de corrida via Conf. " + msgErro);
// TarefaGeracaoCorridaVO tarefa = new TarefaGeracaoCorridaVO(msgErro, "ERRO", "ERRO");
// tarefaErros.add(tarefa);
// continue;
//}
//Aqui chegará um objeto CorridaTramo com as alterações realizadas
for(ItemEditarCorridaTramo itemEditarCorridaTramo: itemEditarCorridaTramoList) {
//2 - Valida existe boleto para origem
itemEditarCorridaTramo.setCorridaId(esquemaCorrida.getNumCorrida());
itemEditarCorridaTramo.setFecCorrida(dataIter);
itemEditarCorridaTramo.setAutobus(esquemaCorrida.getAutoBus());
itemEditarCorridaTramo.setClaseServicio(esquemaCorrida.getClaseServicio());
itemEditarCorridaTramo.setStatusCorrida(esquemaCorrida.getStatusCorrida());
if(esquemaCorrida!=null && esquemaCorrida.getRuta()!=null) {
// parada origem
Parada origen = rutaService.getOrigem(esquemaCorrida.getRuta());
if (origen == null) {
log.info("origen nao encontrado para a ruta = " + esquemaCorrida.getRuta().getRutaId());
}
itemEditarCorridaTramo.setNodo((origen == null) ? null : origen.getNodo());
}
if(boletoService.isExisteBoletoPorCorridaOrigemIdOuDestinoId(esquemaCorrida.getNumCorrida(), dataIter, itemEditarCorridaTramo.getParadaId(), itemEditarCorridaTramo.getParadaId())) {
String msgErro = "Trecho com origem/destino: " + itemEditarCorridaTramo.getDescParada() + " não pode ser alterdo" + ". Existem vendas para essa localidade da corrida:" + esquemaCorrida.getNumCorrida() + " na data:" + DateUtil.getStringDate(dataIter);
log.error("Geração de corrida via Conf. " + msgErro); log.error("Geração de corrida via Conf. " + msgErro);
TarefaGeracaoCorridaVO tarefa = new TarefaGeracaoCorridaVO(msgErro, "ERRO", "ERRO"); TarefaGeracaoCorridaVO tarefa = new TarefaGeracaoCorridaVO(msgErro, "ERRO", "ERRO");
tarefaErros.add(tarefa); tarefaErros.add(tarefa);
continue; continue;
} }
//Valida e apaga corrida caso exista //Valida Pìso Extra tem boletos vendidos para origem
TarefaGeracaoCorridaVO tarefaErro= validaApagaCorridaAgerar(esquemaCorrida.getNumCorrida(), dataIter); if(Boolean.TRUE.equals(esquemaCorrida.getPisoExtra()) && boletoService.isExisteBoletoPorCorridaOrigemIdOuDestinoId(esquemaCorrida.getNumCorridaPisoExtra(), dataIter, itemEditarCorridaTramo.getParadaId(), itemEditarCorridaTramo.getParadaId())) {
if(tarefaErro !=null) { String msgErro = "Trecho com origem/destino: " + itemEditarCorridaTramo.getDescParada() + " não pode ser alterdo" + ". Existem vendas para essa localidade da corrida:" + esquemaCorrida.getNumCorrida() + " na data:" + DateUtil.getStringDate(dataIter);
tarefaErros.add(tarefaErro); log.error("Geração de corrida via Conf. " + msgErro);
TarefaGeracaoCorridaVO tarefa = new TarefaGeracaoCorridaVO(msgErro, "ERRO", "ERRO");
tarefaErros.add(tarefa);
continue; continue;
} }
//Valida e apaga corrida piso extra caso exista if(itemEditarCorridaTramo !=null) {
if(esquemaCorrida.getNumCorridaPisoExtra()!=null) { if(itemEditarCorridaTramo.isTramoEditado()) {
tarefaErro= validaApagaCorridaAgerar(esquemaCorrida.getNumCorridaPisoExtra(), dataIter); if(!corridaTramoService.atualizaCorridaTramo(itemEditarCorridaTramo)) {
if(tarefaErro !=null) { String msgErro = "Trecho não será atualizado. Houve algu,m erro ao atualizar corridaTramo(parada_id): " + itemEditarCorridaTramo.getParadaId() +" da corrida:" + esquemaCorrida.getNumCorrida() + " na data:" + DateUtil.getStringDate(dataIter);
tarefaErros.add(tarefaErro); log.error("Geração de corrida via Conf. " + msgErro);
TarefaGeracaoCorridaVO tarefa = new TarefaGeracaoCorridaVO(msgErro, "ERRO", "ERRO");
continue;
}
}else if(itemEditarCorridaTramo.isAdicionado()) {
corridaTramoService.adicionaCorridaTramo(itemEditarCorridaTramo, esquemaCorrida,dataIter);
}else if(itemEditarCorridaTramo.isExcluido()) {
corridaTramoService.excluiCorridaTramo(itemEditarCorridaTramo);
} }
} }
// Gerar corrida novamente.
List<EsquemaCorrida> esquemaCorridaList = new ArrayList<EsquemaCorrida>();
esquemaCorridaList.add(esquemaCorrida);
corridaService.generarCorrida(dataIter, esquemaCorridaList, false);
String msgSucesso = "Corrida para a data " + DateUtil.getStringDate(dataIter) + " gerada com sucesso"; String msgSucesso = "Corrida para a data " + DateUtil.getStringDate(dataIter) + " gerada com sucesso";
TarefaGeracaoCorridaVO tarefa = new TarefaGeracaoCorridaVO(msgSucesso, "OK", "OK" ); TarefaGeracaoCorridaVO tarefa = new TarefaGeracaoCorridaVO(msgSucesso, "OK", "OK" );
tarefaSucesso.add(tarefa); tarefaSucesso.add(tarefa);
}
//1 - busca corridatramos da corrida
//3 - Valida existe venda para destino
//4 - Carrega os trechos da linha, caso algum tenha sido removido nas configurações do esquema corrida
//5 - inativa corrida_tramo
//6 - insere corrida tramo novamente recalculando da hora de saida e chegada de acordo com tempoEstancia (tempo que que o serviço fica na parada)
//Valida e apaga corrida caso exista
//TarefaGeracaoCorridaVO tarefaErro= validaApagaCorridaAgerar(esquemaCorrida.getNumCorrida(), dataIter);
//if(tarefaErro !=null) {
// tarefaErros.add(tarefaErro);
// continue;
//}
//Valida e apaga corrida piso extra caso exista
//if(esquemaCorrida.getNumCorridaPisoExtra()!=null) {
// tarefaErro= validaApagaCorridaAgerar(esquemaCorrida.getNumCorridaPisoExtra(), dataIter);
// if(tarefaErro !=null) {
// tarefaErros.add(tarefaErro);
// }
//}
// Gerar corrida novamente.
//List<EsquemaCorrida> esquemaCorridaList = new ArrayList<EsquemaCorrida>();
//esquemaCorridaList.add(esquemaCorrida);
//corridaService.generarCorrida(dataIter, esquemaCorridaList, false);
//String msgSucesso = "Corrida para a data " + DateUtil.getStringDate(dataIter) + " gerada com sucesso";
//TarefaGeracaoCorridaVO tarefa = new TarefaGeracaoCorridaVO(msgSucesso, "OK", "OK" );
//tarefaSucesso.add(tarefa);
}catch (Exception e) { }catch (Exception e) {
String msgErro = "Erro ao regerar a corrida:" + esquemaCorrida.getNumCorrida() + "para a data:" + DateUtil.getStringDate(dataIter); String msgErro = "Erro ao regerar a corrida:" + esquemaCorrida.getNumCorrida() + " para a data:" + DateUtil.getStringDate(dataIter);
log.error("Geração de corrida via Conf. " + msgErro, e); log.error("Geração de corrida via Conf. " + msgErro, e);
TarefaGeracaoCorridaVO tarefa = new TarefaGeracaoCorridaVO(msgErro, "ERRO", "ERRO"); TarefaGeracaoCorridaVO tarefa = new TarefaGeracaoCorridaVO(msgErro, "ERRO", "ERRO");
tarefaErros.add(tarefa); tarefaErros.add(tarefa);
@ -1386,7 +1463,13 @@ public class EditarCorridaController extends MyGenericForwardComposer {
// Ruta Secuencia // Ruta Secuencia
lsEsquemaTramo = adicionarParadaEsquemaTramo(lsParadaEsquema, (Parada) cmbTramo.getSelectedItem().getValue(), esquemaCorrida, (Ruta) cmbRuta.getSelectedItem().getValue(), plataforma, tipoPassagem); Parada paradaAlterada = (Parada) cmbTramo.getSelectedItem().getValue();
lsEsquemaTramo = adicionarParadaEsquemaTramo(lsParadaEsquema,paradaAlterada , esquemaCorrida, (Ruta) cmbRuta.getSelectedItem().getValue(), plataforma, tipoPassagem);
ItemEditarCorridaTramo itemEditarCorridaTramo = new ItemEditarCorridaTramo();
itemEditarCorridaTramo.setLsEsquemaTramoNova(lsEsquemaTramo);
itemEditarCorridaTramo.setAdicionado(true);
itemEditarCorridaTramo.setParadaId(paradaAlterada!=null ? paradaAlterada.getParadaId():null);
itemEditarCorridaTramo.setDescParada(paradaAlterada.getDescparada());
esquemaCorrida.setEsquemaTramoList(lsEsquemaTramo); esquemaCorrida.setEsquemaTramoList(lsEsquemaTramo);
carregarParadaSecuencia(lsEsquemaTramo); carregarParadaSecuencia(lsEsquemaTramo);
cmbTramo.setSelectedItem(null); cmbTramo.setSelectedItem(null);
@ -1520,9 +1603,37 @@ public class EditarCorridaController extends MyGenericForwardComposer {
args.put("paradaEsquema", pe); args.put("paradaEsquema", pe);
args.put("esquemaTramoList", esquemaTramoList); args.put("esquemaTramoList", esquemaTramoList);
args.put("sequenciaSize", sequenciaSize); args.put("sequenciaSize", sequenciaSize);
ItemEditarCorridaTramo itemEditarCorridaTramo = new ItemEditarCorridaTramo();
args.put("itemEditarCorridaTramo", itemEditarCorridaTramo);
openWindow("/gui/esquema_operacional/tiempoEstanciaTramo.zul", try {
Labels.getLabel("editarCatalogoDeRutaController.lhTiempoEstancia"), args, MODAL);
Window dialog = (Window)Executions.createComponents(
"/gui/esquema_operacional/tiempoEstanciaTramo.zul", null, args);
dialog.doModal();
} catch (SuspendNotAllowedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//openWindow("/gui/esquema_operacional/tiempoEstanciaTramo.zul",
// Labels.getLabel("editarCatalogoDeRutaController.lhTiempoEstancia"), args, MODAL);
itemEditarCorridaTramo = (ItemEditarCorridaTramo) args.get("itemEditarCorridaTramo");
if(itemEditarCorridaTramo!=null && itemEditarCorridaTramo.isTramoEditado()) {
itemEditarCorridaTramo.setParadaId(pe.getParada().getParadaId());
itemEditarCorridaTramo.setTramoEditado(true);
if(itemEditarCorridaTramoList ==null) {
itemEditarCorridaTramoList = new ArrayList<ItemEditarCorridaTramo>();
}
itemEditarCorridaTramoList.add(itemEditarCorridaTramo);
}
} }
public void onChange$cmbRuta(Event ev) { public void onChange$cmbRuta(Event ev) {
@ -1569,6 +1680,12 @@ public class EditarCorridaController extends MyGenericForwardComposer {
Messagebox.OK, Messagebox.EXCLAMATION); Messagebox.OK, Messagebox.EXCLAMATION);
} }
lsEsquemaTramo = generaEsquemaTramoCorrecto(lsParadaEsquema, esquemaCorrida); lsEsquemaTramo = generaEsquemaTramoCorrecto(lsParadaEsquema, esquemaCorrida);
ItemEditarCorridaTramo itemEditarCorridaTramo = new ItemEditarCorridaTramo();
itemEditarCorridaTramo.setParadaId(pe.getParada().getParadaId());
itemEditarCorridaTramo.setDescParada(pe.getParada().getDescparada());
itemEditarCorridaTramo.setExcluido(true);
itemEditarCorridaTramoList.add(itemEditarCorridaTramo);
itemEditarCorridaTramo.setLsEsquemaTramoNova(lsEsquemaTramo);
selecionarRutaSequenciaForaEsqCorrida(); selecionarRutaSequenciaForaEsqCorrida();
} catch (Exception e) { } catch (Exception e) {
@ -1643,6 +1760,7 @@ public class EditarCorridaController extends MyGenericForwardComposer {
List<ParadaEsquema> listParadaEsquemaComNovaParada = new ArrayList<ParadaEsquema>(); List<ParadaEsquema> listParadaEsquemaComNovaParada = new ArrayList<ParadaEsquema>();
Short secuencia = 0; Short secuencia = 0;
boolean nuevoAgregado = false; boolean nuevoAgregado = false;
boolean noExisteTramoAsociado = listParadaEsquema.isEmpty();// es la boolean noExisteTramoAsociado = listParadaEsquema.isEmpty();// es la
@ -1650,6 +1768,7 @@ public class EditarCorridaController extends MyGenericForwardComposer {
// vez // vez
Integer indiceSecuencia = null; Integer indiceSecuencia = null;
for (int i = 0; i < lsRutaSecuencia.size(); i++) { for (int i = 0; i < lsRutaSecuencia.size(); i++) {
ItemEditarCorridaTramo itemEditarCorridaTramo = new ItemEditarCorridaTramo();
RutaSecuencia rutaSecuencia = lsRutaSecuencia.get(i); RutaSecuencia rutaSecuencia = lsRutaSecuencia.get(i);
if (rutaSecuencia.getTramo().getOrigem().equals(novaParada)) { if (rutaSecuencia.getTramo().getOrigem().equals(novaParada)) {
ParadaEsquema paradaEsquema = new ParadaEsquema(); ParadaEsquema paradaEsquema = new ParadaEsquema();
@ -1659,7 +1778,10 @@ public class EditarCorridaController extends MyGenericForwardComposer {
paradaEsquema.setParada(novaParada); paradaEsquema.setParada(novaParada);
paradaEsquema.setPlataforma(plataforma); paradaEsquema.setPlataforma(plataforma);
paradaEsquema.setTipoPassagem(tipoPassagem); paradaEsquema.setTipoPassagem(tipoPassagem);
itemEditarCorridaTramo.setParadaId(novaParada.getParadaId());
itemEditarCorridaTramo.setDescParada(novaParada.getDescparada());
itemEditarCorridaTramo.setAdicionado(true);
itemEditarCorridaTramoList.add(itemEditarCorridaTramo);
listParadaEsquemaComNovaParada.add(paradaEsquema); listParadaEsquemaComNovaParada.add(paradaEsquema);
nuevoAgregado = true; nuevoAgregado = true;
indiceSecuencia = i; indiceSecuencia = i;
@ -1675,6 +1797,7 @@ public class EditarCorridaController extends MyGenericForwardComposer {
} }
} }
} }
ItemEditarCorridaTramo itemEditarCorridaTramo = new ItemEditarCorridaTramo();
if (noExisteTramoAsociado) { if (noExisteTramoAsociado) {
if (indiceSecuencia != null) { if (indiceSecuencia != null) {
if ((lsRutaSecuencia.size() - 1) > indiceSecuencia) { if ((lsRutaSecuencia.size() - 1) > indiceSecuencia) {
@ -1686,6 +1809,9 @@ public class EditarCorridaController extends MyGenericForwardComposer {
paradaEsquema.setParada(rutaSecuencia.getTramo().getDestino()); paradaEsquema.setParada(rutaSecuencia.getTramo().getDestino());
paradaEsquema.setPlataforma(plataforma); paradaEsquema.setPlataforma(plataforma);
listParadaEsquemaComNovaParada.add(paradaEsquema); listParadaEsquemaComNovaParada.add(paradaEsquema);
itemEditarCorridaTramo.setParadaId(novaParada.getParadaId());
itemEditarCorridaTramo.setAdicionado(true);
itemEditarCorridaTramoList.add(itemEditarCorridaTramo);
} }
} }
} }
@ -1699,6 +1825,9 @@ public class EditarCorridaController extends MyGenericForwardComposer {
paradaEsquema.setTipoPassagem(tipoPassagem); paradaEsquema.setTipoPassagem(tipoPassagem);
listParadaEsquemaComNovaParada.add(paradaEsquema); listParadaEsquemaComNovaParada.add(paradaEsquema);
itemEditarCorridaTramo.setParadaId(novaParada.getParadaId());
itemEditarCorridaTramo.setAdicionado(true);
itemEditarCorridaTramoList.add(itemEditarCorridaTramo);
} }
if (!listParadaEsquema.isEmpty()) { if (!listParadaEsquema.isEmpty()) {
secuencia++; secuencia++;

View File

@ -21,6 +21,7 @@ import org.zkoss.zul.api.Spinner;
import com.rjconsultores.ventaboletos.entidad.EsquemaTramo; import com.rjconsultores.ventaboletos.entidad.EsquemaTramo;
import com.rjconsultores.ventaboletos.entidad.ParadaEsquema; import com.rjconsultores.ventaboletos.entidad.ParadaEsquema;
import com.rjconsultores.ventaboletos.utilerias.DateUtil; import com.rjconsultores.ventaboletos.utilerias.DateUtil;
import com.rjconsultores.ventaboletos.vo.esquemaoperacional.ItemEditarCorridaTramo;
import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer;
import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; import com.rjconsultores.ventaboletos.web.utilerias.MyListbox;
@ -47,6 +48,7 @@ public class TiempoEstanciaEsquemaTramoController extends MyGenericForwardCompos
private Radio emPe; private Radio emPe;
private Radio ambos; private Radio ambos;
private Radio naoVende; private Radio naoVende;
public ItemEditarCorridaTramo itemEditarCorridaTramo;
// private Boolean primeraSequencia; // private Boolean primeraSequencia;
@ -98,6 +100,7 @@ public class TiempoEstanciaEsquemaTramoController extends MyGenericForwardCompos
paradaEsquema = (ParadaEsquema) Executions.getCurrent().getArg().get("paradaEsquema"); paradaEsquema = (ParadaEsquema) Executions.getCurrent().getArg().get("paradaEsquema");
esquemaTramoList = (MyListbox) Executions.getCurrent().getArg().get("esquemaTramoList"); esquemaTramoList = (MyListbox) Executions.getCurrent().getArg().get("esquemaTramoList");
sequenciaSize = (Short) Executions.getCurrent().getArg().get("sequenciaSize"); sequenciaSize = (Short) Executions.getCurrent().getArg().get("sequenciaSize");
itemEditarCorridaTramo = (ItemEditarCorridaTramo) Executions.getCurrent().getArg().get("itemEditarCorridaTramo");
if (paradaEsquema.getNumsecuencia().equals(Short.valueOf("1"))) { if (paradaEsquema.getNumsecuencia().equals(Short.valueOf("1"))) {
spHora.setDisabled(true); spHora.setDisabled(true);
@ -157,7 +160,6 @@ public class TiempoEstanciaEsquemaTramoController extends MyGenericForwardCompos
public void onClick$btnSalvar(Event ev) { public void onClick$btnSalvar(Event ev) {
Date dataHorInicioSistema = DateUtil.getFecInicio().getTime(); Date dataHorInicioSistema = DateUtil.getFecInicio().getTime();
if (!paradaEsquema.getNumsecuencia().equals(Short.valueOf("1"))) { if (!paradaEsquema.getNumsecuencia().equals(Short.valueOf("1"))) {
Date tiempoEstancia = DateUtil.getFecInicio(spHora.getValue(), spMinuto.getValue()).getTime(); Date tiempoEstancia = DateUtil.getFecInicio(spHora.getValue(), spMinuto.getValue()).getTime();
@ -168,6 +170,7 @@ public class TiempoEstanciaEsquemaTramoController extends MyGenericForwardCompos
esquemaTramo.setTiempoEstancia(tiempoEstancia); esquemaTramo.setTiempoEstancia(tiempoEstancia);
paradaEsquema.setTiempoEstancia(tiempoEstancia); paradaEsquema.setTiempoEstancia(tiempoEstancia);
} }
itemEditarCorridaTramo.setTempoEstancia(tiempoEstancia);
} }
Date excepcionRecorrido = DateUtil.getFecInicio(spHoraExcepcion.getValue() == null? 0:spHoraExcepcion.getValue(), spMinutoExcepcion.getValue()== null? 0:spMinutoExcepcion.getValue()).getTime(); Date excepcionRecorrido = DateUtil.getFecInicio(spHoraExcepcion.getValue() == null? 0:spHoraExcepcion.getValue(), spMinutoExcepcion.getValue()== null? 0:spMinutoExcepcion.getValue()).getTime();
@ -178,9 +181,14 @@ public class TiempoEstanciaEsquemaTramoController extends MyGenericForwardCompos
esquemaTramo.setExcepcionRecorrido(excepcionRecorrido); esquemaTramo.setExcepcionRecorrido(excepcionRecorrido);
paradaEsquema.setExcepcionRecorrido(excepcionRecorrido); paradaEsquema.setExcepcionRecorrido(excepcionRecorrido);
} }
itemEditarCorridaTramo.setTempoExcecao(excepcionRecorrido);
if (!paradaEsquema.getNumsecuencia().equals(sequenciaSize)) { if (!paradaEsquema.getNumsecuencia().equals(sequenciaSize)) {
String plataforma = txtPlataforma.getValue(); String plataforma = txtPlataforma.getValue();
if(plataforma!=null && !plataforma.equals(paradaEsquema.getPlataforma()) ) {
itemEditarCorridaTramo.setPlataforma(plataforma);
itemEditarCorridaTramo.setTramoEditado(true);
}
esquemaTramo.setPlataforma(plataforma); esquemaTramo.setPlataforma(plataforma);
paradaEsquema.setPlataforma(plataforma); paradaEsquema.setPlataforma(plataforma);
@ -194,6 +202,10 @@ public class TiempoEstanciaEsquemaTramoController extends MyGenericForwardCompos
} else { } else {
tipoPassagem = "A"; tipoPassagem = "A";
} }
if(tipoPassagem!=null && !tipoPassagem.equals(paradaEsquema.getTipoPassagem())) {
itemEditarCorridaTramo.setTipoPassagem(tipoPassagem);
itemEditarCorridaTramo.setTramoEditado(true);
}
esquemaTramo.setTipoPassagem(tipoPassagem); esquemaTramo.setTipoPassagem(tipoPassagem);
paradaEsquema.setTipoPassagem(tipoPassagem); paradaEsquema.setTipoPassagem(tipoPassagem);
} }
@ -207,6 +219,9 @@ public class TiempoEstanciaEsquemaTramoController extends MyGenericForwardCompos
} }
} }
//Executions.getCurrent().getArg().clear();
//Executions.getCurrent().getArg().put("itemEditarCorridaTramo", itemEditarCorridaTramo);
closeWindow(); closeWindow();
} }
} }