From 81f357fd7aee7aa0a4b9b0c54fb74a4ea19871db Mon Sep 17 00:00:00 2001 From: "eduardo.dicarde" Date: Wed, 14 Sep 2016 17:34:58 +0000 Subject: [PATCH] fixes bug #7925 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Inclusão de método para validar o valor de ICMS na tabela EmpresaImposto git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@60306 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../tarifas/CalcularPeajeController.java | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/CalcularPeajeController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/CalcularPeajeController.java index 161426128..49d7477b1 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/CalcularPeajeController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/CalcularPeajeController.java @@ -12,9 +12,12 @@ import org.zkoss.zul.Combobox; import org.zkoss.zul.Messagebox; import com.rjconsultores.ventaboletos.constantes.Constantes; import com.rjconsultores.ventaboletos.entidad.ClasseIndicePeaje; +import com.rjconsultores.ventaboletos.entidad.EmpresaImposto; import com.rjconsultores.ventaboletos.entidad.OrgaoConcedente; import com.rjconsultores.ventaboletos.entidad.Ruta; +import com.rjconsultores.ventaboletos.entidad.RutaEmpresa; import com.rjconsultores.ventaboletos.service.CalcularPeajeService; +import com.rjconsultores.ventaboletos.service.EmpresaImpostoService; import com.rjconsultores.ventaboletos.service.OrgaoConcedenteService; import com.rjconsultores.ventaboletos.service.RutaService; import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; @@ -31,6 +34,9 @@ public class CalcularPeajeController extends MyGenericForwardComposer { private RutaService rutaService; @Autowired private CalcularPeajeService calcularPeajeService; + @Autowired + private EmpresaImpostoService empresaImpostoService; + private Combobox cmbOrgaoConcedente; private List lsOrgaoConcedente; @@ -67,6 +73,13 @@ public class CalcularPeajeController extends MyGenericForwardComposer { OrgaoConcedente orgao = ((OrgaoConcedente) cmbOrgaoConcedente.getSelectedItem().getValue()); if (orgao.getIndicePeaje() != null) { List lsRuta = rutaService.buscaRutasFromOrgao(orgao); + if (!validarImpostoICMSEmpresa(lsRuta)){ + Messagebox.show("Foram encontradas empresas com ICMS nulo, o cálculo não poderá ser realizado.", + Labels.getLabel("indexController.mniCalculoPeaje.label"), Messagebox.OK, Messagebox.ERROR); + + return; + } + try { calcularPeajeService.gerarSQLInserirPeajes(lsRuta, orgao); @@ -103,4 +116,28 @@ public class CalcularPeajeController extends MyGenericForwardComposer { Labels.getLabel("indexController.mniCalculoPeaje.label"), Messagebox.NO, Messagebox.ERROR); } } + + private boolean validarImpostoICMSEmpresa(List lsRuta){ + List lsEmpresaId = new ArrayList(); + + for (Ruta ruta: lsRuta){ + for (RutaEmpresa rutaEmpresa: ruta.getLsRutaEmpresa()){ + if (lsEmpresaId.contains(rutaEmpresa.getEmpresa().getEmpresaId())){ + continue; + } + + lsEmpresaId.add(rutaEmpresa.getEmpresa().getEmpresaId()); + } + } + + for (Integer empresaId: lsEmpresaId){ + for (EmpresaImposto empresaImposto: empresaImpostoService.buscarEmpresaImposto(empresaId)){ + if (empresaImposto.getIcms() == null){ + return false; + } + } + } + + return true; + } }