diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/gr/AidfListItemRenderer.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/gr/AidfListItemRenderer.java index 9a5ba0de2..998772498 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/gr/AidfListItemRenderer.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/gr/AidfListItemRenderer.java @@ -58,7 +58,7 @@ public class AidfListItemRenderer implements ListitemRenderer { Listcell fecvencimientoCell = aidf.getFecvencimiento()==null ? new Listcell(""): new Listcell(sdf.format(aidf.getFecvencimiento())); fecvencimientoCell.setParent(listItem); - + listItem.setAttribute("data", aidf); } diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/gr/BusquedaAidfController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/gr/BusquedaAidfController.java index e815fdc89..e38b20abb 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/gr/BusquedaAidfController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/gr/BusquedaAidfController.java @@ -1,5 +1,6 @@ package com.rjconsultores.ventaboletos.web.gui.controladores.gr; +import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -21,7 +22,6 @@ import org.zkoss.zul.Textbox; import com.rjconsultores.ventaboletos.entidad.Aidf; import com.rjconsultores.ventaboletos.entidad.AidfEspecie; import com.rjconsultores.ventaboletos.entidad.AidfTipo; -import com.rjconsultores.ventaboletos.entidad.Ciudad; import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.Estado; import com.rjconsultores.ventaboletos.service.AidfService; @@ -36,9 +36,6 @@ import com.rjconsultores.ventaboletos.web.utilerias.paginacion.PagedListWrapper; @Scope("prototype") public class BusquedaAidfController extends MyGenericForwardComposer { - /** - * - */ private static final long serialVersionUID = 1L; @Autowired @@ -67,7 +64,7 @@ public class BusquedaAidfController extends MyGenericForwardComposer { private Textbox txtDocFiscal; private Textbox txtSerie; - + @Override public void doAfterCompose(Component comp) throws Exception { @@ -160,9 +157,10 @@ public class BusquedaAidfController extends MyGenericForwardComposer { } aidfBusqueda.addSortDesc("fecvencimiento"); + aidfBusqueda.addSortDesc("aidfId"); plwAidf.init(aidfBusqueda, aidfList, pagingAidf); - + if (aidfList.getData().length == 0) { try { Messagebox.show(Labels.getLabel("MSG.ningunRegistro"), diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/gr/EditarAidfController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/gr/EditarAidfController.java index b2f4804b7..2499e3298 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/gr/EditarAidfController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/gr/EditarAidfController.java @@ -21,6 +21,7 @@ import org.zkoss.zkplus.databind.BindingListModelList; import org.zkoss.zul.Button; import org.zkoss.zul.Combobox; import org.zkoss.zul.Comboitem; +import org.zkoss.zul.Constraint; import org.zkoss.zul.Datebox; import org.zkoss.zul.Textbox; @@ -45,9 +46,6 @@ import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; @Scope("prototype") public class EditarAidfController extends MyGenericForwardComposer { - /** - * - */ private static final long serialVersionUID = 1L; @Autowired @@ -121,6 +119,8 @@ public class EditarAidfController extends MyGenericForwardComposer { super.doAfterCompose(comp); + txtDocFiscal.setConstraint(new OnlyNumber()); + aidf = (Aidf) Executions.getCurrent().getArg().get("aidf"); aidfList = (MyListbox) Executions.getCurrent().getArg().get("aidfList"); @@ -201,6 +201,30 @@ public class EditarAidfController extends MyGenericForwardComposer { e.printStackTrace(); } + if(!validarDocFiscalEstado(aidf.getAidfId(), txtDocFiscal.getValue(), aidf.getEstado())){ + Messagebox.show( + Labels.getLabel("editarAidfController.btnSalvar.MSG.conflitoDocFiscalEstado"), + Labels.getLabel("editarAidfController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + return; + } + + if (!validarTipoVenda(aidf.getTipoValidaVenta(), aidf.getSerie(), aidf.getAidfTipo().getAidftipoId())) { + Messagebox.show( + Labels.getLabel("editarAidfController.btnSalvar.MSG.serieUNICTipoFormularioContinuoVendaMotoristaNaoPermitido"), + Labels.getLabel("editarAidfController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + return; + } + + if(!validarVendaManual(aidf.getAidfTipo().getAidftipoId(), aidf.getSerie())){ + Messagebox.show( + Labels.getLabel("editarAidfController.btnSalvar.MSG.serieUNICTipoVendaManualNaoPermitido"), + Labels.getLabel("editarAidfController.window.title"), + Messagebox.OK, Messagebox.EXCLAMATION); + return; + } + aidf.setActivo(true); aidf.setFecmodif(Calendar.getInstance().getTime()); aidf.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); @@ -212,7 +236,7 @@ public class EditarAidfController extends MyGenericForwardComposer { aidfService.actualizacion(aidf); aidfList.updateItem(aidf); } - + Messagebox.show( Labels.getLabel("editarAidfController.MSG.suscribirOK"), Labels.getLabel("editarAidfController.window.title"), @@ -220,7 +244,20 @@ public class EditarAidfController extends MyGenericForwardComposer { closeWindow(); } - + + + private Boolean validarDocFiscalEstado(Long idAidf, String docFiscal, Estado estado){ + return aidfService.validarDocFiscalPorEstado(idAidf, docFiscal, estado); + } + + private Boolean validarTipoVenda(String tipoVenda, String serie, Integer tipo){ + return aidfService.validarTipoVenda(tipoVenda, serie, tipo); + } + + private Boolean validarVendaManual(Integer tipo, String serie){ + return aidfService.validarVendaManual(tipo, serie); + } + public void onChange$cmbEmpresa(Event ev) { Comboitem cbiEmpresa = cmbEmpresa.getSelectedItem(); if (cbiEmpresa != null) { @@ -457,4 +494,12 @@ public class EditarAidfController extends MyGenericForwardComposer { this.btnSalvar = btnSalvar; } + public class OnlyNumber implements Constraint { + public void validate(Component comp, Object value) throws WrongValueException { + if (!value.toString().matches("[0-9]+")){ + aidf.setDocfiscal(value.toString()); + throw new WrongValueException(comp, Labels.getLabel("editarAidfController.btnSalvar.MSG.apenasValoresNumericosPermitidos")); + } + } + } } \ No newline at end of file diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 98de82cf2..32988ffea 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -5531,6 +5531,10 @@ editarAidfController.MSG.noWrite=Não será possível editar ou excluir esta AID editarAidfController.btnApagar.MSG.Deseja.Borrar = Deseja eliminar esta AIDF? editarAidfController.btnApagar.MSG.borrarOK = AIDF Excluida com Sucesso. editarAidfController.btnSalvar.MSG.conflitoFormIniFin = Os campos 'Form.Inicial' e/ou 'Form.Final' desta Aidf estão dentro do intervalo dos mesmos campos da Aidf de ID {0} de mesma 'Série' e 'Doc.Fiscal'. +editarAidfController.btnSalvar.MSG.conflitoDocFiscalEstado = Já existe uma AIDF cadastrada com esse número de 'Doc. Fiscal' para o mesmo 'Estado'. +editarAidfController.btnSalvar.MSG.serieUNICTipoFormularioContinuoVendaMotoristaNaoPermitido = Caso 'Série' seja UNIC ou 'Tipo' seja Formulário Contínuo, 'Tipo Venda' MOTORISTA não é permitido. +editarAidfController.btnSalvar.MSG.serieUNICTipoVendaManualNaoPermitido = Caso 'Série' seja UNIC o 'Tipo' Venda Manual não é permitido. +editarAidfController.btnSalvar.MSG.apenasValoresNumericosPermitidos = Apenas valores numéricos são permitidos. movimentacionBilhetesController.window.title=Movimentación de estoque movimentacionBilhetesController.MSG.suscribirOK=Movimentación se guardó exitosamente! diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index fff61fe2b..3adcf8b6f 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -5613,6 +5613,10 @@ editarAidfController.MSG.noWrite=Não será possível editar ou excluir esta AID editarAidfController.btnApagar.MSG.Deseja.Borrar = Deseja eliminar esta AIDF? editarAidfController.btnApagar.MSG.borrarOK = AIDF Excluida com Sucesso. editarAidfController.btnSalvar.MSG.conflitoFormIniFin = Os campos 'Form.Inicial' e/ou 'Form.Final' desta Aidf estão dentro do intervalo dos mesmos campos da Aidf de ID {0} de mesma 'Série' e 'Doc.Fiscal'. +editarAidfController.btnSalvar.MSG.conflitoDocFiscalEstado = Já existe uma AIDF cadastrada com esse número de 'Doc. Fiscal' para o mesmo 'Estado'. +editarAidfController.btnSalvar.MSG.serieUNICTipoFormularioContinuoVendaMotoristaNaoPermitido = Caso 'Série' seja UNIC ou 'Tipo' seja Formulário Contínuo, 'Tipo Venda' MOTORISTA não é permitido. +editarAidfController.btnSalvar.MSG.serieUNICTipoVendaManualNaoPermitido = Caso 'Série' seja UNIC o 'Tipo' Venda Manual não é permitido. +editarAidfController.btnSalvar.MSG.apenasValoresNumericosPermitidos = Apenas valores numéricos são permitidos. movimentacionBilhetesController.window.title=Movimentação de Estoque movimentacionBilhetesController.MSG.suscribirOK=Movimentação gravada com sucesso! diff --git a/web/gui/gr/busquedaAidf.zul b/web/gui/gr/busquedaAidf.zul index dad65659d..538b97105 100644 --- a/web/gui/gr/busquedaAidf.zul +++ b/web/gui/gr/busquedaAidf.zul @@ -65,13 +65,11 @@