From 481e87e6bed9423a83241566143233cbb90152c8 Mon Sep 17 00:00:00 2001 From: gleimar Date: Wed, 29 Aug 2012 21:40:22 +0000 Subject: [PATCH] git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@20853 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../tarifas/EditarTarifaController.java | 1075 ++++++++--------- .../tarifas/GenerarTarifaOrgaoController.java | 1 - .../web/utilerias/render/RenderTarifa.java | 17 +- web/WEB-INF/i3-label_pt_BR.label | 3 + web/gui/tarifas/busquedaTarifas.zul | 24 +- web/gui/tarifas/editarTarifas.zul | 5 + web/gui/tarifas/generarTarifaOrgao.zul | 1 - 7 files changed, 562 insertions(+), 564 deletions(-) diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/EditarTarifaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/EditarTarifaController.java index e2a6d1c92..225eea593 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/EditarTarifaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/EditarTarifaController.java @@ -56,558 +56,545 @@ import org.zkoss.zul.Comboitem; import org.zkoss.zul.Textbox; /** - * + * * @author rodrigo */ @Controller("editarTarifaController") @Scope("prototype") public class EditarTarifaController extends MyGenericForwardComposer { - @Autowired - private TarifaService tarifaService; - @Autowired - private CiudadService ciudadService; - @Autowired - private MarcaService marcaService; - @Autowired - private ClaseServicioService claseServicioService; - @Autowired - private TramoService tramoService; - @Autowired - private MonedaService monedaService; - @Autowired - private VigenciaTarifaService vigenciaTarifaService; - @Autowired - private CategoriaService categoriaService; - @Autowired - private TipoPuntoVentaService tipoPuntoVentaService; - @Autowired - private TarifaCategoriaService tarifaCategoriaService; - @Autowired - private TarifaTipoptovtaService tarifaTipoptovtaService; - @Autowired - private MercadoCompetidoService mercadoCompetidoService; - private Tarifa tarifa; - private MyListbox tarifaList; - private MyListbox tarifaCategoriaList; - private MyListbox tarifaTipoPontoVentaList; - private Combobox cmbTramo; - private Combobox cmbClaseServicio; - private Combobox cmbMarca; - private Combobox cmbCategoria; - private Combobox cmbTipoPontoVenta; - private Combobox cmbVigencia; - private MyTextboxDecimal dbPrecioAbiertoTarifaCategoria; - private MyTextboxDecimal dbPrecioTarifaCategoria; - private MyTextboxDecimal dbPrecioTipoPuntoVenta; - private MyTextboxDecimal dbPrecioAbiertoTipoPuntoVenta; - private MyTextboxDecimal txtPrecio; - private MyTextboxDecimal txtPrecioOriginal; - private MyTextboxDecimal txtPrecioRedAbierto; - private Textbox txtDescripcionTramo; - private List lsMarcas; - private List lsClaseServico; - private List lsTramos; - private List lsMonedas; - private List lsVigenciaTarifa; - private List lsCategoria; - private List lsTarifaCategoria; - private List lsTarifaTipoPontoVenta; - private List lsTipoPontoVenta; - private Button btnApagar; - private static Logger log = Logger.getLogger(EditarTarifaController.class); - - public Combobox getCmbVigencia() { - return cmbVigencia; - } - - public void setCmbVigencia(Combobox cmbVigencia) { - this.cmbVigencia = cmbVigencia; - } - - public Button getBtnApagar() { - return btnApagar; - } - - public void setBtnApagar(Button btnApagar) { - this.btnApagar = btnApagar; - } - - public Combobox getCmbCategoria() { - return cmbCategoria; - } - - public void setCmbCategoria(Combobox cmbCategoria) { - this.cmbCategoria = cmbCategoria; - } - - public MyListbox getTarifaCategoriaList() { - return tarifaCategoriaList; - } - - public void setTarifaCategoriaList(MyListbox tarifaCategoriaList) { - this.tarifaCategoriaList = tarifaCategoriaList; - } - - public Combobox getCmbClaseServicio() { - return cmbClaseServicio; - } - - public void setCmbClaseServicio(Combobox cmbClaseServicio) { - this.cmbClaseServicio = cmbClaseServicio; - } - - public Combobox getCmbMarca() { - return cmbMarca; - } - - public void setCmbMarca(Combobox cmbMarca) { - this.cmbMarca = cmbMarca; - } - - public Combobox getCmbTramo() { - return cmbTramo; - } - - public void setCmbTramo(Combobox cmbTramo) { - this.cmbTramo = cmbTramo; - } - - public List getLsVigenciaTarifa() { - return lsVigenciaTarifa; - } - - public void setLsVigenciaTarifa(List lsVigenciaTarifa) { - this.lsVigenciaTarifa = lsVigenciaTarifa; - } - - public List getLsClaseServico() { - return lsClaseServico; - } - - public void setLsClaseServico(List lsClaseServico) { - this.lsClaseServico = lsClaseServico; - } - - public List getLsMarcas() { - return lsMarcas; - } - - public void setLsMarcas(List lsMarcas) { - this.lsMarcas = lsMarcas; - } - - public List getLsMonedas() { - return lsMonedas; - } - - public void setLsMonedas(List lsMonedas) { - this.lsMonedas = lsMonedas; - } - - public List getLsTramos() { - return lsTramos; - } - - public void setLsTramos(List lsTramos) { - this.lsTramos = lsTramos; - } - - public Tarifa getTarifa() { - return tarifa; - } + @Autowired + private TarifaService tarifaService; + @Autowired + private CiudadService ciudadService; + @Autowired + private MarcaService marcaService; + @Autowired + private ClaseServicioService claseServicioService; + @Autowired + private TramoService tramoService; + @Autowired + private MonedaService monedaService; + @Autowired + private VigenciaTarifaService vigenciaTarifaService; + @Autowired + private CategoriaService categoriaService; + @Autowired + private TipoPuntoVentaService tipoPuntoVentaService; + @Autowired + private TarifaCategoriaService tarifaCategoriaService; + @Autowired + private TarifaTipoptovtaService tarifaTipoptovtaService; + @Autowired + private MercadoCompetidoService mercadoCompetidoService; + private Tarifa tarifa; + private MyListbox tarifaList; + private MyListbox tarifaCategoriaList; + private MyListbox tarifaTipoPontoVentaList; + private Combobox cmbTramo; + private Combobox cmbClaseServicio; + private Combobox cmbMarca; + private Combobox cmbCategoria; + private Combobox cmbTipoPontoVenta; + private Combobox cmbVigencia; + private MyTextboxDecimal dbPrecioAbiertoTarifaCategoria; + private MyTextboxDecimal dbPrecioTarifaCategoria; + private MyTextboxDecimal dbPrecioTipoPuntoVenta; + private MyTextboxDecimal dbPrecioAbiertoTipoPuntoVenta; + private MyTextboxDecimal txtPrecio; + private MyTextboxDecimal txtPrecioOriginal; + private MyTextboxDecimal txtPrecioRedAbierto; + private Textbox txtDescripcionTramo; + private List lsMarcas; + private List lsClaseServico; + private List lsTramos; + private List lsMonedas; + private List lsVigenciaTarifa; + private List lsCategoria; + private List lsTarifaCategoria; + private List lsTarifaTipoPontoVenta; + private List lsTipoPontoVenta; + private Button btnApagar; + private static Logger log = Logger.getLogger(EditarTarifaController.class); + + public Combobox getCmbVigencia() { + return cmbVigencia; + } + + public void setCmbVigencia(Combobox cmbVigencia) { + this.cmbVigencia = cmbVigencia; + } + + public Button getBtnApagar() { + return btnApagar; + } + + public void setBtnApagar(Button btnApagar) { + this.btnApagar = btnApagar; + } + + public Combobox getCmbCategoria() { + return cmbCategoria; + } + + public void setCmbCategoria(Combobox cmbCategoria) { + this.cmbCategoria = cmbCategoria; + } + + public MyListbox getTarifaCategoriaList() { + return tarifaCategoriaList; + } + + public void setTarifaCategoriaList(MyListbox tarifaCategoriaList) { + this.tarifaCategoriaList = tarifaCategoriaList; + } + + public Combobox getCmbClaseServicio() { + return cmbClaseServicio; + } + + public void setCmbClaseServicio(Combobox cmbClaseServicio) { + this.cmbClaseServicio = cmbClaseServicio; + } + + public Combobox getCmbMarca() { + return cmbMarca; + } + + public void setCmbMarca(Combobox cmbMarca) { + this.cmbMarca = cmbMarca; + } + + public Combobox getCmbTramo() { + return cmbTramo; + } + + public void setCmbTramo(Combobox cmbTramo) { + this.cmbTramo = cmbTramo; + } + + public List getLsVigenciaTarifa() { + return lsVigenciaTarifa; + } + + public void setLsVigenciaTarifa(List lsVigenciaTarifa) { + this.lsVigenciaTarifa = lsVigenciaTarifa; + } + + public List getLsClaseServico() { + return lsClaseServico; + } + + public void setLsClaseServico(List lsClaseServico) { + this.lsClaseServico = lsClaseServico; + } + + public List getLsMarcas() { + return lsMarcas; + } + + public void setLsMarcas(List lsMarcas) { + this.lsMarcas = lsMarcas; + } + + public List getLsMonedas() { + return lsMonedas; + } + + public void setLsMonedas(List lsMonedas) { + this.lsMonedas = lsMonedas; + } + + public List getLsTramos() { + return lsTramos; + } + + public void setLsTramos(List lsTramos) { + this.lsTramos = lsTramos; + } + + public Tarifa getTarifa() { + return tarifa; + } - public void setTarifa(Tarifa tarifa) { - this.tarifa = tarifa; - } + public void setTarifa(Tarifa tarifa) { + this.tarifa = tarifa; + } - public List getLsCategoria() { - return lsCategoria; - } + public List getLsCategoria() { + return lsCategoria; + } - public void setLsCategoria(List lsCategoria) { - this.lsCategoria = lsCategoria; - } + public void setLsCategoria(List lsCategoria) { + this.lsCategoria = lsCategoria; + } - public List getLsTipoPontoVenta() { - return lsTipoPontoVenta; - } - - public void setLsTipoPontoVenta(List lsTipoPontoVenta) { - this.lsTipoPontoVenta = lsTipoPontoVenta; - } - - public Combobox getCmbTipoPontoVenta() { - return cmbTipoPontoVenta; - } - - public void setCmbTipoPontoVenta(Combobox cmbTipoPontoVenta) { - this.cmbTipoPontoVenta = cmbTipoPontoVenta; - } - - public MyListbox getTarifaTipoPontoVentaList() { - return tarifaTipoPontoVentaList; - } - - public void setTarifaTipoPontoVentaList(MyListbox tarifaTipoPontoVentaList) { - this.tarifaTipoPontoVentaList = tarifaTipoPontoVentaList; - } - - @Override - public void doAfterCompose(Component comp) throws Exception { - super.doAfterCompose(comp); - - lsTarifaCategoria = new ArrayList(); - tarifaCategoriaList.setItemRenderer(new RenderTarifaCategoria()); - - lsTarifaTipoPontoVenta = new ArrayList(); - tarifaTipoPontoVentaList.setItemRenderer(new RenderTarifaTipoPuntoVenta()); - - tarifaList = (MyListbox) Executions.getCurrent().getArg().get("tarifaList"); - tarifa = (Tarifa) Executions.getCurrent().getArg().get("tarifa"); - - tarifa = tarifaService.obtenerID(tarifa.getTarifaId()); - - if (tarifa.getLsTarifaCategoria() != null) { - lsTarifaCategoria.addAll(tarifa.getLsTarifaCategoria()); - } - tarifaCategoriaList.setData(lsTarifaCategoria); - - if (tarifa.getLsTarifaTipoptovta() != null) { - lsTarifaTipoPontoVenta.addAll(tarifa.getLsTarifaTipoptovta()); - } - tarifaTipoPontoVentaList.setData(lsTarifaTipoPontoVenta); - - lsMarcas = new ArrayList(); - lsMarcas.add(null); - lsMarcas.addAll(marcaService.obtenerTodos()); - - lsClaseServico = new ArrayList(); - lsClaseServico.add(null); - lsClaseServico.addAll(claseServicioService.obtenerTodos()); - - lsMonedas = new ArrayList(); - lsMonedas.add(null); - lsMonedas.addAll(monedaService.obtenerTodos()); - - lsTramos = new ArrayList(); - lsTramos.add(null); - lsTramos.addAll(tramoService.obtenerTodos()); - - lsVigenciaTarifa = new ArrayList(); - lsVigenciaTarifa.add(null); - lsVigenciaTarifa.addAll(vigenciaTarifaService.obtenerTodos()); - - lsCategoria = new ArrayList(); - lsCategoria.add(null); - lsCategoria.addAll(categoriaService.obtenerTodos()); - - lsTipoPontoVenta = new ArrayList(); - lsTipoPontoVenta.add(null); - lsTipoPontoVenta.addAll(tipoPuntoVentaService.obtenerTodos()); - lsTipoPontoVenta.remove(tipoPuntoVentaService.obtenerID((short) -1)); - - if (tarifa.getTarifaId() == null) { - btnApagar.setVisible(Boolean.FALSE); - } else { - StringBuilder sb = new StringBuilder(""); - sb.append(tarifa.getTramo().getOrigem()).append(" - ").append(tarifa.getTramo().getDestino()).append(" | ").append(tarifa.getTramo().getVia().getNombvia()); - txtDescripcionTramo.setText(sb.toString()); - - tarifa.setPreciooriginal(tarifa.getPrecio()); - } - } - - private void validarObligatorio() { - //dbPrecioTarifaCategoria.getValue(); - txtPrecio.getValue(); - txtPrecioRedAbierto.getValue(); - //dbPrecioTipoPuntoVenta.getValue(); - } - - public void onClick$btnSalvar(Event ev) throws InterruptedException { - validarObligatorio(); - - tarifa.setFecmodif(Calendar.getInstance().getTime()); - tarifa.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - tarifa.setActivo(Boolean.TRUE); - tarifa.setLsTarifaCategoria(lsTarifaCategoria); - tarifa.setLsTarifaTipoptovta(lsTarifaTipoPontoVenta); - - Comboitem cbiVigenciaTarifa = cmbVigencia.getSelectedItem(); - VigenciaTarifa vigenciaTarifa = null; - if (cbiVigenciaTarifa != null) { - vigenciaTarifa = (VigenciaTarifa) cbiVigenciaTarifa.getValue(); - } - tarifa.setVigenciaTarifa(vigenciaTarifa); - - try { - - try { - if (tarifa.getTarifaId() == null) { - tarifaService.suscribir(tarifa); - tarifaList.addItem(tarifa); - - Messagebox.show( - Labels.getLabel("editarTarifaController.btnFechar.MSG.SuscbrirOK"), - Labels.getLabel("editarTarifaController.window.title"), - Messagebox.OK, Messagebox.INFORMATION); - - } else { - Marca marca = (Marca) (cmbMarca.getSelectedItem() != null ? cmbMarca.getSelectedItem().getValue() : null); - ClaseServicio claseServicio = (ClaseServicio) (cmbClaseServicio.getSelectedItem() != null ? cmbClaseServicio.getSelectedItem().getValue() : null); - Parada origem = tarifa.getTramo().getOrigem(); - Parada destino = tarifa.getTramo().getDestino(); - Moneda moneda = tarifa.getMoneda(); - Ciudad cidadeOrigem = null; - Plaza plaza = null; - if (origem.getCiudad() != null) { - cidadeOrigem = ciudadService.obtenerID(origem.getCiudad().getCiudadId()); - plaza = cidadeOrigem.getPlaza(); - } - - // checando se opode alterar o valor da tarifa de acordo com o catalogo de tarifas minimas: - Boolean podeAlterarTarifaMinima = - tarifaService.podeAlterarTarifaMinima(tarifa, marca, - origem, destino, claseServicio, plaza, moneda); - - // buscando por Mercado Competido. - boolean existeMercadoCompetido = mercadoCompetidoService.existe(claseServicio, origem, destino); - - if (podeAlterarTarifaMinima) { - List lsTarifas = tarifaService.pesquisar(marca, tarifa.getTramo(), - tarifa.getMoneda(), claseServicio, tarifa.getVigenciaTarifa()); - - if (lsTarifas.size() >= 2) { - Messagebox.show( - Labels.getLabel("MSG.Registro.Existe"), - Labels.getLabel("editarTarifaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } else { - if (!existeMercadoCompetido) { - tarifaService.actualizacion(tarifa); - tarifaList.updateItem(tarifa); - - Messagebox.show( - Labels.getLabel("editarTarifaController.btnFechar.MSG.SuscbrirOK"), - Labels.getLabel("editarTarifaController.window.title"), - Messagebox.OK, Messagebox.INFORMATION); - - closeWindow(); - } else { - Integer opcao = Messagebox.show( - Labels.getLabel("editarTarifaController.MSG.MercadoCompetido"), - Labels.getLabel("editarTarifaController.window.title"), - Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); - - if (opcao.equals(Messagebox.YES)) { - tarifaService.actualizacion(tarifa); - tarifaList.updateItem(tarifa); - - Messagebox.show( - Labels.getLabel("editarTarifaController.btnFechar.MSG.SuscbrirOK"), - Labels.getLabel("editarTarifaController.window.title"), - Messagebox.OK, Messagebox.INFORMATION); - - closeWindow(); - } - } - } - } else { - String stTarifa = tarifa.getTramo() + " - " - + tarifa.getPrecio().setScale(2).toString(); - - Integer opcao = Messagebox.show(stTarifa + ". " - + Labels.getLabel("editarTarifaController.MSG.TarifaMinima"), - Labels.getLabel("editarTarifaController.window.title"), - Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); - - if (opcao.equals(Messagebox.YES)) { - tarifaService.actualizacion(tarifa); - tarifaList.updateItem(tarifa); - - Messagebox.show( - Labels.getLabel("editarTarifaController.btnFechar.MSG.SuscbrirOK"), - Labels.getLabel("editarTarifaController.window.title"), - Messagebox.OK, Messagebox.INFORMATION); - - closeWindow(); - } - } - } - } catch (NumberFormatException ex) { - log.error("TARIFA - NumberFormatException: " + ex); - } - } catch (Exception ex) { - log.error("Erro ao salvar tarifa: " + ex); - Messagebox.show( - Labels.getLabel("MSG.Error"), - Labels.getLabel("editarTarifaController.window.title"), - Messagebox.OK, Messagebox.ERROR); - } - } - - public void onClick$btnApagar(Event ev) { - tarifa.setFecmodif(Calendar.getInstance().getTime()); - tarifa.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - tarifa.setActivo(Boolean.TRUE); - - try { - int opcao = Messagebox.show( - Labels.getLabel("editarTarifaController.btnFechar.MSG.Deseja.Borrar"), - Labels.getLabel("editarTarifaController.window.title"), - Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); - - if (opcao == Messagebox.YES) { - tarifaService.borrar(tarifa); - tarifaList.removeItem(tarifa); - - Messagebox.show( - Labels.getLabel("editarTarifaController.btnFechar.MSG.BorrarOK"), - Labels.getLabel("editarTarifaController.window.title"), - Messagebox.OK, Messagebox.INFORMATION); - - closeWindow(); - } - } catch (Exception ex) { - log.error(ex); - } - } - - public void onClick$btnAddTarifaCategoria(Event ev) throws InterruptedException { - cmbCategoria.setConstraint("no empty"); - cmbCategoria.getValue(); - - dbPrecioTarifaCategoria.setConstraint("no empty, no zero"); - dbPrecioTarifaCategoria.getValue(); - -// dbPrecioAbiertoTarifaCategoria.setConstraint("no empty, no zero"); -// dbPrecioAbiertoTarifaCategoria.getValue(); - - Comboitem ciCategoria = cmbCategoria.getSelectedItem(); - Categoria categoria = null; - if (ciCategoria != null) { - categoria = (Categoria) ciCategoria.getValue(); - - - TarifaCategoria tc = new TarifaCategoria(); - tc.setCategoria(categoria); - tc.setPrecio((dbPrecioTarifaCategoria.getValueDecimal() == null) ? new BigDecimal(BigInteger.ZERO) : dbPrecioTarifaCategoria.getValueDecimal()); - tc.setPrecioredabierto((dbPrecioAbiertoTarifaCategoria.getValueDecimal() == null) ? new BigDecimal(BigInteger.ZERO) : dbPrecioAbiertoTarifaCategoria.getValueDecimal()); - tc.setActivo(Boolean.TRUE); - tc.setFecmodif(Calendar.getInstance().getTime()); - tc.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - - boolean existe = false; - for (TarifaCategoria tCategoria : lsTarifaCategoria) { - if (tCategoria.getCategoria().equals(tc.getCategoria())) { - existe = true; - } - } - if (!existe) { - lsTarifaCategoria.add(tc); - tarifaCategoriaList.setData(lsTarifaCategoria); - dbPrecioTarifaCategoria.setConstraint(""); - dbPrecioAbiertoTarifaCategoria.setConstraint(""); - - dbPrecioTarifaCategoria.setText("0"); - dbPrecioAbiertoTarifaCategoria.setText("0"); - - cmbCategoria.setConstraint(""); - cmbCategoria.setSelectedItem(null); - } else { - Messagebox.show( - Labels.getLabel("MSG.Registro.Existe"), - Labels.getLabel("editarTarifaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } - - } - } - - public void onClick$btnAddTarifaTipoPontoVenta(Event ev) throws InterruptedException { - cmbTipoPontoVenta.setConstraint("no empty"); - cmbTipoPontoVenta.getValue(); - - dbPrecioTipoPuntoVenta.setConstraint("no empty, no zero"); - dbPrecioTipoPuntoVenta.getValue(); - -// dbPrecioAbiertoTipoPuntoVenta.setConstraint("no empty, no zero"); -// dbPrecioAbiertoTipoPuntoVenta.getValue(); - - Comboitem ciTipoPontoVenta = cmbTipoPontoVenta.getSelectedItem(); - TipoPuntoVenta tipoPuntoVenta = null; - if (ciTipoPontoVenta != null) { - tipoPuntoVenta = (TipoPuntoVenta) ciTipoPontoVenta.getValue(); - - - TarifaTipoptovta tt = new TarifaTipoptovta(); - tt.setTipoPuntoVenta(tipoPuntoVenta); - tt.setPrecio((dbPrecioTipoPuntoVenta.getValueDecimal() == null) ? new BigDecimal(BigInteger.ZERO) : dbPrecioTipoPuntoVenta.getValueDecimal()); - tt.setPrecioredabierto((dbPrecioAbiertoTipoPuntoVenta.getValueDecimal() == null) ? new BigDecimal(BigInteger.ZERO) : dbPrecioAbiertoTipoPuntoVenta.getValueDecimal()); - - tt.setActivo(Boolean.TRUE); - tt.setFecmodif(Calendar.getInstance().getTime()); - tt.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - - boolean existe = false; - for (TarifaTipoptovta tCategoria : lsTarifaTipoPontoVenta) { - if (tCategoria.getTipoPuntoVenta().equals(tt.getTipoPuntoVenta())) { - existe = true; - } - } - if (!existe) { - lsTarifaTipoPontoVenta.add(tt); - tarifaTipoPontoVentaList.setData(lsTarifaTipoPontoVenta); - - dbPrecioTipoPuntoVenta.setConstraint(""); - dbPrecioAbiertoTipoPuntoVenta.setConstraint(""); - - dbPrecioTipoPuntoVenta.setText("0"); - dbPrecioAbiertoTipoPuntoVenta.setText("0"); - - cmbTipoPontoVenta.setConstraint(""); - cmbTipoPontoVenta.setSelectedItem(null); - } else { - Messagebox.show( - Labels.getLabel("MSG.Registro.Existe"), - Labels.getLabel("editarTarifaController.window.title"), - Messagebox.OK, Messagebox.EXCLAMATION); - } - } - } - - public void onClick$btnRmvTarifaCategoria(Event ev) { - TarifaCategoria tc = (TarifaCategoria) tarifaCategoriaList.getSelected(); - - if (tc != null) { - if (tc.getTarifacategoriaId() != null) { - tc.setActivo(Boolean.FALSE); - tc.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - tc.setFecmodif(Calendar.getInstance().getTime()); - - tarifaCategoriaService.borrar(tc); - } - - lsTarifaCategoria.remove(tc); - tarifaCategoriaList.setData(lsTarifaCategoria); - } - } - - public void onClick$btnRmvTarifaTipoPontoVenta(Event ev) { - TarifaTipoptovta tt = (TarifaTipoptovta) tarifaTipoPontoVentaList.getSelected(); - - if (tt != null) { - if (tt.getTarifatipoptovtaId() != null) { - tt.setActivo(Boolean.FALSE); - tt.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - tt.setFecmodif(Calendar.getInstance().getTime()); - - tarifaTipoptovtaService.borrar(tt); - } - - lsTarifaTipoPontoVenta.remove(tt); - tarifaTipoPontoVentaList.setData(lsTarifaTipoPontoVenta); - } - } + public List getLsTipoPontoVenta() { + return lsTipoPontoVenta; + } + + public void setLsTipoPontoVenta(List lsTipoPontoVenta) { + this.lsTipoPontoVenta = lsTipoPontoVenta; + } + + public Combobox getCmbTipoPontoVenta() { + return cmbTipoPontoVenta; + } + + public void setCmbTipoPontoVenta(Combobox cmbTipoPontoVenta) { + this.cmbTipoPontoVenta = cmbTipoPontoVenta; + } + + public MyListbox getTarifaTipoPontoVentaList() { + return tarifaTipoPontoVentaList; + } + + public void setTarifaTipoPontoVentaList(MyListbox tarifaTipoPontoVentaList) { + this.tarifaTipoPontoVentaList = tarifaTipoPontoVentaList; + } + + @Override + public void doAfterCompose(Component comp) throws Exception { + super.doAfterCompose(comp); + + lsTarifaCategoria = new ArrayList(); + tarifaCategoriaList.setItemRenderer(new RenderTarifaCategoria()); + + lsTarifaTipoPontoVenta = new ArrayList(); + tarifaTipoPontoVentaList.setItemRenderer(new RenderTarifaTipoPuntoVenta()); + + tarifaList = (MyListbox) Executions.getCurrent().getArg().get("tarifaList"); + tarifa = (Tarifa) Executions.getCurrent().getArg().get("tarifa"); + + tarifa = tarifaService.obtenerID(tarifa.getTarifaId()); + + if (tarifa.getLsTarifaCategoria() != null) { + lsTarifaCategoria.addAll(tarifa.getLsTarifaCategoria()); + } + tarifaCategoriaList.setData(lsTarifaCategoria); + + if (tarifa.getLsTarifaTipoptovta() != null) { + lsTarifaTipoPontoVenta.addAll(tarifa.getLsTarifaTipoptovta()); + } + tarifaTipoPontoVentaList.setData(lsTarifaTipoPontoVenta); + + lsMarcas = new ArrayList(); + lsMarcas.add(null); + lsMarcas.addAll(marcaService.obtenerTodos()); + + lsClaseServico = new ArrayList(); + lsClaseServico.add(null); + lsClaseServico.addAll(claseServicioService.obtenerTodos()); + + lsMonedas = new ArrayList(); + lsMonedas.add(null); + lsMonedas.addAll(monedaService.obtenerTodos()); + + lsTramos = new ArrayList(); + lsTramos.add(null); + lsTramos.addAll(tramoService.obtenerTodos()); + + lsVigenciaTarifa = new ArrayList(); + lsVigenciaTarifa.add(null); + lsVigenciaTarifa.addAll(vigenciaTarifaService.obtenerTodos()); + + lsCategoria = new ArrayList(); + lsCategoria.add(null); + lsCategoria.addAll(categoriaService.obtenerTodos()); + + lsTipoPontoVenta = new ArrayList(); + lsTipoPontoVenta.add(null); + lsTipoPontoVenta.addAll(tipoPuntoVentaService.obtenerTodos()); + lsTipoPontoVenta.remove(tipoPuntoVentaService.obtenerID((short) -1)); + + if (tarifa.getTarifaId() == null) { + btnApagar.setVisible(Boolean.FALSE); + } else { + StringBuilder sb = new StringBuilder(""); + sb.append(tarifa.getTramo().getOrigem()).append(" - ").append(tarifa.getTramo().getDestino()).append(" | ").append(tarifa.getTramo().getVia().getNombvia()); + txtDescripcionTramo.setText(sb.toString()); + + tarifa.setPreciooriginal(tarifa.getPrecio()); + } + } + + private void validarObligatorio() { + txtPrecio.getValue(); + txtPrecioRedAbierto.getValue(); + } + + public void onClick$btnSalvar(Event ev) throws InterruptedException { + validarObligatorio(); + + tarifa.setFecmodif(Calendar.getInstance().getTime()); + tarifa.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + tarifa.setActivo(Boolean.TRUE); + tarifa.setLsTarifaCategoria(lsTarifaCategoria); + tarifa.setLsTarifaTipoptovta(lsTarifaTipoPontoVenta); + + Comboitem cbiVigenciaTarifa = cmbVigencia.getSelectedItem(); + VigenciaTarifa vigenciaTarifa = null; + if (cbiVigenciaTarifa != null) { + vigenciaTarifa = (VigenciaTarifa) cbiVigenciaTarifa.getValue(); + } + tarifa.setVigenciaTarifa(vigenciaTarifa); + + try { + + try { + if (tarifa.getTarifaId() == null) { + tarifaService.suscribir(tarifa); + tarifaList.addItem(tarifa); + + Messagebox.show( + Labels.getLabel("editarTarifaController.btnFechar.MSG.SuscbrirOK"), + Labels.getLabel("editarTarifaController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + + } else { + Marca marca = (Marca) (cmbMarca.getSelectedItem() != null ? cmbMarca.getSelectedItem().getValue() : null); + ClaseServicio claseServicio = (ClaseServicio) (cmbClaseServicio.getSelectedItem() != null ? cmbClaseServicio.getSelectedItem().getValue() : null); + Parada origem = tarifa.getTramo().getOrigem(); + Parada destino = tarifa.getTramo().getDestino(); + Moneda moneda = tarifa.getMoneda(); + Ciudad cidadeOrigem = null; + Plaza plaza = null; + if (origem.getCiudad() != null) { + cidadeOrigem = ciudadService.obtenerID(origem.getCiudad().getCiudadId()); + plaza = cidadeOrigem.getPlaza(); + } + + // checando se opode alterar o valor da tarifa de acordo com + // o catalogo de tarifas minimas: + Boolean podeAlterarTarifaMinima =tarifaService.podeAlterarTarifaMinima(tarifa, marca,origem, destino, claseServicio, plaza, moneda); + + // buscando por Mercado Competido. + boolean existeMercadoCompetido = mercadoCompetidoService.existe(claseServicio, origem, destino); + + if (podeAlterarTarifaMinima) { + + if (!existeMercadoCompetido) { + tarifaService.actualizacion(tarifa); + tarifaList.updateItem(tarifa); + + Messagebox.show( + Labels.getLabel("editarTarifaController.btnFechar.MSG.SuscbrirOK"), + Labels.getLabel("editarTarifaController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + + closeWindow(); + } else { + Integer opcao = Messagebox.show( + Labels.getLabel("editarTarifaController.MSG.MercadoCompetido"), + Labels.getLabel("editarTarifaController.window.title"), + Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); + + if (opcao.equals(Messagebox.YES)) { + tarifaService.actualizacion(tarifa); + tarifaList.updateItem(tarifa); + + Messagebox.show( + Labels.getLabel("editarTarifaController.btnFechar.MSG.SuscbrirOK"), + Labels.getLabel("editarTarifaController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + + closeWindow(); + } + } + + } else { + String stTarifa = tarifa.getTramo() + " - " + + tarifa.getPrecio().setScale(2).toString(); + + Integer opcao = Messagebox.show(stTarifa + ". " + + Labels.getLabel("editarTarifaController.MSG.TarifaMinima"), + Labels.getLabel("editarTarifaController.window.title"), + Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); + + if (opcao.equals(Messagebox.YES)) { + tarifaService.actualizacion(tarifa); + tarifaList.updateItem(tarifa); + + Messagebox.show( + Labels.getLabel("editarTarifaController.btnFechar.MSG.SuscbrirOK"), + Labels.getLabel("editarTarifaController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + + closeWindow(); + } + } + } + } catch (NumberFormatException ex) { + log.error("TARIFA - NumberFormatException: " + ex); + } + } catch (Exception ex) { + log.error("Erro ao salvar tarifa: " + ex); + Messagebox.show( + Labels.getLabel("MSG.Error"), + Labels.getLabel("editarTarifaController.window.title"), + Messagebox.OK, Messagebox.ERROR); + } + } + + public void onClick$btnApagar(Event ev) { + tarifa.setFecmodif(Calendar.getInstance().getTime()); + tarifa.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + tarifa.setActivo(Boolean.TRUE); + + try { + int opcao = Messagebox.show( + Labels.getLabel("editarTarifaController.btnFechar.MSG.Deseja.Borrar"), + Labels.getLabel("editarTarifaController.window.title"), + Messagebox.YES | Messagebox.NO, Messagebox.QUESTION); + + if (opcao == Messagebox.YES) { + tarifaService.borrar(tarifa); + tarifaList.removeItem(tarifa); + + Messagebox.show( + Labels.getLabel("editarTarifaController.btnFechar.MSG.BorrarOK"), + Labels.getLabel("editarTarifaController.window.title"), + Messagebox.OK, Messagebox.INFORMATION); + + closeWindow(); + } + } catch (Exception ex) { + log.error(ex); + } + } + + public void onClick$btnAddTarifaCategoria(Event ev) throws InterruptedException { + cmbCategoria.setConstraint("no empty"); + cmbCategoria.getValue(); + + dbPrecioTarifaCategoria.setConstraint("no empty, no zero"); + dbPrecioTarifaCategoria.getValue(); + + // dbPrecioAbiertoTarifaCategoria.setConstraint("no empty, no zero"); + // dbPrecioAbiertoTarifaCategoria.getValue(); + + Comboitem ciCategoria = cmbCategoria.getSelectedItem(); + Categoria categoria = null; + if (ciCategoria != null) { + categoria = (Categoria) ciCategoria.getValue(); + + TarifaCategoria tc = new TarifaCategoria(); + tc.setCategoria(categoria); + tc.setPrecio((dbPrecioTarifaCategoria.getValueDecimal() == null) ? new BigDecimal(BigInteger.ZERO) : dbPrecioTarifaCategoria.getValueDecimal()); + tc.setPrecioredabierto((dbPrecioAbiertoTarifaCategoria.getValueDecimal() == null) ? new BigDecimal(BigInteger.ZERO) : dbPrecioAbiertoTarifaCategoria.getValueDecimal()); + tc.setActivo(Boolean.TRUE); + tc.setFecmodif(Calendar.getInstance().getTime()); + tc.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + + boolean existe = false; + for (TarifaCategoria tCategoria : lsTarifaCategoria) { + if (tCategoria.getCategoria().equals(tc.getCategoria())) { + existe = true; + } + } + if (!existe) { + lsTarifaCategoria.add(tc); + tarifaCategoriaList.setData(lsTarifaCategoria); + dbPrecioTarifaCategoria.setConstraint(""); + dbPrecioAbiertoTarifaCategoria.setConstraint(""); + + dbPrecioTarifaCategoria.setText("0"); + dbPrecioAbiertoTarifaCategoria.setText("0"); + + cmbCategoria.setConstraint(""); + cmbCategoria.setSelectedItem(null); + } else { + Messagebox.show( + Labels.getLabel("MSG.Registro.Existe"), + Labels.getLabel("editarTarifaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } + + } + } + + public void onClick$btnAddTarifaTipoPontoVenta(Event ev) throws InterruptedException { + cmbTipoPontoVenta.setConstraint("no empty"); + cmbTipoPontoVenta.getValue(); + + dbPrecioTipoPuntoVenta.setConstraint("no empty, no zero"); + dbPrecioTipoPuntoVenta.getValue(); + + // dbPrecioAbiertoTipoPuntoVenta.setConstraint("no empty, no zero"); + // dbPrecioAbiertoTipoPuntoVenta.getValue(); + + Comboitem ciTipoPontoVenta = cmbTipoPontoVenta.getSelectedItem(); + TipoPuntoVenta tipoPuntoVenta = null; + if (ciTipoPontoVenta != null) { + tipoPuntoVenta = (TipoPuntoVenta) ciTipoPontoVenta.getValue(); + + TarifaTipoptovta tt = new TarifaTipoptovta(); + tt.setTipoPuntoVenta(tipoPuntoVenta); + tt.setPrecio((dbPrecioTipoPuntoVenta.getValueDecimal() == null) ? new BigDecimal(BigInteger.ZERO) : dbPrecioTipoPuntoVenta.getValueDecimal()); + tt.setPrecioredabierto((dbPrecioAbiertoTipoPuntoVenta.getValueDecimal() == null) ? new BigDecimal(BigInteger.ZERO) : dbPrecioAbiertoTipoPuntoVenta.getValueDecimal()); + + tt.setActivo(Boolean.TRUE); + tt.setFecmodif(Calendar.getInstance().getTime()); + tt.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + + boolean existe = false; + for (TarifaTipoptovta tCategoria : lsTarifaTipoPontoVenta) { + if (tCategoria.getTipoPuntoVenta().equals(tt.getTipoPuntoVenta())) { + existe = true; + } + } + if (!existe) { + lsTarifaTipoPontoVenta.add(tt); + tarifaTipoPontoVentaList.setData(lsTarifaTipoPontoVenta); + + dbPrecioTipoPuntoVenta.setConstraint(""); + dbPrecioAbiertoTipoPuntoVenta.setConstraint(""); + + dbPrecioTipoPuntoVenta.setText("0"); + dbPrecioAbiertoTipoPuntoVenta.setText("0"); + + cmbTipoPontoVenta.setConstraint(""); + cmbTipoPontoVenta.setSelectedItem(null); + } else { + Messagebox.show( + Labels.getLabel("MSG.Registro.Existe"), + Labels.getLabel("editarTarifaController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + } + } + } + + public void onClick$btnRmvTarifaCategoria(Event ev) { + TarifaCategoria tc = (TarifaCategoria) tarifaCategoriaList.getSelected(); + + if (tc != null) { + if (tc.getTarifacategoriaId() != null) { + tc.setActivo(Boolean.FALSE); + tc.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + tc.setFecmodif(Calendar.getInstance().getTime()); + + tarifaCategoriaService.borrar(tc); + } + + lsTarifaCategoria.remove(tc); + tarifaCategoriaList.setData(lsTarifaCategoria); + } + } + + public void onClick$btnRmvTarifaTipoPontoVenta(Event ev) { + TarifaTipoptovta tt = (TarifaTipoptovta) tarifaTipoPontoVentaList.getSelected(); + + if (tt != null) { + if (tt.getTarifatipoptovtaId() != null) { + tt.setActivo(Boolean.FALSE); + tt.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + tt.setFecmodif(Calendar.getInstance().getTime()); + + tarifaTipoptovtaService.borrar(tt); + } + + lsTarifaTipoPontoVenta.remove(tt); + tarifaTipoPontoVentaList.setData(lsTarifaTipoPontoVenta); + } + } } diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/GenerarTarifaOrgaoController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/GenerarTarifaOrgaoController.java index 3b143284b..6c532d892 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/GenerarTarifaOrgaoController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/GenerarTarifaOrgaoController.java @@ -55,7 +55,6 @@ public class GenerarTarifaOrgaoController extends MyGenericForwardComposer { private Checkbox chkTarifa; private Checkbox chkTaxaEmbarque; private Checkbox chkSeguro; - private Checkbox chkPedagio; @Override public void doAfterCompose(Component comp) throws Exception { diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderTarifa.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderTarifa.java index ac57981db..e8689f5a2 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderTarifa.java +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderTarifa.java @@ -28,7 +28,6 @@ public class RenderTarifa implements ListitemRenderer { lc.setParent(lstm); if (t.getPrecio() != null) { - //lc = new Listcell(t.getPrecio().setScale(2).toString()); lc = new Listcell(df.format(t.getPrecio())); } else { lc = new Listcell(""); @@ -36,7 +35,6 @@ public class RenderTarifa implements ListitemRenderer { lc.setParent(lstm); if (t.getPreciooriginal() != null) { - //lc = new Listcell(t.getPreciooriginal().setScale(2).toString()); lc = new Listcell(df.format(t.getPreciooriginal())); } else { lc = new Listcell(""); @@ -97,15 +95,20 @@ public class RenderTarifa implements ListitemRenderer { lc = new Listcell(""); } lc.setParent(lstm); - - if (t.getMoneda() != null) { - lc = new Listcell(t.getMoneda().getDescmoneda()); + + if (t.getOrgaoConcedente() != null){ + lc = new Listcell(t.getOrgaoConcedente().getDescOrgao()); } else { lc = new Listcell(""); } lc.setParent(lstm); - - + + if (t.getRuta() != null){ + lc = new Listcell(t.getRuta().getPrefixo()); + } else { + lc = new Listcell(""); + } + lc.setParent(lstm); lstm.setAttribute("data", t); } diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 342128297..d833acf70 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -1304,6 +1304,9 @@ busquedaTarifaController.lhRuta.label = Linha busquedaTarifaController.lhTipoPuntoVenta.label = Canal de Venda busquedaTarifaController.lhCategoria.label = Tipo de Passageiro busquedaTarifaController.lhTramo.label = Trecho +busquedaTarifaController.lhOrgao.label = Órgão +busquedaTarifaController.lhLinha.label = Linha +busquedaTarifaController.lhPedagio.label = Pedágio busquedaTarifaController.btnPesquisa.label = Pesquisa busquedaTarifaController.lhVigencia.label = Vigência busquedaTarifaController.lhStatusTarifa.label = Status Tarifa diff --git a/web/gui/tarifas/busquedaTarifas.zul b/web/gui/tarifas/busquedaTarifas.zul index 72bbe3d2e..008f64e20 100644 --- a/web/gui/tarifas/busquedaTarifas.zul +++ b/web/gui/tarifas/busquedaTarifas.zul @@ -83,26 +83,28 @@ - - - - - - - - - - + + diff --git a/web/gui/tarifas/editarTarifas.zul b/web/gui/tarifas/editarTarifas.zul index ba06f3731..2bb782134 100644 --- a/web/gui/tarifas/editarTarifas.zul +++ b/web/gui/tarifas/editarTarifas.zul @@ -44,6 +44,11 @@ + + diff --git a/web/gui/tarifas/generarTarifaOrgao.zul b/web/gui/tarifas/generarTarifaOrgao.zul index 2b9cfa5d6..b76e3526b 100644 --- a/web/gui/tarifas/generarTarifaOrgao.zul +++ b/web/gui/tarifas/generarTarifaOrgao.zul @@ -37,7 +37,6 @@ -