From 1d958ad636e93c284b1260edb4244806084b717b Mon Sep 17 00:00:00 2001 From: leonardo Date: Mon, 19 Aug 2019 13:33:20 +0000 Subject: [PATCH] =?UTF-8?q?15417:=20Enviar=20o=20ICMS=20na=20Sincroniza?= =?UTF-8?q?=C3=A7=C3=A3o=20fixes=20bug#15417=20dev:fred=20qua:leonardo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@96748 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../rest/SincronizarDispositivo.java | 29 +++++++++++++++++-- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/src/java/com/rjconsultores/ventaboletos/rest/SincronizarDispositivo.java b/src/java/com/rjconsultores/ventaboletos/rest/SincronizarDispositivo.java index dfb288e44..f7cabfcc3 100644 --- a/src/java/com/rjconsultores/ventaboletos/rest/SincronizarDispositivo.java +++ b/src/java/com/rjconsultores/ventaboletos/rest/SincronizarDispositivo.java @@ -1,5 +1,8 @@ package com.rjconsultores.ventaboletos.rest; +import java.util.HashMap; +import java.util.Map; + import javax.annotation.security.RolesAllowed; import javax.ws.rs.Consumes; import javax.ws.rs.POST; @@ -19,6 +22,8 @@ import com.rjconsultores.ventaboletos.entidad.Constante; import com.rjconsultores.ventaboletos.entidad.CtrlSerieEmbarcada; import com.rjconsultores.ventaboletos.entidad.DispositivoEmbarcada; import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.entidad.EmpresaImposto; +import com.rjconsultores.ventaboletos.entidad.Estado; import com.rjconsultores.ventaboletos.entidad.InscricaoEstadual; import com.rjconsultores.ventaboletos.entidad.PtovtaEmpresa; import com.rjconsultores.ventaboletos.entidad.PuntoVenta; @@ -64,6 +69,8 @@ public class SincronizarDispositivo { vo.setEnderecoAgencia(puntoVenta.getDireccioncalle()+", nš: "+puntoVenta.getDireccionnumero()+". Cidade: "+puntoVenta.getCidade()); vo.setCnpjEmpresa(empresa.getCnpj()); + Map impostos = getImpostos(empresa); + for (PtovtaEmpresa e : puntoVenta.getLsPtovtaEmpresa()){ EmpresaVO emp = new EmpresaVO(); emp.setEmpresaId(e.getEmpresa().getEmpresaId().longValue()); @@ -73,8 +80,16 @@ public class SincronizarDispositivo { emp.setIndImprimeLogoBilheteVendaEmbarcada(e.getEmpresa().getIndImprimeLogoBilheteVendaEmbarcada() != null ? e.getEmpresa().getIndImprimeLogoBilheteVendaEmbarcada() : Boolean.FALSE); vo.getEmpresasVenda().add(emp); for (InscricaoEstadual insc : e.getEmpresa().getInscricoesEstaduais()){ + EmpresaImposto imposto = impostos.get(insc.getEstado()); + InscricaoEstadualVO ie; if (insc.getActivo()){ - emp.getInscricoesEstaduais().add(new InscricaoEstadualVO(insc)); + ie = new InscricaoEstadualVO(insc); + if (imposto != null) { + ie.setPorctributo(imposto.getPorctributo()); + ie.setTributacaoImportacao(imposto.getTributacaoImportacao()); + ie.setTributacaoImportacaoIM(imposto.getTributacaoImportacaoIM()); + } + emp.getInscricoesEstaduais().add(ie); } } } @@ -86,8 +101,8 @@ public class SincronizarDispositivo { } String estacionIdEmbarcada = estacionEmbarcadaConst.getValorconstante(); vo.setEstacionId(estacionIdEmbarcada != null && !estacionIdEmbarcada.isEmpty() ? Integer.parseInt(estacionIdEmbarcada) : null); - - for (CtrlSerieEmbarcada serie : dispositivo.getSeries()){ + + for (CtrlSerieEmbarcada serie : dispositivo.getSeries()){ EstadoDispositivoEmbarcadaVO estado = new EstadoDispositivoEmbarcadaVO(); estado.setDescUf(serie.getEstado().getCveestado()); estado.setIdUf(serie.getEstado().getEstadoId().longValue()); @@ -98,6 +113,14 @@ public class SincronizarDispositivo { return Response.ok(vo, MediaType.APPLICATION_JSON).build(); } + private Map getImpostos(Empresa e){ + Map result = new HashMap(); + + for (EmpresaImposto ei : e.getEmpresaImpostoList()) { + result.put(ei.getEstado(), ei); + } + return result; + } @JsonIgnoreProperties(ignoreUnknown = true) static class ParamsSincronizarDispositivo { String imei;