fixes bug#AL_3541

master
Aristides 2023-11-30 18:52:50 -03:00
parent 0bd3532303
commit d561b5aaab
2 changed files with 73 additions and 40 deletions

View File

@ -4,11 +4,11 @@
<modelVersion>4.0.0</modelVersion>
<groupId>br.com.rjconsultores</groupId>
<artifactId>ventaboletosadm</artifactId>
<version>1.35.17</version>
<version>1.35.18</version>
<packaging>war</packaging>
<properties>
<modelWeb.version>1.26.3</modelWeb.version>
<modelWeb.version>1.26.4</modelWeb.version>
<flyway.version>1.22.1</flyway.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

View File

@ -9,7 +9,6 @@ import java.util.List;
import java.util.Set;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
@ -122,10 +121,7 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
private MyListbox localidadesComunsBCList;
private MyListbox listEspCanal;
private MyListbox listPuntoVenta;
//Localidade a serem combinadas (pode excluir localidades a serem combinadas)
private List<Parada> lsLocalidadesComunsAB;
//Todas as localidades Localidade comuns entre A e B
private List<Parada> lsLocalidadesComunsABTodas;
private List<Parada> lsLocalidadesComunsLinhasBC;
private Combobox cmbTipoPtovta;
private Combobox cmbPtovta;
@ -139,8 +135,6 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
private ConexionRutaConf conexionRutaConf;
private MyListbox conexionRutaConfList;
private Boolean isConexaoPorAgrupamento;
private List<Parada> removerLocalidadesComumABList;
private List<Parada> adicionarLocalidadesComumABList;
private Doublebox txtDesconto;
private Combobox cmbOrigemConexao;
@ -158,9 +152,7 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
public void doAfterCompose(Component comp) throws Exception {
super.doAfterCompose(comp);
lsLocalidadesComunsABTodas = new ArrayList<Parada>();
removerLocalidadesComumABList = new ArrayList<Parada>();
adicionarLocalidadesComumABList = new ArrayList<Parada>();
this.isConexionGerada = false;
txtTiempoMax.setConstraint("no empty");
txtTiempoMin.setConstraint("no empty");
@ -424,9 +416,10 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
conexionRutaConf = conexionRutaConfService.salvarConfiguracao(conexionRutaConf, canalVentas, puntoVentas,
conexoesCtrl, lsConexionRutaCtrl, localidadesGeradas,
isConexionGerada);
adicionaLocalidadesExcluidas();
removeLocalidadesExcluidas();
adicionaLocalidadesExcluidas();
//Atualizar o indPricing alterado pela tabela
atualizarIndPricing();
@ -591,14 +584,11 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
}
private void removeLocalidadesExcluidas() {
if(adicionarLocalidadesComumABList !=null && !adicionarLocalidadesComumABList.isEmpty() ) {
for (Parada parada : adicionarLocalidadesComumABList) {
conexionRutaLocalidadeRemovidaService.removerPorParada(parada);
}
}
conexionRutaLocalidadeRemovidaService.removerTodosPorConexionrutaconfId(conexionRutaConf.getConexionRutaConfId());
}
private void adicionaLocalidadesExcluidas() {
List<Parada> removerLocalidadesComumABList = obterlsLocalidadesComunsABDesabilitadasNoMomento();
if(!removerLocalidadesComumABList.isEmpty()) {
for (Parada parada : removerLocalidadesComumABList) {
conexionRutaLocalidadeRemovidaService.suscribir(conexionRutaConf.getConexionRutaConfId(), parada.getParadaId());
@ -637,23 +627,18 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
public void onEvent(Event arg0) throws Exception {
Parada conexionRutaVO = (Parada) arg0.getTarget().getAttribute("data");
List<Parada> localidadesComunsABListIter =new ArrayList<Parada>(lsLocalidadesComunsABTodas);
List<Parada> localidadesComunsABListIter = new ArrayList(obterlsLocalidadesComunsAB());
for (Parada paradaIter : localidadesComunsABListIter) {
//Caso parada seja a mesma ou seja uma parada do mesmo agrupamento remove.
if (paradaIter.equals(conexionRutaVO) || (paradaIter.getAgrupamentoParada()!=null && paradaIter.getAgrupamentoParada().equals(conexionRutaVO.getAgrupamentoParada()))) {
if(!Boolean.TRUE.equals(paradaIter.getIsParadaConexaoRutaExcluida())) {
localidadesComunsABList.removeItem(conexionRutaVO);
lsLocalidadesComunsAB.remove(paradaIter);
conexionRutaVO.setIsParadaConexaoRutaExcluida(Boolean.TRUE);
localidadesComunsABList.addItemNovo(conexionRutaVO);
removerLocalidadesComumABList.add(conexionRutaVO);
}else {
localidadesComunsABList.removeItem(conexionRutaVO);
conexionRutaVO.setIsParadaConexaoRutaExcluida(Boolean.FALSE);
localidadesComunsABList.addItemNovo(conexionRutaVO);
lsLocalidadesComunsAB.add(paradaIter);
adicionarLocalidadesComumABList.add(conexionRutaVO);
}
}
}
@ -695,7 +680,8 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
localidadesLinhaASelecionadaList.addItemNovo(parada);
} else {
for (Object objectParada : localidadesLinhaASelecionadaList.getListData()) {
if (localidadesLinhaASelecionadaList.getListData().contains(parada) || (lsLocalidadesComunsAB != null && lsLocalidadesComunsAB.contains(parada))) {
List<Parada> lsLocalidadesComunsABHabilitadaNoMomento = obterlsLocalidadesComunsABHabilitadasNoMomento();
if (localidadesLinhaASelecionadaList.getListData().contains(parada) || (lsLocalidadesComunsABHabilitadaNoMomento != null && lsLocalidadesComunsABHabilitadaNoMomento.contains(parada))) {
return;
}
if (!((Parada) objectParada).equals(parada)) {
@ -731,7 +717,10 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
localidadesLinhaBSelecionadaList.addItemNovo(parada);
} else {
for (Object objectParada : localidadesLinhaBSelecionadaList.getListData()) {
if (localidadesLinhaBSelecionadaList.getListData().contains(parada) || (lsLocalidadesComunsAB != null && lsLocalidadesComunsAB.contains(parada))) {
List<Parada> lsLocalidadesComunsABHabilitadaNoMomento = obterlsLocalidadesComunsABHabilitadasNoMomento();
if (localidadesLinhaBSelecionadaList.getListData().contains(parada) || (lsLocalidadesComunsABHabilitadaNoMomento != null && lsLocalidadesComunsABHabilitadaNoMomento.contains(parada))) {
return;
}
if (!((Parada) objectParada).equals(parada)) {
@ -823,13 +812,10 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
localidadesLinhaASelecionadaList.getListData().removeAll(paradasDuplicadas);
localidadesLinhaBSelecionadaList.getListData().removeAll(paradasDuplicadas);
if(lsLocalidadesComunsAB!=null) {
adicionaParadasDuplicadas(paradasDuplicadas, lsLocalidadesComunsABAux, lsLocalidadesAgrupamento);
}else {
lsLocalidadesComunsAB = new ArrayList<Parada>(paradasDuplicadas);
}
adicionaParadasDuplicadas(paradasDuplicadas, lsLocalidadesComunsABAux, lsLocalidadesAgrupamento);
localidadesComunsABList.setData(lsLocalidadesComunsABAux);
renderizarLinhasAB();
}
@ -864,8 +850,9 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
* @param paradasDuplicadas
*/
private void validaLocalidadesExcluidas(Set<Parada> lsParadas, ArrayList<Parada> paradasDuplicadas) {
if(paradasDuplicadas!=null && !paradasDuplicadas.isEmpty()) {
List<ConexionRutaLocalidadeRemovida> ConexionRutaLocalidadeRemovidaList = conexionRutaLocalidadeRemovidaService.obtenerPorParadaList(paradasDuplicadas);
if(paradasDuplicadas!=null && !paradasDuplicadas.isEmpty() && conexionRutaConf != null ) {
List<ConexionRutaLocalidadeRemovida> ConexionRutaLocalidadeRemovidaList = conexionRutaLocalidadeRemovidaService.obtenerPorConexionrutaconfIdEParadaIdList(conexionRutaConf.getConexionRutaConfId(),paradasDuplicadas);
if(ConexionRutaLocalidadeRemovidaList !=null) {
ArrayList<Parada> paradasDuplicadasAux = new ArrayList<Parada>(lsParadas);
for (ConexionRutaLocalidadeRemovida conexionRutaLocalidadeRemovida : ConexionRutaLocalidadeRemovidaList) {
@ -883,6 +870,7 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
private void adicionaParadasDuplicadas(ArrayList<Parada> paradasDuplicadas, List<Parada> lsLocalidadesComunsABAux, List<Parada> lsLocalidadesAgrupamento) {
for (Parada parada : paradasDuplicadas) {
List<Parada> lsLocalidadesComunsAB = obterlsLocalidadesComunsABHabilitadasNoMomento();
if(!lsLocalidadesComunsAB.contains(parada)){
if(parada.getAgrupamentoParada()!=null && Boolean.TRUE.equals(isConexaoPorAgrupamento)) {
try {
@ -894,10 +882,6 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
}else {
lsLocalidadesComunsABAux.add(parada);
}
lsLocalidadesComunsABTodas.add(parada);
if(!Boolean.TRUE.equals(parada.getIsParadaConexaoRutaExcluida())) {
lsLocalidadesComunsAB.add(parada);
}
}
}
}
@ -952,6 +936,7 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
}
public void onClick$btnCombinarTrechos(Event ev) throws InterruptedException {
List<Parada> lsLocalidadesComunsAB = obterlsLocalidadesComunsABHabilitadasNoMomento();
if (lsLocalidadesComunsAB == null || lsLocalidadesComunsAB.isEmpty()) {
Messagebox.show(Labels.getLabel("editarConexionPorRutaController.MSG.selecionarConexion"),
Labels.getLabel("editarConexionPorRutaController.window.title"),
@ -1328,6 +1313,7 @@ public class GerarConexionPorRutaController extends MyGenericForwardComposer {
conexoesCtrl = new ArrayList<ConexionCtrl>(conexionRutaConfVO.getListConexionCtrl());
} else {
this.isConexionGerada = true;
List<Parada> lsLocalidadesComunsAB = obterlsLocalidadesComunsABHabilitadasNoMomento();
if(rutasEixoC.isEmpty()) {
conexionRutaCombinacionService.gerarCombinacionEntre2Eixos(listParada1,rutasEixoA, rutasEixoB, lsLocalidadesComunsAB, listParada4, rutasEixoA, rutasEixoB, localidadesGeradas, conexoesCtrlVO, isConexaoPorAgrupamento);
} else {
@ -1475,6 +1461,53 @@ public void onClick$btnFiltrar(Event ev) throws Exception {
localidadesCombinadasList.setData(localidadesGeradasFiltro);
}
private List<Parada>obterlsLocalidadesComunsAB() {
List<Parada> lsLocalidadehabilitadas = new ArrayList<>();
if(localidadesComunsABList!=null) {
return localidadesComunsABList.getListData();
}
return lsLocalidadehabilitadas;
}
private List<Parada>obterlsLocalidadesComunsABHabilitadasNoMomento() {
List<Parada> lsLocalidadehabilitadas = new ArrayList<>();
List<Parada> lsParadaAux =null;
if(localidadesComunsABList!=null) {
lsParadaAux = localidadesComunsABList.getListData();
}
if(lsParadaAux!=null && !lsParadaAux.isEmpty()) {
lsLocalidadehabilitadas = new ArrayList<>();
for(Parada parada : lsParadaAux) {
if(!parada.getIsParadaConexaoRutaExcluida()) {
lsLocalidadehabilitadas.add(parada);
}
}
}
return lsLocalidadehabilitadas;
}
private List<Parada>obterlsLocalidadesComunsABDesabilitadasNoMomento() {
List<Parada> lsDesabilitadas = null;
List<Parada> lsParadaAux =null;
if(localidadesComunsABList!=null) {
lsParadaAux = localidadesComunsABList.getListData();
}
if(lsParadaAux!=null && !lsParadaAux.isEmpty()) {
lsDesabilitadas = new ArrayList<>();
for(Parada parada : lsParadaAux) {
if(parada.getIsParadaConexaoRutaExcluida()) {
lsDesabilitadas.add(parada);
}
}
}
return lsDesabilitadas;
}
public void onClick$btnLimpraFiltros(Event ev) throws Exception {
cmbOrigemConexao.setSelectedItem(null);
cmbDestinoConexao.setSelectedItem(null);