diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/impressaofiscal/BusquedaImportacionFiscalController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/impressaofiscal/BusquedaImportacionFiscalController.java index 6ea116902..bde957310 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/impressaofiscal/BusquedaImportacionFiscalController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/impressaofiscal/BusquedaImportacionFiscalController.java @@ -59,6 +59,7 @@ public class BusquedaImportacionFiscalController extends MyGenericForwardCompose private Checkbox chkArquivoTxt; private Checkbox chkArquivoXls; + private Button btnExeImportacionEcfRedZ; private Button btnExeImportacionEcf; private Button btnExeImportacionEcfCancelados; private Button btnExeImportacionReducaoZ; @@ -85,6 +86,13 @@ public class BusquedaImportacionFiscalController extends MyGenericForwardCompose private void defineImportacao() { + boolean isEcfRedZ = Executions.getCurrent().getArg().get("ECF_RED_Z") == null ? Boolean.FALSE : (Boolean) Executions.getCurrent().getArg().get("ECF_RED_Z"); + if (isEcfRedZ) { + btnExeImportacionEcfRedZ.setVisible(true); + } else { + btnExeImportacionEcfRedZ.setVisible(false); + } + boolean isEcf = Executions.getCurrent().getArg().get("ECF") == null ? Boolean.FALSE : (Boolean) Executions.getCurrent().getArg().get("ECF"); if (isEcf) { btnExeImportacionEcf.setVisible(true); @@ -154,6 +162,22 @@ public class BusquedaImportacionFiscalController extends MyGenericForwardCompose } + public void onClick$btnExeImportacionEcfRedZ(Event ev) throws InterruptedException { + + Empresa empresa = null; + Comboitem itemEmpresa = cmbEmpresa.getSelectedItem(); + if (itemEmpresa != null) { + empresa = (Empresa) itemEmpresa.getValue(); + } + + try { + List txts = fiscalService.importacionFiscalECFValidaReducaoZ(datInicial.getValue(), datFinal.getValue(), empresa); + downloadListaArquivos(txts); + } catch (Exception e) { + log.error("", e); + } + } + public void onClick$btnExeImportacionManual(Event ev) throws InterruptedException { Empresa empresa = null; @@ -234,6 +258,22 @@ public class BusquedaImportacionFiscalController extends MyGenericForwardCompose } } + private void downloadListaArquivos(List txts) throws Exception { + + String extensao = ".zip"; + String contentType = "application/zip"; + File arquivoDownload = new File(System.getProperty("jboss.server.log.dir") + File.separator + "fiscal_" + DateUtil.getStringDate(Calendar.getInstance().getTime(), "yyyyMMddhhmm") + extensao); + ZipUtil.compactarArquivos(arquivoDownload, txts); + InputStream isFile = new FileInputStream(arquivoDownload); + String nomeArquivo = arquivoDownload.getName(); + + Filedownload.save(isFile, contentType, nomeArquivo + extensao); + + if (arquivoDownload != null) { + arquivoDownload.delete(); + } + } + private void downloadArquivo(File arquivoTxt, File arquivoXls) throws Exception { String contentType = null; String extensao = null; diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/impressaofiscal/ItemMenuImportacionFiscalEcfReducaoZ.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/impressaofiscal/ItemMenuImportacionFiscalEcfReducaoZ.java new file mode 100644 index 000000000..7b483d4ec --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/impressaofiscal/ItemMenuImportacionFiscalEcfReducaoZ.java @@ -0,0 +1,34 @@ +package com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.impressaofiscal; + +import java.util.HashMap; + +import org.zkoss.util.resource.Labels; + +import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria; +import com.rjconsultores.ventaboletos.web.utilerias.menu.DefaultItemMenuSistema; +import com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.impressaofiscal.TipoImportacaoFiscal.TipoImportacao; + +public class ItemMenuImportacionFiscalEcfReducaoZ extends DefaultItemMenuSistema { + + public ItemMenuImportacionFiscalEcfReducaoZ() { + super("indexController.mniImportacionFiscalEcfReducaoZ.label"); + } + + @Override + public String getClaveMenu() { + return "COM.RJCONSULTORES.ADMINISTRACION.GUI.RELATORIOS.IMPRESSAOFISCAL.MENU.IMPORTACIONFISCAL"; + } + + @Override + public void ejecutar() { + + @SuppressWarnings("unchecked") + HashMap map = TipoImportacaoFiscal.selecionaTipoImportacao(TipoImportacao.ECF_RED_Z, (HashMap) getArgs()); + // map.put("ExibirTipoGeracaoArquivo", true); + + PantallaUtileria.openWindow("/gui/impressaofiscal/busquedaImportacionFiscal.zul", + Labels.getLabel("busquedaImportacionFiscalEcfReducaoZController.window.title"), map, desktop); + + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/impressaofiscal/TipoImportacaoFiscal.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/impressaofiscal/TipoImportacaoFiscal.java index 22a1f3132..4791881a1 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/impressaofiscal/TipoImportacaoFiscal.java +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/impressaofiscal/TipoImportacaoFiscal.java @@ -5,11 +5,12 @@ import java.util.HashMap; public class TipoImportacaoFiscal { public enum TipoImportacao { - ECF, ECF_CANCELADOS, MANUAL, REDUCAO_Z, NAO_FISCAL, RELATORIO_FINANCEIRO, RELATORIO_VOUCHER, PENDENCIA_ECF, PENDENCIA_REDUCAO_Z; + ECF_RED_Z, ECF, ECF_CANCELADOS, MANUAL, REDUCAO_Z, NAO_FISCAL, RELATORIO_FINANCEIRO, RELATORIO_VOUCHER, PENDENCIA_ECF, PENDENCIA_REDUCAO_Z; } public static HashMap selecionaTipoImportacao(TipoImportacao tipo, HashMap map) { + map.remove(TipoImportacao.ECF_RED_Z.toString()); map.remove(TipoImportacao.ECF.toString()); map.remove(TipoImportacao.ECF_CANCELADOS.toString()); map.remove(TipoImportacao.MANUAL.toString()); @@ -19,6 +20,10 @@ public class TipoImportacaoFiscal { map.remove(TipoImportacao.RELATORIO_VOUCHER.toString()); map.remove(TipoImportacao.PENDENCIA_ECF.toString()); + if (tipo.equals(TipoImportacao.ECF_RED_Z)) { + map.put(TipoImportacao.ECF_RED_Z.toString(), Boolean.TRUE); + } + if (tipo.equals(TipoImportacao.ECF)) { map.put(TipoImportacao.ECF.toString(), Boolean.TRUE); } diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 2022ecbaa..272fc251d 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -284,6 +284,7 @@ indexController.mniRelatorioFinanceiro.label=Financeiro indexController.mniRelatorioVoucher.label=Voucher indexController.mniImportacionFiscalPendenciaEcf.label=Pendência ECF indexController.mniImportacionFiscalPendenciaReducaoZ.label=Pendência Redução Z +indexController.mniImportacionFiscalEcfReducaoZ.label=ECF Integrado Redução Z indexController.mniSubMenuClientePacote.label=Paquete indexController.mniManutencaoPacote.label=Mantenimiento Paquete @@ -6447,6 +6448,7 @@ busquedaImportacionFiscalRelatorioFinanceiroController.window.title=Impressão F busquedaImportacionFiscalRelatorioVoucherController.window.title=Impressão Fiscal :: Relatório Voucher busquedaImportacionFiscalEcfPendenciaController.window.title=Impressão Fiscal :: Pendência ECF busquedaImportacionFiscalEcfPendenciaReducaoZController.window.title=Impressão Fiscal :: Pendência Redução Z +busquedaImportacionFiscalEcfReducaoZController.window.title=Impressão Fiscal :: ECF Integrado c/ Redução Z #OCD busquedaOCDParamController.empresa.label=Empresa diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 836f10726..6e1267715 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -290,6 +290,7 @@ indexController.mniRelatorioFinanceiro.label=Financeiro indexController.mniRelatorioVoucher.label=Voucher indexController.mniImportacionFiscalPendenciaEcf.label=Pendência ECF indexController.mniImportacionFiscalPendenciaReducaoZ.label=Pendência Redução Z +indexController.mniImportacionFiscalEcfReducaoZ.label=ECF Integrado Redução Z indexController.mniSubMenuClientePacote.label=Pacote indexController.mniManutencaoPacote.label=Manutenção Pacote @@ -6602,4 +6603,5 @@ busquedaImportacionFiscalNaoFiscalController.window.title=Impressão Fiscal :: N busquedaImportacionFiscalRelatorioFinanceiroController.window.title=Impressão Fiscal :: Relatório Financeiro busquedaImportacionFiscalRelatorioVoucherController.window.title=Impressão Fiscal :: Relatório Voucher busquedaImportacionFiscalEcfPendenciaController.window.title=Impressão Fiscal :: Pendência ECF -busquedaImportacionFiscalEcfPendenciaReducaoZController.window.title=Impressão Fiscal :: Pendência Redução Z \ No newline at end of file +busquedaImportacionFiscalEcfPendenciaReducaoZController.window.title=Impressão Fiscal :: Pendência Redução Z +busquedaImportacionFiscalEcfReducaoZController.window.title=Impressão Fiscal :: ECF Integrado c/ Redução Z \ No newline at end of file diff --git a/web/gui/impressaofiscal/busquedaImportacionFiscal.zul b/web/gui/impressaofiscal/busquedaImportacionFiscal.zul index 46ff2e4da..a5c38e367 100644 --- a/web/gui/impressaofiscal/busquedaImportacionFiscal.zul +++ b/web/gui/impressaofiscal/busquedaImportacionFiscal.zul @@ -71,6 +71,9 @@ +