eduardo.dicarde 2017-05-15 15:54:02 +00:00
parent b04e81dd37
commit 0727c38ba6
4 changed files with 142 additions and 61 deletions

View File

@ -167,6 +167,7 @@ public class EditarCatalogoDeRutaController extends MyGenericForwardComposer
private Window winEditarRuta;
private List<ParadaSecuencia> sequenciasInformadas;
private Button btnCancelarRetomar;
private Boolean claseAlterada = Boolean.FALSE;
List<RutaCombinacion> lsRutacComb;
List<RutaSecuencia> lsRutaSec;
@ -527,17 +528,23 @@ public class EditarCatalogoDeRutaController extends MyGenericForwardComposer
@SuppressWarnings({ "unchecked", "rawtypes" })
public void onClick$btnAdicionarSecuencia(Event ev) throws InterruptedException {
cmbVia.getValue();
try {
// Para uma ruta já existente, só é possí­vel adicionar paradas
// entre a origem inicial e destino final.
if (ruta.getRutaId() != null) {
if ((numSecuencia.getValue() == 1) || (numSecuencia.getValue() > lsParadasSequencia.size())) {
if (ruta.getRutaId() == null && ruta.getIsClone()) {
Messagebox.show(Labels.getLabel("editarCatalogoDeRutaController.MSG.IncluirSequenciaRutaCloneError"),
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return;
}
if (ruta.getRutaId() != null && ((numSecuencia.getValue() == 1) || (numSecuencia.getValue() > lsParadasSequencia.size()))) {
Messagebox.show(Labels.getLabel("editarCatalogoDeRutaController.msg.cambioSecuencia"),
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return;
}
}
cmbParada.getSelectedItem();
Parada parada = (Parada) cmbParada.getSelectedItem().getValue();
@ -625,7 +632,14 @@ public class EditarCatalogoDeRutaController extends MyGenericForwardComposer
try {
ParadaSecuencia paradaSecuencia = (ParadaSecuencia) rutaSecuenciaList.getSelected();
if (paradaSecuencia != null) {
if (ruta.getRutaId() == null && ruta.getIsClone()) {
Messagebox.show(Labels.getLabel("editarCatalogoDeRutaController.MSG.ExcluirSequenciaRutaCloneError"),
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return;
}
if (ruta.getRutaId() != null) {
List<Integer> lsEsquemas = esquemaCorridaService.existe(ruta, paradaSecuencia.getParada().getParadaId());
if (!lsEsquemas.isEmpty()) {
@ -679,6 +693,15 @@ public class EditarCatalogoDeRutaController extends MyGenericForwardComposer
public void onClick$btnAdicionarEmpresaRuta(Event ev) {
try {
if (ruta.getRutaId() == null && ruta.getIsClone()) {
Messagebox.show(Labels.getLabel("editarCatalogoDeRutaController.MSG.IncluirEmpresaRutaCloneError"),
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return;
}
Comboitem cbiEmpresa = cmbEmpresa.getSelectedItem();
if (cbiEmpresa != null) {
@ -717,7 +740,15 @@ public class EditarCatalogoDeRutaController extends MyGenericForwardComposer
}
}
public void onClick$btnRemoverEmpresaRuta(Event ev) {
public void onClick$btnRemoverEmpresaRuta(Event ev) throws InterruptedException {
if (ruta.getRutaId() == null && ruta.getIsClone()) {
Messagebox.show(Labels.getLabel("editarCatalogoDeRutaController.MSG.ExcluirEmpresaRutaCloneError"),
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK, Messagebox.EXCLAMATION);
return;
}
RutaEmpresa rutaEmpresa = (RutaEmpresa) rutaEmpresaList.getSelected();
if (rutaEmpresa != null) {
rutaEmpresa.setActivo(Boolean.FALSE);
@ -783,6 +814,7 @@ public class EditarCatalogoDeRutaController extends MyGenericForwardComposer
Messagebox.show(Labels.getLabel("editarCatalogoDeRutaController.msg.linhaDesativada"));
return;
}
salvarRuta(Labels.getLabel("editarCatalogoDeRutaController.MSG.suscribirOK")
.concat(" ID: " + ((ruta.getRutaId() == null) ? "" : ruta.getRutaId().toString())));
}
@ -870,34 +902,21 @@ public class EditarCatalogoDeRutaController extends MyGenericForwardComposer
if (ruta.getRutaId() == null) {
ruta = rutaService.suscribir(ruta, lsParadasSequencia);
// rutaList.addItem(ruta);
rutaList.addItemNovo(ruta);
Messagebox.show(Labels.getLabel(
"editarCatalogoDeRutaController.MSG.suscribirOK").concat(" ID: "
+ ruta.getRutaId().toString()),
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK,
Messagebox.INFORMATION);
closeWindow();
if (ruta.getIsClone() != null && claseAlterada) {
gerarCombinacaoTramoRuta(ruta, lsParadasSequencia);
claseAlterada = Boolean.FALSE;
} else {
salvarRuta();
}
} else {
// Gera Secuencia e Combinação Novamente se houve
// modificação na Secuencia.
if (secuenciaFoiAlterada) {
if (secuenciaFoiAlterada || claseAlterada) {
gerarCombinacaoTramoRuta(ruta, lsParadasSequencia);
claseAlterada = Boolean.FALSE;
} else {
ruta = rutaService.actualizacion(ruta, null);
rutaList.updateItem(ruta);
Messagebox.show(msgRutaSalva,
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK, Messagebox.INFORMATION);
closeWindow();
atualizarRuta(msgRutaSalva);
}
}
}
@ -1140,6 +1159,10 @@ public class EditarCatalogoDeRutaController extends MyGenericForwardComposer
Messagebox.OK, Messagebox.INFORMATION);
}
}
public void onChange$cmbClase(Event ev) throws CloneNotSupportedException, InterruptedException {
claseAlterada = (cmbClase.getSelectedItem().getValue() != null && (ruta.getRutaId() != null || ruta.getIsClone() != null)) ? Boolean.TRUE : Boolean.FALSE;
}
private void gerarCombinacaoTramoRuta(Ruta ruta, List<ParadaSecuencia> sequencias) throws BusinessException, InterruptedException {
List<ParadaSecuenciaCombinacaoLinha> sequenciasAGerar = rutaService.verificarSeqRutaNaoGerada(ruta, sequencias);
@ -1169,23 +1192,19 @@ public class EditarCatalogoDeRutaController extends MyGenericForwardComposer
params.put("rutaTramoVO", rutaTramoVO);
params.put("winEditarRuta", winEditarRuta);
params.put("ruta", ruta);
params.put("rutaClone", ruta);
params.put("clase", (ClaseServicio)cmbClase.getSelectedItem().getValue());
params.put("rutaList", rutaList);
params.put("lsSequencias", sequencias);
this.openWindow("/gui/esquema_operacional/generacion_tramo_ruta/gerarCombinacionTramoRuta.zul",
Labels.getLabel("gerarCombinacionTramoRutaController.window.title"), params, MODAL);
} else if (ruta.getRutaId() == null){
salvarRuta();
} else {
ruta = rutaService.actualizacion(ruta, sequencias);
rutaList.updateItem(ruta);
Messagebox.show(Labels.getLabel(
"editarCatalogoDeRutaController.MSG.suscribirOK").concat(" ID: "
+ ruta.getRutaId().toString()),
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK, Messagebox.INFORMATION);
this.closeWindow();
atualizarRuta(Labels.getLabel("editarCatalogoDeRutaController.MSG.suscribirOK")
.concat(" ID: " + ((ruta.getRutaId() == null) ? "" : ruta.getRutaId().toString())));
}
}
@ -1284,5 +1303,31 @@ public class EditarCatalogoDeRutaController extends MyGenericForwardComposer
public void setLsGrupoRuta(List<GrupoRuta> lsGrupoRuta) {
this.lsGrupoRuta = lsGrupoRuta;
}
private void salvarRuta() throws BusinessException, InterruptedException {
ruta = rutaService.suscribir(ruta, lsParadasSequencia);
//rutaList.addItem(ruta);
rutaList.addItemNovo(ruta);
Messagebox.show(Labels.getLabel(
"editarCatalogoDeRutaController.MSG.suscribirOK").concat(" ID: "
+ ruta.getRutaId().toString()),
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK,
Messagebox.INFORMATION);
closeWindow();
}
private void atualizarRuta(String msgRutaSalva) throws BusinessException, InterruptedException {
ruta = rutaService.actualizacion(ruta, null);
rutaList.updateItem(ruta);
Messagebox.show(msgRutaSalva,
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK, Messagebox.INFORMATION);
closeWindow();
}
}

View File

@ -13,6 +13,7 @@ import org.zkoss.zk.ui.Executions;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zul.Window;
import com.rjconsultores.ventaboletos.entidad.ClaseServicio;
import com.rjconsultores.ventaboletos.entidad.ParadaSecuencia;
import com.rjconsultores.ventaboletos.entidad.ParadaSecuenciaCombinacaoLinha;
import com.rjconsultores.ventaboletos.entidad.Ruta;
@ -42,22 +43,26 @@ public class GerarCombinacionTramoRutaController extends MyGenericForwardCompose
private CoeficienteTarifaService coeficienteTarifaService;
private RutaTramoVO rutaTramoIdaVO;
private Ruta ruta;
private Ruta rutaClone;
private MyListbox rutaList;
private List<ParadaSecuencia> lsSequencias;
private GridCombinacionTramoRutaCoeficiente gridRutaSecuenciaIda;
private Window winEditarRuta;
private ClaseServicio clase;
@SuppressWarnings("unchecked")
@Override
public void doAfterCompose(Component comp) throws Exception {
rutaTramoIdaVO = (RutaTramoVO) Executions.getCurrent().getArg().get("rutaTramoVO");
ruta = (Ruta)Executions.getCurrent().getArg().get("ruta");
rutaList = (MyListbox)Executions.getCurrent().getArg().get("rutaList");
lsSequencias = (List<ParadaSecuencia>)Executions.getCurrent().getArg().get("lsSequencias");
ruta = (Ruta) Executions.getCurrent().getArg().get("ruta");
rutaClone = (Ruta) Executions.getCurrent().getArg().get("rutaClone");
clase = (ClaseServicio) Executions.getCurrent().getArg().get("clase");
rutaList = (MyListbox) Executions.getCurrent().getArg().get("rutaList");
lsSequencias = (List<ParadaSecuencia>) Executions.getCurrent().getArg().get("lsSequencias");
winEditarRuta = (Window) Executions.getCurrent().getArg().get("winEditarRuta");
super.doAfterCompose(comp);
List<SecuenciaRutaTramoCoeficienteVO> listaSecuenciaRutaTramoCoeficiente = tramoRutaService.generarCombinacionTrechoRuta(rutaTramoIdaVO);
if (rutaTramoIdaVO.getCoeficienteDefaul1() != null || rutaTramoIdaVO.getCoeficienteDefaul2() != null) {
for (SecuenciaRutaTramoCoeficienteVO sv : listaSecuenciaRutaTramoCoeficiente) {
sv.setCoeficienteTarifa1(rutaTramoIdaVO.getCoeficienteDefaul1());
@ -77,32 +82,41 @@ public class GerarCombinacionTramoRutaController extends MyGenericForwardCompose
rutaTramoIdaVO.setLsSecuenciaRutaTramoVO(popularSequencia());
try {
tramoRutaService.generarTramosRutaExistente(rutaTramoIdaVO, ruta);
List<ParadaSecuencia> secuencias = new ArrayList<ParadaSecuencia>();
for (ParadaSecuenciaCombinacaoLinha paradaSecuenciaCombinacaoLinha: rutaTramoIdaVO.getLsParadaSecuenciaCombinacaoLinhas()){
secuencias.add(paradaSecuenciaCombinacaoLinha.getOrigem());
}
ruta = rutaService.actualizacion(ruta, lsSequencias);
rutaList.updateItem(ruta);
Messagebox.show(Labels.getLabel(
"editarCatalogoDeRutaController.MSG.suscribirOK").concat(" ID: "
+ ruta.getRutaId().toString()),
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK, Messagebox.INFORMATION);
Ruta rutaDB = rutaClone == null ? ruta : rutaClone;
rutaDB.setClaseServicio(clase);
if (rutaDB.getRutaId() == null) {
rutaDB.setIsClone(true);
rutaDB = salvarNovaRuta(rutaDB);
}
tramoRutaService.generarTramosRutaExistente(rutaTramoIdaVO, rutaDB);
List<ParadaSecuencia> secuencias = new ArrayList<ParadaSecuencia>();
for (ParadaSecuenciaCombinacaoLinha paradaSecuenciaCombinacaoLinha : rutaTramoIdaVO.getLsParadaSecuenciaCombinacaoLinhas()) {
secuencias.add(paradaSecuenciaCombinacaoLinha.getOrigem());
}
rutaDB = atualizarRuta(rutaDB);
Messagebox.show(Labels.getLabel(
"editarCatalogoDeRutaController.MSG.suscribirOK").concat(" ID: "
+ rutaDB.getRutaId().toString()),
Labels.getLabel("editarCatalogoDeRutaController.window.title"),
Messagebox.OK,
Messagebox.INFORMATION);
winEditarRuta.detach();
this.closeWindow();
} catch (BusinessException e1) {
Messagebox.show(e1.getMessage(), Labels.getLabel("editarCombinacionTramoRutaController.window.title"),
Messagebox.OK, Messagebox.ERROR);
e1.printStackTrace();
}
}
private List<SecuenciaRutaTramoVO> popularSequencia() {
List<SecuenciaRutaTramoVO> lsSecuenciaRutaTramoVO = new ArrayList<SecuenciaRutaTramoVO>();
@ -113,7 +127,21 @@ public class GerarCombinacionTramoRutaController extends MyGenericForwardCompose
lsSecuenciaRutaTramoVO.add(secuenciaRutaTramoVO);
}
return lsSecuenciaRutaTramoVO;
}
private Ruta salvarNovaRuta(Ruta rutaDB) throws BusinessException, InterruptedException {
rutaDB = rutaService.suscribir(rutaDB, lsSequencias);
rutaList.addItemNovo(rutaDB);
return rutaDB;
}
private Ruta atualizarRuta(Ruta rutaDB) throws BusinessException, InterruptedException {
rutaDB = rutaService.actualizacion(rutaDB, lsSequencias);
rutaList.updateItem(rutaDB);
return rutaDB;
}
}

View File

@ -1966,6 +1966,10 @@ editarCatalogoDeRutaController.actionCanbiarParada.businessException = Los datos
editarCatalogoDeRutaController.actionCanbiarParada.sucesso = Cambiado correctamente la ubicación.
editarCatalogoDeRutaController.lblIndRutaInternacional.value = Ruta Internacional
editarCatalogoDeRutaController.actionCanbiarParada.validaParada = Ya existe una localización registrada com el COD. IATA o DESCRIPCIÓN informados. Quieres realmente registrar en la ruta la localidad informadas ?
editarCatalogoDeRutaController.MSG.IncluirSequenciaRutaCloneError = Favor salvar a linha antes de incluir uma nova sequência.
editarCatalogoDeRutaController.MSG.ExcluirSequenciaRutaCloneError = Favor salvar a linha antes de excluir uma sequência.
editarCatalogoDeRutaController.MSG.IncluirEmpresaRutaCloneError = Favor salvar a linha antes de adicionar uma nova empresa.
editarCatalogoDeRutaController.MSG.ExcluirEmpresaRutaCloneError = Favor salvar a linha antes de excluir uma empresa.
# A trav̮̩s da pantalla de Búsqueda
busquedaViaController.window.title = Via

View File

@ -2021,6 +2021,10 @@ editarCatalogoDeRutaController.actionCanbiarParada.businessException = Faltam da
editarCatalogoDeRutaController.actionCanbiarParada.sucesso = Localidade alterada com sucesso.
editarCatalogoDeRutaController.lblIndRutaInternacional.value = Linha Internacional
editarCatalogoDeRutaController.actionCanbiarParada.validaParada = Já existe uma localidade cadastrada com o COD. IATA ou DESCRIÇÃO digitados. Deseja realmente cadastrar na linha a localidade informada ?
editarCatalogoDeRutaController.MSG.IncluirSequenciaRutaCloneError = Favor salvar a linha antes de incluir uma nova sequência.
editarCatalogoDeRutaController.MSG.ExcluirSequenciaRutaCloneError = Favor salvar a linha antes de excluir uma sequência.
editarCatalogoDeRutaController.MSG.IncluirEmpresaRutaCloneError = Favor salvar a linha antes de adicionar uma nova empresa.
editarCatalogoDeRutaController.MSG.ExcluirEmpresaRutaCloneError = Favor salvar a linha antes de excluir uma empresa.
# A través da pantalla de Pesquisa
busquedaViaController.window.title = Via