fixes bug#22508

dev:wilian
qua:

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@107098 d1611594-4594-4d17-8e1d-87c2c4800839
master
wilian 2021-06-07 20:59:51 +00:00
parent 3a77c96ecf
commit 20474206cf
2 changed files with 25 additions and 18 deletions

View File

@ -1,7 +1,7 @@
package com.rjconsultores.ventaboletos.web.gui.controladores.esquemaoperacional; package com.rjconsultores.ventaboletos.web.gui.controladores.esquemaoperacional;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections; import java.util.Date;
import java.util.HashSet; import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.Set; import java.util.Set;
@ -32,6 +32,7 @@ import com.rjconsultores.ventaboletos.entidad.PuntoVenta;
import com.rjconsultores.ventaboletos.entidad.Ruta; import com.rjconsultores.ventaboletos.entidad.Ruta;
import com.rjconsultores.ventaboletos.entidad.RutaCombinacion; import com.rjconsultores.ventaboletos.entidad.RutaCombinacion;
import com.rjconsultores.ventaboletos.entidad.TipoPuntoVenta; import com.rjconsultores.ventaboletos.entidad.TipoPuntoVenta;
import com.rjconsultores.ventaboletos.service.ConexionRutaCombinacionService;
import com.rjconsultores.ventaboletos.service.ConexionRutaConfService; import com.rjconsultores.ventaboletos.service.ConexionRutaConfService;
import com.rjconsultores.ventaboletos.service.ConexionRutaExcepcionPtoVtaService; import com.rjconsultores.ventaboletos.service.ConexionRutaExcepcionPtoVtaService;
import com.rjconsultores.ventaboletos.service.ConexionRutaExcepcionTipoPtoVtaService; import com.rjconsultores.ventaboletos.service.ConexionRutaExcepcionTipoPtoVtaService;
@ -44,8 +45,6 @@ import com.rjconsultores.ventaboletos.vo.parada.ConexionRutaCtrlVO;
import com.rjconsultores.ventaboletos.vo.parada.ParadaVOConexionRuta; import com.rjconsultores.ventaboletos.vo.parada.ParadaVOConexionRuta;
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;
import com.rjconsultores.ventaboletos.web.utilerias.combinacion.conexionruta.ConexionRutaCombinacionFactory;
import com.rjconsultores.ventaboletos.web.utilerias.combinacion.conexionruta.OrdenarLocalidadesGeradas;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderConexionRuta; import com.rjconsultores.ventaboletos.web.utilerias.render.RenderConexionRuta;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderConexionRutaRemoveSelecionada; import com.rjconsultores.ventaboletos.web.utilerias.render.RenderConexionRutaRemoveSelecionada;
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderGeracaoConexionPorRuta; import com.rjconsultores.ventaboletos.web.utilerias.render.RenderGeracaoConexionPorRuta;
@ -69,6 +68,8 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
private ConexionRutaExcepcionPtoVtaService conexionRutaRestricaoPtoVtaService; private ConexionRutaExcepcionPtoVtaService conexionRutaRestricaoPtoVtaService;
@Autowired @Autowired
private ConexionRutaExcepcionTipoPtoVtaService conexionRutaExcepcionTipoPtoVtaService; private ConexionRutaExcepcionTipoPtoVtaService conexionRutaExcepcionTipoPtoVtaService;
@Autowired
ConexionRutaCombinacionService conexionRutaCombinacionService;
private MyListbox localidadesOrigemlList; private MyListbox localidadesOrigemlList;
private MyListbox localidadesDestinoList; private MyListbox localidadesDestinoList;
@ -105,11 +106,14 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
private ConexionRutaConf conexionRutaConf; private ConexionRutaConf conexionRutaConf;
private MyListbox conexionRutaConfList; private MyListbox conexionRutaConfList;
private boolean isConexionGerada;
@Override @Override
public void doAfterCompose(Component comp) throws Exception { public void doAfterCompose(Component comp) throws Exception {
super.doAfterCompose(comp); super.doAfterCompose(comp);
this.isConexionGerada = false;
txtTiempoMax.setConstraint("no empty"); txtTiempoMax.setConstraint("no empty");
txtTiempoMin.setConstraint("no empty"); txtTiempoMin.setConstraint("no empty");
txtDescricao.setConstraint("no empty"); txtDescricao.setConstraint("no empty");
@ -248,11 +252,10 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
} }
if(conexionRutaConf != null && conexionRutaConf.getConexionRutaConfId() != null) { if(conexionRutaConf != null && conexionRutaConf.getConexionRutaConfId() != null) {
conexionRutaConfService.excluirConfiguracao(conexionRutaConf, false); conexionRutaConfService.excluirConfiguracao(conexionRutaConf, false, isConexionGerada);
} }
gerarCombinacao(false); List<ConexionRutaCtrlVO> lsConexionRutaCtrl = conexionRutaCombinacionService.extrairConexionRutaCtrl(localidadesGeradas);
List<ConexionRutaCtrlVO> lsConexionRutaCtrl = ConexionRutaCombinacionFactory.extrairConexionRutaCtrl(localidadesGeradas);
boolean itemNovo = false; boolean itemNovo = false;
if(conexionRutaConf == null) { if(conexionRutaConf == null) {
@ -268,7 +271,8 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
List<PuntoVenta> puntoVentas = listPuntoVenta.getListData(); List<PuntoVenta> puntoVentas = listPuntoVenta.getListData();
conexionRutaConf = conexionRutaConfService.salvarConfiguracao(conexionRutaConf, canalVentas, puntoVentas, conexionRutaConf = conexionRutaConfService.salvarConfiguracao(conexionRutaConf, canalVentas, puntoVentas,
conexoesCtrl, lsConexionRutaCtrl, localidadesGeradas); conexoesCtrl, lsConexionRutaCtrl, localidadesGeradas,
isConexionGerada);
if(itemNovo) { if(itemNovo) {
conexionRutaConfList.addItemNovo(conexionRutaConf); conexionRutaConfList.addItemNovo(conexionRutaConf);
@ -278,6 +282,8 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
mostraMensagem(Labels.getLabel("editarConexionPorRutaController.MSG.suscribirOK")); mostraMensagem(Labels.getLabel("editarConexionPorRutaController.MSG.suscribirOK"));
isConexionGerada = false;
closeWindow(); closeWindow();
} }
@ -289,7 +295,7 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); Messagebox.YES | Messagebox.NO, Messagebox.QUESTION);
if (resp == Messagebox.YES) { if (resp == Messagebox.YES) {
conexionRutaConfService.excluirConfiguracao(conexionRutaConf, true); conexionRutaConfService.excluirConfiguracao(conexionRutaConf, true, true);
conexionRutaConfList.removeItem(conexionRutaConf); conexionRutaConfList.removeItem(conexionRutaConf);
mostraMensagem(Labels.getLabel("editarConexionPorRutaController.MSG.ApagarOK")); mostraMensagem(Labels.getLabel("editarConexionPorRutaController.MSG.ApagarOK"));
closeWindow(); closeWindow();
@ -436,14 +442,11 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
@SuppressWarnings("unchecked") @SuppressWarnings("unchecked")
private void gerarLocalidadesComunsBC() { private void gerarLocalidadesComunsBC() {
Set<Parada> lsParadas = new HashSet<Parada>(0); Set<Parada> lsParadas = new HashSet<Parada>(0);
lsParadas = new HashSet<Parada>(localidadesDestinoList.getListData()); lsParadas = new HashSet<Parada>(localidadesLinhaBSelecionadaList.getListData());
ArrayList<Parada> paradasDuplicadas = new ArrayList<Parada>(lsParadas); ArrayList<Parada> paradasDuplicadas = new ArrayList<Parada>(lsParadas);
paradasDuplicadas.retainAll(localidadesDestinoLinhaCList.getListData()); paradasDuplicadas.retainAll(localidadesDestinoLinhaCList.getListData());
localidadesLinhaCSelecionadaList.getListData().removeAll(paradasDuplicadas); localidadesLinhaCSelecionadaList.getListData().removeAll(paradasDuplicadas);
List<Parada> lsLinhaBSelecionadas = new ArrayList<Parada>(localidadesLinhaBSelecionadaList.getListData());
paradasDuplicadas.retainAll(lsLinhaBSelecionadas);
localidadesComunsDestinoCList.setModel(new ListModelList(paradasDuplicadas)); localidadesComunsDestinoCList.setModel(new ListModelList(paradasDuplicadas));
lsLocalidadesComunsLinhasBC = new ArrayList<Parada>(paradasDuplicadas); lsLocalidadesComunsLinhasBC = new ArrayList<Parada>(paradasDuplicadas);
@ -824,6 +827,8 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
@SuppressWarnings("unchecked") @SuppressWarnings("unchecked")
private void gerarCombinacao(boolean carregarGravadas) { private void gerarCombinacao(boolean carregarGravadas) {
log.debug(String.format("Inicio Geracao Combinacao {%s}", new Date()));
localidadesGeradas = new ArrayList<ParadaVOConexionRuta>(); localidadesGeradas = new ArrayList<ParadaVOConexionRuta>();
conexoesCtrl = new ArrayList<ConexionCtrl>(); conexoesCtrl = new ArrayList<ConexionCtrl>();
@ -838,13 +843,13 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
if(carregarGravadas && conexionRutaConf != null) { if(carregarGravadas && conexionRutaConf != null) {
ConexionRutaConfVO conexionRutaConfVO = conexionRutaConfService.carregarConexoesCadastradas(conexionRutaConf.getConexionRutaConfId()); ConexionRutaConfVO conexionRutaConfVO = conexionRutaConfService.carregarConexoesCadastradas(conexionRutaConf.getConexionRutaConfId());
localidadesGeradas = new ArrayList<ParadaVOConexionRuta>(conexionRutaConfVO.getLocalidadesCombinadas()); localidadesGeradas = new ArrayList<ParadaVOConexionRuta>(conexionRutaConfVO.getLocalidadesCombinadas());
Collections.sort(localidadesGeradas, new OrdenarLocalidadesGeradas());
conexoesCtrl = new ArrayList<ConexionCtrl>(conexionRutaConfVO.getListConexionCtrl()); conexoesCtrl = new ArrayList<ConexionCtrl>(conexionRutaConfVO.getListConexionCtrl());
} else { } else {
this.isConexionGerada = true;
if(rutasEixoC.isEmpty()) { if(rutasEixoC.isEmpty()) {
ConexionRutaCombinacionFactory.gerarCombinacionEntre2Eixos(listParada1,rutasEixoA, rutasEixoB, getLsLocalidadesComuns(), listParada4, rutasEixoA, rutasEixoB, localidadesGeradas, conexoesCtrlVO ); conexionRutaCombinacionService.gerarCombinacionEntre2Eixos(listParada1,rutasEixoA, rutasEixoB, getLsLocalidadesComuns(), listParada4, rutasEixoA, rutasEixoB, localidadesGeradas, conexoesCtrlVO );
} else { } else {
ConexionRutaCombinacionFactory.gerarCombinacionEntre3Eixos(listParada1,rutasEixoA, rutasEixoB, getLsLocalidadesComuns(), listParada4,listParadasC, rutasEixoA, rutasEixoB,rutasEixoC,localidadesGeradas, conexoesCtrlVO ); conexionRutaCombinacionService.gerarCombinacionEntre3Eixos(listParada1,rutasEixoA, rutasEixoB, getLsLocalidadesComuns(), listParada4,listParadasC, rutasEixoA, rutasEixoB,rutasEixoC,localidadesGeradas, conexoesCtrlVO );
} }
for (ConexionCtrlVO conexionCtrlVO : conexoesCtrlVO) { for (ConexionCtrlVO conexionCtrlVO : conexoesCtrlVO) {
@ -860,6 +865,8 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
btnSalvar.setDisabled(Boolean.FALSE); btnSalvar.setDisabled(Boolean.FALSE);
log.debug(String.format("Fim Geracao Combinacao {%s}", new Date()));
} }
@SuppressWarnings("unchecked") @SuppressWarnings("unchecked")

View File

@ -48,11 +48,11 @@
<hlayout> <hlayout>
<label style="padding-right:35px" <label style="padding-right:35px"
value="${c:l('editarConexionController.labelTiempoMin.value')}" /> value="${c:l('editarConexionController.labelTiempoMin.value')}" />
<intbox id="txtTiempoMin" /> <intbox id="txtTiempoMin" maxlength="7"/>
<label <label
style="padding-left:70px; padding-right:35px" style="padding-left:70px; padding-right:35px"
value="${c:l('editarConexionController.labelTiempoMax.value')}" /> value="${c:l('editarConexionController.labelTiempoMax.value')}" />
<intbox id="txtTiempoMax" /> <intbox id="txtTiempoMax" maxlength="7"/>
</hlayout> </hlayout>
</row> </row>
</rows> </rows>