Exportação Fiscal : ECF e RMD (issue 8120)

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@62583 d1611594-4594-4d17-8e1d-87c2c4800839
master
alberto 2016-11-14 13:13:27 +00:00
parent 0447f1041f
commit 3dba4d2b6c
8 changed files with 330 additions and 1 deletions

View File

@ -0,0 +1,164 @@
package com.rjconsultores.ventaboletos.web.gui.controladores.impressaofiscal;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.List;
import javax.sql.DataSource;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Executions;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zul.Button;
import org.zkoss.zul.Comboitem;
import org.zkoss.zul.Datebox;
import org.zkoss.zul.Filedownload;
import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.entidad.Estado;
import com.rjconsultores.ventaboletos.service.EmpresaService;
import com.rjconsultores.ventaboletos.service.EstadoService;
import com.rjconsultores.ventaboletos.service.FiscalService;
import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar;
import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer;
@Controller("busquedaExportacaoFiscalController")
@Scope("prototype")
public class BusquedaExportacaoFiscalController extends MyGenericForwardComposer {
private static final long serialVersionUID = 1L;
private static Logger log = Logger.getLogger(BusquedaExportacaoFiscalController.class);
@Autowired
private DataSource dataSourceRead;
@Autowired
private FiscalService fiscalService;
@Autowired
private EmpresaService empresaService;
@Autowired
private EstadoService estadoService;
private List<Empresa> lsEmpresa;
private List<Estado> lsEstado;
private Datebox datInicial;
private Datebox datFinal;
private MyComboboxEstandar cmbEmpresa;
private MyComboboxEstandar cmbEstado;
private Button btnExeExportacaoECF;
private Button btnExeExportacaoRMD;
@Override
public void doAfterCompose(Component comp) throws Exception {
lsEmpresa = empresaService.obtenerTodos();
lsEstado = estadoService.obtenerTodos();
super.doAfterCompose(comp);
defineImportacao();
}
private void defineImportacao() {
boolean isEcf = Executions.getCurrent().getArg().get("ECF") == null ? Boolean.FALSE : (Boolean) Executions.getCurrent().getArg().get("ECF");
if (isEcf) {
btnExeExportacaoECF.setVisible(true);
} else {
btnExeExportacaoECF.setVisible(false);
}
boolean isRmd = Executions.getCurrent().getArg().get("RMD") == null ? Boolean.FALSE : (Boolean) Executions.getCurrent().getArg().get("RMD");
if (isRmd) {
btnExeExportacaoRMD.setVisible(true);
} else {
btnExeExportacaoRMD.setVisible(false);
}
}
public void onClick$btnExeExportacaoECF(Event ev) throws InterruptedException {
Empresa empresa = null;
Estado estado = null;
Comboitem itemEmpresa = cmbEmpresa.getSelectedItem();
Comboitem itemEstado = cmbEstado.getSelectedItem();
if (itemEmpresa != null) {
empresa = (Empresa) itemEmpresa.getValue();
}
if (itemEstado != null) {
estado = (Estado) itemEstado.getValue();
}
if (empresa != null && estado != null) {
File arquivo = fiscalService.buscarArquivoExportacaoECF(datInicial.getValue(), datFinal.getValue(), empresa, estado);
try {
downloadArquivo(arquivo);
} catch (Exception e) {
log.error(e.getMessage(), e);
}
}
}
public void onClick$btnExeExportacaoRMD(Event ev) throws InterruptedException {
Empresa empresa = null;
Estado estado = null;
Comboitem itemEmpresa = cmbEmpresa.getSelectedItem();
Comboitem itemEstado = cmbEstado.getSelectedItem();
if (itemEmpresa != null) {
empresa = (Empresa) itemEmpresa.getValue();
}
if (itemEstado != null) {
estado = (Estado) itemEstado.getValue();
}
if (empresa != null && estado != null) {
File arquivo = fiscalService.buscarArquivoExportacaoRMD(datInicial.getValue(), datFinal.getValue(), empresa, estado);
try {
downloadArquivo(arquivo);
} catch (Exception e) {
log.error(e.getMessage(), e);
}
}
}
private void downloadArquivo(File arquivoTxt) throws Exception {
String contentType = "application/notepad";
InputStream isFile = new FileInputStream(arquivoTxt);
String nomeArquivo = arquivoTxt.getName();
Filedownload.save(isFile, contentType, nomeArquivo);
if (arquivoTxt != null) {
arquivoTxt.delete();
}
}
public List<Empresa> getLsEmpresa() {
return lsEmpresa;
}
public List<Estado> getLsEstado() {
return lsEstado;
}
public void setLsEstado(List<Estado> lsEstado) {
this.lsEstado = lsEstado;
}
}

View File

@ -0,0 +1,29 @@
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 ItemMenuExportacaoFiscalECF extends DefaultItemMenuSistema {
public ItemMenuExportacaoFiscalECF() {
super("indexController.mniExportacaoFiscalECF.label");
}
@Override
public String getClaveMenu() {
return "COM.RJCONSULTORES.ADMINISTRACION.GUI.RELATORIOS.IMPRESSAOFISCAL.MENU.IMPORTACIONFISCAL";
}
@Override
public void ejecutar() {
@SuppressWarnings("unchecked")
HashMap<String, Boolean> map = TipoImportacaoFiscal.selecionaTipoImportacao(TipoImportacao.ECF, (HashMap<String, Boolean>) getArgs());
PantallaUtileria.openWindow("/gui/impressaofiscal/busquedaExportacaoFiscal.zul",
Labels.getLabel("busquedaExportacaoFiscalECFController.window.title"), map, desktop);
}
}

View File

@ -0,0 +1,30 @@
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 ItemMenuExportacaoFiscalRMD extends DefaultItemMenuSistema {
public ItemMenuExportacaoFiscalRMD() {
super("indexController.mniExportacaoFiscalRMD.label");
}
@Override
public String getClaveMenu() {
return "COM.RJCONSULTORES.ADMINISTRACION.GUI.RELATORIOS.IMPRESSAOFISCAL.MENU.IMPORTACIONFISCAL";
}
@Override
public void ejecutar() {
@SuppressWarnings("unchecked")
HashMap<String, Boolean> map = TipoImportacaoFiscal.selecionaTipoImportacao(TipoImportacao.RMD, (HashMap<String, Boolean>) getArgs());
PantallaUtileria.openWindow("/gui/impressaofiscal/busquedaExportacaoFiscal.zul",
Labels.getLabel("busquedaExportacaoFiscalRMDController.window.title"), map, desktop);
}
}

View File

@ -0,0 +1,16 @@
package com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.impressaofiscal;
import com.rjconsultores.ventaboletos.web.utilerias.menu.DefaultItemMenuSistema;
public class SubMenuExportacaoFiscal extends DefaultItemMenuSistema {
public SubMenuExportacaoFiscal() {
super("indexController.mnSubMenuExportacaoFiscal.label");
}
@Override
public String getClaveMenu() {
return "COM.RJCONSULTORES.ADMINISTRACION.GUI.RELATORIOS.RELATORIOFISCAL";
}
}

View File

@ -5,13 +5,14 @@ import java.util.HashMap;
public class TipoImportacaoFiscal { public class TipoImportacaoFiscal {
public enum TipoImportacao { public enum TipoImportacao {
ECF_RED_Z, ECF, ECF_CANCELADOS, MANUAL, REDUCAO_Z, NAO_FISCAL, RELATORIO_FINANCEIRO, RELATORIO_VOUCHER, PENDENCIA_ECF, PENDENCIA_REDUCAO_Z, RELATORIO_VOUCHER_CANCELADOS; ECF_RED_Z, ECF, RMD, ECF_CANCELADOS, MANUAL, REDUCAO_Z, NAO_FISCAL, RELATORIO_FINANCEIRO, RELATORIO_VOUCHER, PENDENCIA_ECF, PENDENCIA_REDUCAO_Z, RELATORIO_VOUCHER_CANCELADOS;
} }
public static HashMap<String, Boolean> selecionaTipoImportacao(TipoImportacao tipo, HashMap<String, Boolean> map) { public static HashMap<String, Boolean> selecionaTipoImportacao(TipoImportacao tipo, HashMap<String, Boolean> map) {
map.remove(TipoImportacao.ECF_RED_Z.toString()); map.remove(TipoImportacao.ECF_RED_Z.toString());
map.remove(TipoImportacao.ECF.toString()); map.remove(TipoImportacao.ECF.toString());
map.remove(TipoImportacao.RMD.toString());
map.remove(TipoImportacao.ECF_CANCELADOS.toString()); map.remove(TipoImportacao.ECF_CANCELADOS.toString());
map.remove(TipoImportacao.MANUAL.toString()); map.remove(TipoImportacao.MANUAL.toString());
map.remove(TipoImportacao.REDUCAO_Z.toString()); map.remove(TipoImportacao.REDUCAO_Z.toString());
@ -30,6 +31,10 @@ public class TipoImportacaoFiscal {
map.put(TipoImportacao.ECF.toString(), Boolean.TRUE); map.put(TipoImportacao.ECF.toString(), Boolean.TRUE);
} }
if (tipo.equals(TipoImportacao.RMD)) {
map.put(TipoImportacao.RMD.toString(), Boolean.TRUE);
}
if (tipo.equals(TipoImportacao.ECF_CANCELADOS)) { if (tipo.equals(TipoImportacao.ECF_CANCELADOS)) {
map.put(TipoImportacao.ECF_CANCELADOS.toString(), Boolean.TRUE); map.put(TipoImportacao.ECF_CANCELADOS.toString(), Boolean.TRUE);
} }

View File

@ -301,6 +301,10 @@ indexController.mniImportacionFiscalPendenciaReducaoZ.label=Pendência Redução
indexController.mniImportacionFiscalEcfReducaoZ.label=ECF Integrado Redução Z indexController.mniImportacionFiscalEcfReducaoZ.label=ECF Integrado Redução Z
indexController.mniRelatorioVoucherCancelados.label=Voucher Cancelados indexController.mniRelatorioVoucherCancelados.label=Voucher Cancelados
indexController.mnSubMenuExportacaoFiscal.label=Exportação Fiscal
indexController.mniExportacaoFiscalECF.label=ECF
indexController.mniExportacaoFiscalRMD.label=RMD
indexController.mniSubMenuClientePacote.label=Paquete indexController.mniSubMenuClientePacote.label=Paquete
indexController.mniManutencaoPacote.label=Mantenimiento Paquete indexController.mniManutencaoPacote.label=Mantenimiento Paquete
@ -6283,11 +6287,14 @@ busquedaImportacionFiscalController.lbArquivoTxt.value = Importación Texto
busquedaImportacionFiscalController.lbArquivoXls.value = Consolidado Excel busquedaImportacionFiscalController.lbArquivoXls.value = Consolidado Excel
busquedaImportacionFiscalController.lbCompetencia.label = Competencia busquedaImportacionFiscalController.lbCompetencia.label = Competencia
busquedaImportacionFiscalController.btnExe.label = Ejecutar Importación busquedaImportacionFiscalController.btnExe.label = Ejecutar Importación
#busquedaImportacionFiscalController.btnExe.label = Importación Fiscal ECF #busquedaImportacionFiscalController.btnExe.label = Importación Fiscal ECF
#busquedaImportacionFiscalController.btnExeManual.label = Importación Fiscal Manual #busquedaImportacionFiscalController.btnExeManual.label = Importación Fiscal Manual
#busquedaImportacionFiscalController.btnExeNaoFiscal.label = Importación No Fiscal #busquedaImportacionFiscalController.btnExeNaoFiscal.label = Importación No Fiscal
#busquedaImportacionFiscalController.btnExeImportacionReducaoZ.label = Importación Fiscal Reducción Z #busquedaImportacionFiscalController.btnExeImportacionReducaoZ.label = Importación Fiscal Reducción Z
busquedaExportacaoFiscalController.btnExe.label = Executar Exportação
#corridaServiceImpl #corridaServiceImpl
corridaServiceImpl.geracaoCorrida.dataMenorQueAtual=El periodo informado es invalido corridaServiceImpl.geracaoCorrida.dataMenorQueAtual=El periodo informado es invalido
corridaServiceImpl.geracaoCorrida.cantDiasManual=La cantidad maxima de dias para generacion manual es de {0}. corridaServiceImpl.geracaoCorrida.cantDiasManual=La cantidad maxima de dias para generacion manual es de {0}.
@ -6663,6 +6670,9 @@ busquedaImportacionFiscalEcfPendenciaController.window.title=Impresión Fiscal :
busquedaImportacionFiscalEcfPendenciaReducaoZController.window.title=Impresión Fiscal :: Pendencia Reducción Z busquedaImportacionFiscalEcfPendenciaReducaoZController.window.title=Impresión Fiscal :: Pendencia Reducción Z
busquedaImportacionFiscalEcfReducaoZController.window.title=Impresión Fiscal :: ECF Integrado c/ Reducción Z busquedaImportacionFiscalEcfReducaoZController.window.title=Impresión Fiscal :: ECF Integrado c/ Reducción Z
busquedaExportacaoFiscalECFController.window.title=Exportação Fiscal :: ECF
busquedaExportacaoFiscalRMDController.window.title=Exportação Fiscal :: RMD
#OCD #OCD
busquedaOCDParamController.empresa.label=Empresa busquedaOCDParamController.empresa.label=Empresa
busquedaOCDParamController.btnPesquisa.label=Buscar busquedaOCDParamController.btnPesquisa.label=Buscar

View File

@ -308,6 +308,10 @@ indexController.mniImportacionFiscalPendenciaReducaoZ.label=Pendência Redução
indexController.mniImportacionFiscalEcfReducaoZ.label=ECF Integrado Redução Z indexController.mniImportacionFiscalEcfReducaoZ.label=ECF Integrado Redução Z
indexController.mniRelatorioVoucherCancelados.label=Voucher Cancelados indexController.mniRelatorioVoucherCancelados.label=Voucher Cancelados
indexController.mnSubMenuExportacaoFiscal.label=Exportação Fiscal
indexController.mniExportacaoFiscalECF.label=ECF
indexController.mniExportacaoFiscalRMD.label=RMD
indexController.mniSubMenuClientePacote.label=Pacote indexController.mniSubMenuClientePacote.label=Pacote
indexController.mniManutencaoPacote.label=Manutenção Pacote indexController.mniManutencaoPacote.label=Manutenção Pacote
@ -6299,11 +6303,14 @@ busquedaImportacionFiscalController.lbArquivoTxt.value = Importação Texto
busquedaImportacionFiscalController.lbArquivoXls.value = Consolidado Excel busquedaImportacionFiscalController.lbArquivoXls.value = Consolidado Excel
busquedaImportacionFiscalController.lbCompetencia.label = Competência busquedaImportacionFiscalController.lbCompetencia.label = Competência
busquedaImportacionFiscalController.btnExe.label = Executar Importação busquedaImportacionFiscalController.btnExe.label = Executar Importação
#busquedaImportacionFiscalController.btnExe.label = Importação Fiscal ECF #busquedaImportacionFiscalController.btnExe.label = Importação Fiscal ECF
#busquedaImportacionFiscalController.btnExeManual.label = Importação Fiscal Manual #busquedaImportacionFiscalController.btnExeManual.label = Importação Fiscal Manual
#busquedaImportacionFiscalController.btnExeNaoFiscal.label = Importação Não Fiscal #busquedaImportacionFiscalController.btnExeNaoFiscal.label = Importação Não Fiscal
#busquedaImportacionFiscalController.btnExeImportacionReducaoZ.label = Importação Fiscal Redução Z #busquedaImportacionFiscalController.btnExeImportacionReducaoZ.label = Importação Fiscal Redução Z
busquedaExportacaoFiscalController.btnExe.label = Executar Exportação
editarRelgerencialEmpresaController.MSG.suscribirOK=Relatorio Gerencial gravado com sucesso! editarRelgerencialEmpresaController.MSG.suscribirOK=Relatorio Gerencial gravado com sucesso!
editarRelgerencialEmpresaController.window.title=Impressão Fiscal :: Editar Relatorio Gerencial editarRelgerencialEmpresaController.window.title=Impressão Fiscal :: Editar Relatorio Gerencial
editarRelgerencialEmpresaController.MSG.borrarPergunta=Deseja eliminar Relatorio Gerencial? editarRelgerencialEmpresaController.MSG.borrarPergunta=Deseja eliminar Relatorio Gerencial?
@ -6832,6 +6839,9 @@ busquedaImportacionFiscalEcfPendenciaReducaoZController.window.title=Impressão
busquedaImportacionFiscalEcfReducaoZController.window.title=Impressão Fiscal :: ECF Integrado c/ Redução Z busquedaImportacionFiscalEcfReducaoZController.window.title=Impressão Fiscal :: ECF Integrado c/ Redução Z
busquedaImportacionFiscalRelatorioVoucherCanceladosController.window.title=Impressão Fiscal :: Relatório Voucher Cancelados busquedaImportacionFiscalRelatorioVoucherCanceladosController.window.title=Impressão Fiscal :: Relatório Voucher Cancelados
busquedaExportacaoFiscalECFController.window.title=Exportação Fiscal :: ECF
busquedaExportacaoFiscalRMDController.window.title=Exportação Fiscal :: RMD
# Relatorio Conferencia Formulario Fisico # Relatorio Conferencia Formulario Fisico
relatorioConferenciaFormularioFisicoController.lbDataIni.value = Data Inicial relatorioConferenciaFormularioFisicoController.lbDataIni.value = Data Inicial
relatorioConferenciaFormularioFisicoController.lbDataFin.value = Data Final relatorioConferenciaFormularioFisicoController.lbDataFin.value = Data Final

View File

@ -0,0 +1,65 @@
<?xml version="1.0" encoding="UTF-8"?>
<?page title="RelgerencialEmpresa" contentType="text/html;charset=UTF-8"?>
<?variable-resolver class="org.zkoss.zkplus.spring.DelegatingVariableResolver"?>
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" arg0="winBusquedaExportacaoFiscal"?>
<?taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c"?>
<zk>
<window id="winBusquedaExportacaoFiscal"
title="${c:l('busquedaImportacionFiscalController.window.title')}"
apply="${busquedaExportacaoFiscalController}"
contentStyle="overflow:auto" width="660px" border="normal">
<grid fixedLayout="true">
<columns>
<column width="20%" />
<column width="30%" />
<column width="20%" />
<column width="30%" />
</columns>
<rows>
<row>
<label
value="${c:l('busquedaImportacionFiscalController.lbDataIni.value')}" />
<datebox id="datInicial" width="90%"
format="dd/MM/yyyy" constraint="no empty"
maxlength="10" />
<label
value="${c:l('busquedaImportacionFiscalController.lbDataFin.value')}" />
<datebox id="datFinal" width="90%"
format="dd/MM/yyyy" constraint="no empty"
maxlength="10" />
</row>
<row spans="1, 3">
<label
value="${c:l('busquedaCiudadController.estado.label')}" />
<combobox id="cmbEstado"
use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar"
constraint="no empty" mold="rounded" buttonVisible="true"
style="width: 483px;" model="@{winBusquedaExportacaoFiscal$composer.lsEstado}"/>
</row>
<row spans="1, 3">
<label
value="${c:l('relatorioReceitaDiariaAgenciaController.lbEmpresa.value')}" />
<combobox id="cmbEmpresa" style="width: 483px;" mold="rounded"
buttonVisible="true"
use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar"
model="@{winBusquedaExportacaoFiscal$composer.lsEmpresa}"
constraint="no empty" />
</row>
</rows>
</grid>
<toolbar>
<button id="btnExeExportacaoECF" image="/gui/img/enginer.png"
label="${c:l('busquedaExportacaoFiscalController.btnExe.label')}" />
<button id="btnExeExportacaoRMD" image="/gui/img/enginer.png"
label="${c:l('busquedaExportacaoFiscalController.btnExe.label')}" />
</toolbar>
</window>
</zk>