daniel.zauli 2015-12-09 13:36:21 +00:00
parent 546bf7aabe
commit cebe67ceb3
1 changed files with 108 additions and 24 deletions

View File

@ -31,6 +31,7 @@ import com.rjconsultores.ventaboletos.service.ConfRestricaoPtovtaService;
import com.rjconsultores.ventaboletos.service.RutaService; import com.rjconsultores.ventaboletos.service.RutaService;
import com.rjconsultores.ventaboletos.service.TipoPuntoVentaService; import com.rjconsultores.ventaboletos.service.TipoPuntoVentaService;
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxParada;
import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxPuntoVenta; import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxPuntoVenta;
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;
@ -57,10 +58,11 @@ public class EditarConfRestricaoCanalVentaController extends MyGenericForwardCom
private List<TipoPuntoVenta> lsTipoPtoVta; private List<TipoPuntoVenta> lsTipoPtoVta;
private List<Ruta> lsRuta; private List<Ruta> lsRuta;
private MyListbox confRestricaoCanalVentaList; private MyListbox confRestricaoCanalVentaList;
private List<ConfRestricaoCanalVenta> lsConfRestricaoCanalVenta;
private MyListbox excecaoDataList; private MyListbox excecaoDataList;
private Button btnApagar; private Button btnApagar;
private Combobox cmbOrigen; private MyComboboxParada cmbOrigen;
private Combobox cmbDestino; private MyComboboxParada cmbDestino;
private Combobox cmbRuta; private Combobox cmbRuta;
private Combobox cmbTipoPtoVta; private Combobox cmbTipoPtoVta;
private Datebox dtExcecaoServicio; private Datebox dtExcecaoServicio;
@ -129,14 +131,10 @@ public class EditarConfRestricaoCanalVentaController extends MyGenericForwardCom
confRestricaoCanalVenta.setRuta(null); confRestricaoCanalVenta.setRuta(null);
} }
if (cmbOrigen.getSelectedItem() == null) { if (cmbOrigen.getSelectedItem() == null) {
confRestricaoCanalVenta.setOrigem(null); cmbOrigen.getValue(true);
}else{
confRestricaoCanalVenta.setOrigem((Parada)cmbOrigen.getSelectedItem().getValue());
} }
if (cmbDestino.getSelectedItem() == null) { if (cmbDestino.getSelectedItem() == null) {
confRestricaoCanalVenta.setDestino(null); cmbDestino.getValue(true);
}else{
confRestricaoCanalVenta.setDestino((Parada)cmbDestino.getSelectedItem().getValue());
} }
if (cmbTipoPtoVta.getSelectedItem() == null) { if (cmbTipoPtoVta.getSelectedItem() == null) {
confRestricaoCanalVenta.setTipoPuntoVenta(null); confRestricaoCanalVenta.setTipoPuntoVenta(null);
@ -147,10 +145,12 @@ public class EditarConfRestricaoCanalVentaController extends MyGenericForwardCom
cre.setConfRestricaoCanalVenta(confRestricaoCanalVenta); cre.setConfRestricaoCanalVenta(confRestricaoCanalVenta);
} }
} }
lsConfRestricaoCanalVenta = confRestricaoCanalVentaService.obtenerTodos();
// if(isBloqueoExistente(confRestricaoCanalVenta, confRestricaoCanalVentaList)){ if(isBloqueoExistente(confRestricaoCanalVenta, lsConfRestricaoCanalVenta)){
// throw new BusinessException("editarConfRestricaoCanalVentaController.MSG.bloqueoExistente"); throw new BusinessException("editarConfRestricaoCanalVentaController.MSG.bloqueoExistente");
// } }
confRestricaoCanalVentaService.suscribirActualizar(confRestricaoCanalVenta); confRestricaoCanalVentaService.suscribirActualizar(confRestricaoCanalVenta);
confRestricaoCanalVentaList.updateItem(confRestricaoCanalVenta); confRestricaoCanalVentaList.updateItem(confRestricaoCanalVenta);
@ -190,12 +190,12 @@ public class EditarConfRestricaoCanalVentaController extends MyGenericForwardCom
} }
} }
private boolean isBloqueoExistente(ConfRestricaoCanalVenta c , MyListbox confRestricaoCanalVentaList){ private boolean isBloqueoExistente(ConfRestricaoCanalVenta c , List<ConfRestricaoCanalVenta> confRestricaoCanalVentaList){
List<ConfRestricaoCanalVenta> ls = new ArrayList<ConfRestricaoCanalVenta>() ; List<ConfRestricaoCanalVenta> ls = new ArrayList<ConfRestricaoCanalVenta>() ;
for (int i = 0; i < confRestricaoCanalVentaList.getData().length; i++){ for (int i = 0; i < confRestricaoCanalVentaList.size(); i++){
ConfRestricaoCanalVenta elementList = (ConfRestricaoCanalVenta)confRestricaoCanalVentaList.getData()[i]; ConfRestricaoCanalVenta elementList = (ConfRestricaoCanalVenta)confRestricaoCanalVentaList.get(i);
if(c.getConfRestricaoCanalVentaId() == null){ if(c.getConfRestricaoCanalVentaId() == null){
if(isConfRestricaoCanalVentasEquivalentes(c , elementList)){ if(isConfRestricaoCanalVentasEquivalentes(c , elementList)){
return true; return true;
@ -211,23 +211,107 @@ public class EditarConfRestricaoCanalVentaController extends MyGenericForwardCom
return false; return false;
} }
private boolean isRutasEquivalentes(ConfRestricaoCanalVenta a , ConfRestricaoCanalVenta b){
if(a.getRuta() == null && b.getRuta() == null ){
return true;
}
if(a.getRuta() == null && b.getRuta() != null ){
return false;
}
if(a.getRuta() != null && b.getRuta() == null ){
return false;
}
if(a.getRuta() != null && b.getRuta() != null ){
return a.getRuta().equals(b.getRuta());
}
return false;
}
private boolean isTipoPVEquivalentes(ConfRestricaoCanalVenta a , ConfRestricaoCanalVenta b){
if(a.getTipoPuntoVenta() == null && b.getTipoPuntoVenta() == null ){
return true;
}
if(a.getTipoPuntoVenta() == null && b.getTipoPuntoVenta() != null ){
return false;
}
if(a.getTipoPuntoVenta() != null && b.getTipoPuntoVenta() == null ){
return false;
}
if(a.getTipoPuntoVenta() != null && b.getTipoPuntoVenta() != null ){
return a.getTipoPuntoVenta().equals(b.getTipoPuntoVenta());
}
return false;
}
private boolean isCorridaIdEquivalentes(ConfRestricaoCanalVenta a , ConfRestricaoCanalVenta b){
if(a.getCorridaId() == null && b.getCorridaId() == null ){
return true;
}
if(a.getCorridaId() == null && b.getCorridaId() != null ){
return false;
}
if(a.getCorridaId() != null && b.getCorridaId() == null ){
return false;
}
if(a.getCorridaId() != null && b.getCorridaId() != null ){
return a.getCorridaId().equals(b.getCorridaId());
}
return false;
}
private boolean isOrigemEquivalentes(ConfRestricaoCanalVenta a , ConfRestricaoCanalVenta b){
if(a.getOrigem() == null && b.getOrigem() == null ){
return true;
}
if(a.getOrigem() == null && b.getOrigem() != null ){
return false;
}
if(a.getOrigem() != null && b.getOrigem() == null ){
return false;
}
if(a.getOrigem() != null && b.getOrigem() != null ){
return a.getOrigem().equals(b.getOrigem());
}
return false;
}
private boolean isDestinoEquivalentes(ConfRestricaoCanalVenta a , ConfRestricaoCanalVenta b){
if(a.getDestino() == null && b.getDestino() == null ){
return true;
}
if(a.getDestino() == null && b.getDestino() != null ){
return false;
}
if(a.getDestino() != null && b.getDestino() == null ){
return false;
}
if(a.getDestino() != null && b.getDestino() != null ){
return a.getDestino().equals(b.getDestino());
}
return false;
}
private boolean isRutasTipoPvCorridaIdOrigemDestinoEquivalentes(ConfRestricaoCanalVenta a , ConfRestricaoCanalVenta b){
if(isRutasEquivalentes(a,b)
&& isTipoPVEquivalentes(a,b)
&& isCorridaIdEquivalentes(a,b)
&& isOrigemEquivalentes(a,b)
&& isDestinoEquivalentes(a,b)){
return true;
}else{
return false;
}
}
private boolean isConfRestricaoCanalVentasEquivalentes(ConfRestricaoCanalVenta a , ConfRestricaoCanalVenta b){ private boolean isConfRestricaoCanalVentasEquivalentes(ConfRestricaoCanalVenta a , ConfRestricaoCanalVenta b){
if(a.getRuta().equals(b.getRuta()) if(isRutasTipoPvCorridaIdOrigemDestinoEquivalentes(a,b)
&& a.getTipoPuntoVenta().equals(b.getTipoPuntoVenta())
&& a.getCorridaId().equals(b.getCorridaId())
&& a.getOrigem().equals(b.getOrigem())
&& a.getDestino().equals(b.getDestino())
&& (((a.getFecCorrida() != null) != (b.getFecCorrida() != null)) ? false : true) && (((a.getFecCorrida() != null) != (b.getFecCorrida() != null)) ? false : true)
&& ((a.getFecCorrida() != null ) && (b.getFecCorrida() != null) ? true : false ) && ((a.getFecCorrida() != null ) && (b.getFecCorrida() != null) ? true : false )
&& ((((a.getFecCorrida().compareTo(b.getFecCorrida())) == 0)) ? true : false ) && ((((a.getFecCorrida().compareTo(b.getFecCorrida())) == 0)) ? true : false )
&& isIntercessaoDiasSemana(a,b) && isIntercessaoDiasSemana(a,b)
){ ){
return true; return true;
}else if(a.getRuta().equals(b.getRuta()) }else if(isRutasTipoPvCorridaIdOrigemDestinoEquivalentes(a,b)
&& a.getTipoPuntoVenta().equals(b.getTipoPuntoVenta())
&& a.getCorridaId().equals(b.getCorridaId())
&& a.getOrigem().equals(b.getOrigem())
&& a.getDestino().equals(b.getDestino())
&& (a.getFecCorrida() == null) == (b.getFecCorrida() == null) == (true) && (a.getFecCorrida() == null) == (b.getFecCorrida() == null) == (true)
&& isIntercessaoDiasSemana(a,b) && isIntercessaoDiasSemana(a,b)
){ ){