fixed bug #7268 - Configurações de Serviços: validações adicionadas ao associar um segundo piso (mesma empresa, orgão concedente e localidades)
git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@54191 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
700ad9ac27
commit
6c2e5b4c8c
|
@ -13,12 +13,18 @@ import java.util.HashMap;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.ejb.TransactionAttribute;
|
||||
import javax.ejb.TransactionAttributeType;
|
||||
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang.math.NumberUtils;
|
||||
import org.apache.log4j.Logger;
|
||||
import org.hibernate.Hibernate;
|
||||
import org.hibernate.Session;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.annotation.Scope;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.zkoss.util.resource.Labels;
|
||||
import org.zkoss.zhtml.Messagebox;
|
||||
import org.zkoss.zk.ui.Component;
|
||||
|
@ -56,6 +62,7 @@ import com.rjconsultores.ventaboletos.entidad.RutaSecuencia;
|
|||
import com.rjconsultores.ventaboletos.entidad.Tramo;
|
||||
import com.rjconsultores.ventaboletos.entidad.TramoServicio;
|
||||
import com.rjconsultores.ventaboletos.service.ClaseServicioService;
|
||||
import com.rjconsultores.ventaboletos.service.CorridaService;
|
||||
import com.rjconsultores.ventaboletos.service.DivisionService;
|
||||
import com.rjconsultores.ventaboletos.service.EmpresaService;
|
||||
import com.rjconsultores.ventaboletos.service.EsquemaCorridaService;
|
||||
|
@ -108,6 +115,8 @@ public class EditarCorridaController extends MyGenericForwardComposer {
|
|||
private BusquedaCorridaController busquedaCorridaController;
|
||||
@Autowired
|
||||
private TramoServicioService tramoServicioService;
|
||||
@Autowired
|
||||
CorridaService corridaService;
|
||||
private DivisionService divisionService;
|
||||
private List<Division> lsDivision;
|
||||
private List<Empresa> lsEmpresa;
|
||||
|
@ -190,6 +199,10 @@ public class EditarCorridaController extends MyGenericForwardComposer {
|
|||
popularCombobox(cmbIndGeneraFeriado);
|
||||
|
||||
esquemaCorrida = (EsquemaCorrida) Executions.getCurrent().getArg().get("esquemaCorrida");
|
||||
if(esquemaCorrida.getEsquemacorridaId() != null){
|
||||
esquemaCorrida = esquemaCorridaService.obtenerID(esquemaCorrida.getEsquemacorridaId());
|
||||
esquemaCorrida.getEsquemaTramoList();
|
||||
}
|
||||
esquemaCorridaList = (MyListbox) Executions.getCurrent().getArg().get("esquemaCorridaList");
|
||||
busquedaCorridaController = (BusquedaCorridaController) Executions.getCurrent().getArg().get("busquedaCorridaController");
|
||||
|
||||
|
@ -486,6 +499,10 @@ public class EditarCorridaController extends MyGenericForwardComposer {
|
|||
if (chkDoblePiso.isChecked()) {
|
||||
txtNumCorridaPisoExtra.getValue();
|
||||
}
|
||||
|
||||
if(!validarPisoExtra()){
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
Comboitem ciRuta = cmbRuta.getSelectedItem();
|
||||
|
@ -1727,7 +1744,68 @@ public class EditarCorridaController extends MyGenericForwardComposer {
|
|||
public void onClick$dom(Event e) throws InterruptedException {
|
||||
habilitarDiaSimDiaNao(lun.isChecked(), mar.isChecked(), mie.isChecked(), jue.isChecked(), vie.isChecked(), sab.isChecked(), dom.isChecked());
|
||||
}
|
||||
|
||||
|
||||
private Boolean validarPisoExtra() throws InterruptedException{
|
||||
EsquemaCorrida esquemaCorrida = esquemaCorridaService.obtenerByEsquemaCorrida(txtNumCorridaPisoExtra.getValue());
|
||||
|
||||
if(esquemaCorrida == null){
|
||||
Messagebox.show(Labels.getLabel("MSG.Error"),
|
||||
Labels.getLabel("editarConfiguracionCorridaController.MSG.servicoPisoExtraExistente"),
|
||||
Messagebox.OK, Messagebox.ERROR);
|
||||
return false;
|
||||
}
|
||||
|
||||
if(esquemaCorrida.getPisoExtra() != null && esquemaCorrida.getPisoExtra()){
|
||||
Messagebox.show(Labels.getLabel("MSG.Error"),
|
||||
Labels.getLabel("editarConfiguracionCorridaController.MSG.servicoPisoExtraJaEPisoExtra"),
|
||||
Messagebox.OK, Messagebox.ERROR);
|
||||
return false;
|
||||
}
|
||||
|
||||
if(!esquemaCorrida.getMarca().equals(this.esquemaCorrida.getMarca())){
|
||||
Messagebox.show(Labels.getLabel("MSG.Error"),
|
||||
Labels.getLabel("editarConfiguracionCorridaController.MSG.servicoPisoExtraEmpresaDiferente"),
|
||||
Messagebox.OK, Messagebox.ERROR);
|
||||
return false;
|
||||
}
|
||||
|
||||
if(!esquemaCorrida.getRuta().getOrgaoConcedente().equals(this.esquemaCorrida.getRuta().getOrgaoConcedente())){
|
||||
Messagebox.show(Labels.getLabel("MSG.Error"),
|
||||
Labels.getLabel("editarConfiguracionCorridaController.MSG.servicoPisoExtraOrgaoDiferente"),
|
||||
Messagebox.OK, Messagebox.ERROR);
|
||||
return false;
|
||||
}
|
||||
|
||||
if(validarEsquemaTramo(esquemaCorrida)){
|
||||
Messagebox.show(Labels.getLabel("editarConfiguracionCorridaController.MSG.servicoPisoExtraLocalidadeDiferente"),
|
||||
Labels.getLabel("MSG.Error"),
|
||||
Messagebox.OK, Messagebox.ERROR);
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public void onChange$txtNumCorridaPisoExtra() throws InterruptedException{
|
||||
validarPisoExtra();
|
||||
}
|
||||
|
||||
private boolean validarEsquemaTramo(EsquemaCorrida esquemaCorrida) {
|
||||
|
||||
if (this.esquemaCorrida.getEsquemaTramoList().size() != esquemaCorrida.getEsquemaTramoList().size()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
for(int i = 0; i < this.esquemaCorrida.getEsquemaTramoList().size(); i++){
|
||||
if(!this.esquemaCorrida.getEsquemaTramoList().get(i).getTramo()
|
||||
.equals(esquemaCorrida.getEsquemaTramoList().get(i).getTramo())){
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private void habilitaDiasDaSemana(Boolean isChecked) {
|
||||
if (isChecked) {
|
||||
lun.setChecked(!isChecked);
|
||||
|
|
|
@ -1975,6 +1975,11 @@ editarConfiguracionCorridaController.MSG.NumAgrupacion = Ya existe un tren con e
|
|||
editarConfiguracionCorridaController.MSG.AgrupacionCorrida = Ya existe un vagon con ese número.
|
||||
editarConfiguracionCorridaController.btnCopiar.tooltiptext=Generar Servicio igual a este
|
||||
editarConfiguracionCorridaController.lbDiaSimDiaNao = Dia sim dia não
|
||||
editarConfiguracionCorridaController.MSG.servicoPisoExtraExistente = Serviço para piso extra não existente.
|
||||
editarConfiguracionCorridaController.MSG.servicoPisoExtraJaEPisoExtra = Serviço para piso extra já é um piso extra.
|
||||
editarConfiguracionCorridaController.MSG.servicoPisoExtraEmpresaDiferente = Serviço para piso extra não é da mesma empresa do que o serviço corrente.
|
||||
editarConfiguracionCorridaController.MSG.servicoPisoExtraOrgaoDiferente = Serviço para piso extra não possui o mesmo orgão concedente do que o serviço corrente.
|
||||
editarConfiguracionCorridaController.MSG.servicoPisoExtraLocalidadeDiferente = Servico para piso extra não possui as mesmas localidades do que o serviço corrente.
|
||||
|
||||
#Planeacion de Poltrona Controller
|
||||
editarConfiguracionCorridaAsientoController.window.title = Planificación de asientos
|
||||
|
|
|
@ -2019,6 +2019,11 @@ editarConfiguracionCorridaController.MSG.NumAgrupacion = Já existe este número
|
|||
editarConfiguracionCorridaController.MSG.AgrupacionCorrida = Já existe este número de serviço cadastrado para outro Trem.
|
||||
editarConfiguracionCorridaController.btnCopiar.tooltiptext=Gerar Serviço igual a este
|
||||
editarConfiguracionCorridaController.lbDiaSimDiaNao = Dia sim dia não
|
||||
editarConfiguracionCorridaController.MSG.servicoPisoExtraExistente = Serviço para piso extra não existente.
|
||||
editarConfiguracionCorridaController.MSG.servicoPisoExtraJaEPisoExtra = Serviço para piso extra já é um piso extra.
|
||||
editarConfiguracionCorridaController.MSG.servicoPisoExtraEmpresaDiferente = Serviço para piso extra não é da mesma empresa do que o serviço corrente.
|
||||
editarConfiguracionCorridaController.MSG.servicoPisoExtraOrgaoDiferente = Serviço para piso extra não possui o mesmo orgão concedente do que o serviço corrente.
|
||||
editarConfiguracionCorridaController.MSG.servicoPisoExtraLocalidadeDiferente = Servico para piso extra não possui as mesmas localidades do que o serviço corrente.
|
||||
|
||||
#Planeacion de Poltrona Controller
|
||||
editarConfiguracionCorridaAsientoController.window.title = Planejamento de poltronas
|
||||
|
|
Loading…
Reference in New Issue