diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioMovimentacaoEstoque.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioMovimentacaoEstoque.java new file mode 100644 index 000000000..f83375a19 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioMovimentacaoEstoque.java @@ -0,0 +1,160 @@ +package com.rjconsultores.ventaboletos.relatorios.impl; + +import java.sql.Connection; +import java.sql.ResultSet; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +import org.apache.log4j.Logger; + +import com.rjconsultores.ventaboletos.relatorios.utilitarios.DataSource; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; +import com.rjconsultores.ventaboletos.vo.aidf.ItemRelatorioMovimentoEstoque; +import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement; + +import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource; + +public class RelatorioMovimentacaoEstoque extends Relatorio { + + private static Logger log = Logger.getLogger(RelatorioMovimentacaoEstoque.class); + + List list = null; + + public RelatorioMovimentacaoEstoque(Map parametros, Connection conexao) throws Exception { + super(parametros, conexao); + + this.setCustomDataSource(new DataSource(this) { + + public void initDados() throws Exception { + Connection conexao = this.relatorio.getConexao(); + Map parametros = this.relatorio.getParametros(); + String sql = getSql(); + NamedParameterStatement stmt = null; + ResultSet rset = null; + + try { + stmt = new NamedParameterStatement(conexao, sql); + if(parametros.get("empresaId") != null){ + stmt.setInt("empresaId", Integer.valueOf(parametros.get("empresaId").toString())); + } + + if(parametros.get("puntoventaIdEnv") != null){ + stmt.setInt("puntoventaIdEnv", Integer.valueOf(parametros.get("puntoventaIdEnv").toString())); + } + + if(parametros.get("puntoventaIdRec") != null){ + stmt.setInt("puntoventaIdRec", Integer.valueOf(parametros.get("puntoventaIdRec").toString())); + } + + if(parametros.get("estacionIdEnv") != null){ + stmt.setInt("estacionIdEnv", Integer.valueOf(parametros.get("estacionIdEnv").toString())); + } + + if(parametros.get("estacionIdRec") != null){ + stmt.setInt("estacionIdRec", Integer.valueOf(parametros.get("estacionIdRec").toString())); + } + + if(parametros.get("dataInicial") != null){ + stmt.setString("dataInicial", parametros.get("dataInicial") + " 00:00"); + } + + if(parametros.get("dataFinal") != null){ + stmt.setString("dataFinal", parametros.get("dataFinal") + " 23:59"); + } + + rset = stmt.executeQuery(); + + list = new ArrayList(); + while (rset.next()) { + ItemRelatorioMovimentoEstoque item = new ItemRelatorioMovimentoEstoque(); + item.setAidf(rset.getString("AIDF")); + item.setSerie(rset.getString("SERIE")); + item.setSubserie(rset.getString("SUBSERIE")); + item.setData(rset.getDate("DATA")); + item.setEmpresa(rset.getString("NOMBEMPRESA")); + item.setEstacionEnv(rset.getString("ESTACION_ENV")); + item.setEstacionRec(rset.getString("ESTACION_REC")); + item.setNumFolioInicial(rset.getString("NUMFOLIOINICIAL")); + item.setNumFolioFinal(rset.getString("NUMFOLIOFINAL")); + item.setTotal(rset.getInt("TOTAL")); + item.setPuntoventaEnv(rset.getString("NOMBPUNTOVENTA_ENV")); + item.setPuntoventaRec(rset.getString("NOMBPUNTOVENTA_REC")); + item.setUsuario(rset.getString("USUARIO")); + + list.add(item); + } + } catch (Exception e) { + log.error(e.getMessage(), e); + } finally { + if(rset != null && !rset.isClosed()) { + rset.close(); + } + if(stmt != null && !stmt.isClosed()) { + stmt.close(); + } + } + } + }); + + this.setCollectionDataSource(new JRBeanCollectionDataSource(list)); + } + + @Override + protected void processaParametros() throws Exception { + } + + private String getSql() { + StringBuilder sQuery = new StringBuilder(); + sQuery.append("SELECT E.NOMBEMPRESA, DETH.FECMODIF AS DATA, AI.AIDF_ID AS AIDF, AI.SERIE, AI.SUBSERIE, DETREC.NUMFOLIOINICIAL, DETREC.NUMFOLIOFINAL, ") + .append("(TO_NUMBER(DETREC .NUMFOLIOFINAL) - TO_NUMBER(DETREC.NUMFOLIOINICIAL) + 1) AS TOTAL, ") + .append("PVENV.NOMBPUNTOVENTA AS NOMBPUNTOVENTA_ENV, EENV.DESCESTACION AS ESTACION_ENV, PVREC.NOMBPUNTOVENTA AS NOMBPUNTOVENTA_REC, EREC.DESCESTACION AS ESTACION_REC, ") + .append("DETH.FECMODIF AS DATA, U.USUARIO_ID || ' - ' || U.CVEUSUARIO AS USUARIO ") + .append("FROM DET_ABASTO_BOLETO DET ") + .append("JOIN AIDF AI ON AI.AIDF_ID = DET.AIDF_ID ") + .append("JOIN ABASTO_BOLETO AB ON AB.ABASTOBOLETO_ID = DET.ABASTOBOLETO_ID ") + .append("JOIN EMPRESA E ON E.EMPRESA_ID = AB.EMPRESA_ID ") + .append("JOIN DET_ABASTO_BOLETO_HIST DETH ON DET.DETABASTOBOLETO_ID = DETH.DETABASTOBOLETOENV_ID ") + .append("LEFT JOIN DET_ABASTO_BOLETO DETREC ON DETREC.DETABASTOBOLETO_ID = DETH.DETABASTOBOLETOREC_ID ") + .append("LEFT JOIN ABASTO_BOLETO ABREC ON ABREC.ABASTOBOLETO_ID = DETREC.ABASTOBOLETO_ID ") + .append("LEFT JOIN ESTACION EENV ON EENV.ESTACION_ID = AB.ESTACION_ID ") + .append("LEFT JOIN ESTACION EREC ON EREC.ESTACION_ID = ABREC.ESTACION_ID ") + .append("LEFT JOIN PUNTO_VENTA PVENV ON PVENV.PUNTOVENTA_ID = AB.PUNTOVENTA_ID ") + .append("LEFT JOIN PUNTO_VENTA PVREC ON PVREC.PUNTOVENTA_ID = ABREC.PUNTOVENTA_ID ") + .append("LEFT JOIN USUARIO U ON U.USUARIO_ID = DETH.USUARIO_ID ") + .append("WHERE DET.ACTIVO = 1 "); + + if(parametros.get("empresaId") != null){ + sQuery.append("AND E.EMPRESA_ID = :empresaId "); + } + + if(parametros.get("puntoventaIdEnv") != null){ + sQuery.append("AND PVENV.PUNTOVENTA_ID = :puntoventaIdEnv "); + } + + if(parametros.get("puntoventaIdRec") != null){ + sQuery.append("AND PVREC.PUNTOVENTA_ID = :puntoventaIdRec "); + } + + if(parametros.get("estacionIdEnv") != null){ + sQuery.append(" AND EENV.ESTACION_ID = :estacionIdEnv "); + } + + if(parametros.get("estacionIdRec") != null){ + sQuery.append("AND EREC.ESTACION_ID = :estacionIdRec "); + } + + if(parametros.get("dataInicial") != null){ + sQuery.append("AND DETH.FECMODIF >= TO_DATE(:dataInicial, 'DD/MM/YYYY HH24:MI') "); + } + + if(parametros.get("dataFinal") != null){ + sQuery.append("AND DETH.FECMODIF <= TO_DATE(:dataFinal, 'DD/MM/YYYY HH24:MI') "); + } + + sQuery.append("ORDER BY DETH.FECMODIF, E.NOMBEMPRESA"); + + return sQuery.toString(); + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioMovimentacaoEstoque_es.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioMovimentacaoEstoque_es.properties new file mode 100644 index 000000000..3c7a5a60d --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioMovimentacaoEstoque_es.properties @@ -0,0 +1,21 @@ +#geral +msg.noData=Não foi possivel obter dados com os parâmetros informados. + +#Labels cabeçalho +cabecalho.dataHora=Data/Hora: +cabecalho.impressorPor=Impressor por: +cabecalho.pagina=Página +cabecalho.de=de +label.empresa=Empresa +label.data=Data +label.puntoventaEnv=Agência Emissora +label.puntoventaRec=Agência Recebedora +label.estacionEnv=Estação Emissora +label.estacionRec=Estação Recebedora +label.aidf=AIDF +label.serie=Série +label.subserie=Sub-Série +label.numFolioInicial=Iniciante +label.numFolioFinal=Encerrante +label.total=Total +label.usuario=Usuário \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioMovimentacaoEstoque_pt_BR.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioMovimentacaoEstoque_pt_BR.properties new file mode 100644 index 000000000..3c7a5a60d --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioMovimentacaoEstoque_pt_BR.properties @@ -0,0 +1,21 @@ +#geral +msg.noData=Não foi possivel obter dados com os parâmetros informados. + +#Labels cabeçalho +cabecalho.dataHora=Data/Hora: +cabecalho.impressorPor=Impressor por: +cabecalho.pagina=Página +cabecalho.de=de +label.empresa=Empresa +label.data=Data +label.puntoventaEnv=Agência Emissora +label.puntoventaRec=Agência Recebedora +label.estacionEnv=Estação Emissora +label.estacionRec=Estação Recebedora +label.aidf=AIDF +label.serie=Série +label.subserie=Sub-Série +label.numFolioInicial=Iniciante +label.numFolioFinal=Encerrante +label.total=Total +label.usuario=Usuário \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioMovimentacaoEstoque.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioMovimentacaoEstoque.jasper new file mode 100644 index 000000000..aa3024b04 Binary files /dev/null and b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioMovimentacaoEstoque.jasper differ diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioMovimentacaoEstoque.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioMovimentacaoEstoque.jrxml new file mode 100644 index 000000000..b7e3e2b0b --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioMovimentacaoEstoque.jrxml @@ -0,0 +1,305 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioMovimentacaoEstoqueController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioMovimentacaoEstoqueController.java new file mode 100644 index 000000000..426cc5ce3 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioMovimentacaoEstoqueController.java @@ -0,0 +1,200 @@ +package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.sql.DataSource; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Controller; +import org.zkoss.util.resource.Labels; +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zul.Comboitem; +import org.zkoss.zul.Datebox; + +import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.entidad.Estacion; +import com.rjconsultores.ventaboletos.entidad.PuntoVenta; +import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioMovimentacaoEstoque; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; +import com.rjconsultores.ventaboletos.utilerias.DateUtil; +import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; +import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstacion; +import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar; +import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxPuntoVenta; +import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; + +@Controller("relatorioMovimentacaoEstoqueController") +@Scope("prototype") +public class RelatorioMovimentacaoEstoqueController extends MyGenericForwardComposer { + + private static final long serialVersionUID = 1L; + + private Datebox dataInicial; + private Datebox dataFinal; + private MyComboboxEstandar cmbEmpresa; + private MyComboboxPuntoVenta cmbPuntoVentaEnv; + private MyComboboxPuntoVenta cmbPuntoVentaRec; + private MyComboboxEstacion cmbEstacionEnv; + private MyComboboxEstacion cmbEstacionRec; + private List lsEmpresa; + + @Autowired + private DataSource dataSourceRead; + + @Override + public void doAfterCompose(Component comp) throws Exception { + lsEmpresa = UsuarioLogado.getUsuarioLogado().getEmpresa(); + super.doAfterCompose(comp); + } + + /** + * @throws Exception + * + */ + @SuppressWarnings({ "rawtypes", "unchecked" }) + private void executarRelatorio() throws Exception { + Map parametros = new HashMap(); + + + parametros.put("NOME_RELATORIO", Labels.getLabel("relatorioMovimentacaoEstoqueController.window.title")); + parametros.put("USUARIO", UsuarioLogado.getUsuarioLogado().getNombusuario()); + + StringBuilder filtro = new StringBuilder("Filtros\n"); + filtro.append(Labels.getLabel("lb.empresa")) + .append(": "); + Comboitem itemEmpresa = cmbEmpresa.getSelectedItem(); + if (itemEmpresa != null) { + Empresa empresa = (Empresa) itemEmpresa.getValue(); + if(empresa.getEmpresaId() > -1) { + parametros.put("empresaId", empresa.getEmpresaId()); + filtro.append(empresa.getNombempresa()); + } else { + filtro.append("Todas"); + } + } else { + filtro.append("Todas"); + } + filtro.append("\n"); + + filtro.append(Labels.getLabel("relatorioMovimentacaoEstoqueController.lb.puntoventaEnv")) + .append(": "); + Comboitem itemPuntoVenta = cmbPuntoVentaEnv.getSelectedItem(); + if (itemPuntoVenta != null) { + PuntoVenta puntoVenta = (PuntoVenta) itemPuntoVenta.getValue(); + if(puntoVenta.getPuntoventaId() > -1) { + parametros.put("puntoventaIdEnv", puntoVenta.getPuntoventaId()); + filtro.append(puntoVenta.getNombpuntoventa()); + } else { + filtro.append("Todas"); + } + } else { + filtro.append("Todas"); + } + filtro.append("\n"); + + filtro.append(Labels.getLabel("relatorioMovimentacaoEstoqueController.lb.puntoventaRec")) + .append(": "); + itemPuntoVenta = cmbPuntoVentaRec.getSelectedItem(); + if (itemPuntoVenta != null) { + PuntoVenta puntoVenta = (PuntoVenta) itemPuntoVenta.getValue(); + if(puntoVenta.getPuntoventaId() > -1) { + parametros.put("puntoventaIdRec", puntoVenta.getPuntoventaId()); + filtro.append(puntoVenta.getNombpuntoventa()); + } else { + filtro.append("Todas"); + } + } else { + filtro.append("Todas"); + } + filtro.append("\n"); + + filtro.append(Labels.getLabel("relatorioMovimentacaoEstoqueController.lb.estacionEnv")) + .append(": "); + Comboitem itemEstacion = cmbEstacionEnv.getSelectedItem(); + if (itemEstacion != null) { + Estacion estacion = (Estacion) itemEstacion.getValue(); + if(estacion.getEstacionId() > -1) { + parametros.put("estacionIdEnv", estacion.getEstacionId()); + filtro.append(estacion.getDescestacion()); + } else { + filtro.append("Todas"); + } + } else { + filtro.append("Todas"); + } + filtro.append("\n"); + + filtro.append(Labels.getLabel("relatorioMovimentacaoEstoqueController.lb.estacionRec")) + .append(": "); + itemEstacion = cmbEstacionRec.getSelectedItem(); + if (itemEstacion != null) { + Estacion estacion = (Estacion) itemEstacion.getValue(); + if(estacion.getEstacionId() > -1) { + parametros.put("estacionIdRec", estacion.getEstacionId()); + filtro.append(estacion.getDescestacion()); + } else { + filtro.append("Todas"); + } + } else { + filtro.append("Todas"); + } + filtro.append("\n"); + + filtro.append("Período: ") + .append(DateUtil.getStringDate(dataInicial.getValue(), "dd/MM/yyyy")) + .append(" até ") + .append(DateUtil.getStringDate(dataFinal.getValue(), "dd/MM/yyyy")); + parametros.put("dataInicial", DateUtil.getStringDate(dataInicial.getValue(), "dd/MM/yyyy")); + parametros.put("dataFinal", DateUtil.getStringDate(dataFinal.getValue(), "dd/MM/yyyy")); + + parametros.put("FILTROS", filtro.toString()); + Relatorio relatorio = new RelatorioMovimentacaoEstoque(parametros, dataSourceRead.getConnection()); + + Map args = new HashMap(); + args.put("relatorio", relatorio); + + openWindow("/component/reportView.zul", + Labels.getLabel("relatorioMovimentacaoEstoqueController.window.title"), args, MODAL); + } + + public void onClick$btnExecutarRelatorio(Event ev) throws Exception{ + executarRelatorio(); + } + + public Datebox getDatInicial() { + return dataInicial; + } + + public void setDatInicial(Datebox datInicial) { + this.dataInicial = datInicial; + } + + public Datebox getDatFinal() { + return dataFinal; + } + + public void setDatFinal(Datebox datFinal) { + this.dataFinal = datFinal; + } + + public List getLsEmpresa() { + return lsEmpresa; + } + + public void setLsEmpresa(List lsEmpresa) { + this.lsEmpresa = lsEmpresa; + } + + public MyComboboxEstandar getCmbEmpresa() { + return cmbEmpresa; + } + + public void setCmbEmpresa(MyComboboxEstandar cmbEmpresa) { + this.cmbEmpresa = cmbEmpresa; + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/MyComboboxEstacion.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/MyComboboxEstacion.java new file mode 100644 index 000000000..7378a929d --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/MyComboboxEstacion.java @@ -0,0 +1,122 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package com.rjconsultores.ventaboletos.web.utilerias; + +import java.util.ArrayList; +import java.util.List; + +import org.zkoss.util.resource.Labels; +import org.zkoss.zk.ui.WrongValueException; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zk.ui.event.EventListener; +import org.zkoss.zk.ui.event.InputEvent; +import org.zkoss.zkplus.databind.BindingListModel; +import org.zkoss.zkplus.databind.BindingListModelList; +import org.zkoss.zkplus.spring.SpringUtil; +import org.zkoss.zul.Combobox; + +import com.rjconsultores.ventaboletos.entidad.Estacion; +import com.rjconsultores.ventaboletos.entidad.Usuario; +import com.rjconsultores.ventaboletos.service.EstacionService; + +/** + * + * @author Wilian Domingues + */ +public class MyComboboxEstacion extends Combobox { + + private static final long serialVersionUID = 1L; + + private EstacionService estacionService; + private List lsEstacion; + private Usuario initialValue; + private Integer indiceSelected = null; + + public MyComboboxEstacion() { + + super(); + + estacionService = (EstacionService) SpringUtil.getBean("estacionService"); + lsEstacion = new ArrayList(); + + this.setAutodrop(false); + this.setAutocomplete(false); + + this.addEventListener("onOK", new EventListener() { + + @Override + public void onEvent(Event event) throws Exception { + String dscEstacion = MyComboboxEstacion.this.getText().toUpperCase(); + + if (dscEstacion.length() < MyComboboxParada.minLength) { + return; + } + if (!dscEstacion.isEmpty()) { + lsEstacion = estacionService.buscar(dscEstacion, null, null, null); + lsEstacion.add(new Estacion(-1, "TODAS")); + + BindingListModel listModelUsuario = new BindingListModelList(lsEstacion, true); + MyComboboxEstacion.this.setModel(listModelUsuario); + indiceSelected = null; + if (!lsEstacion.isEmpty()) { + indiceSelected = 0; + } + + MyComboboxEstacion.this.open(); + } else { + lsEstacion.clear(); + + BindingListModel listModelEstacion = new BindingListModelList(lsEstacion, true); + MyComboboxEstacion.this.setModel(listModelEstacion); + } + } + }); + + this.addEventListener("onChanging", new EventListener() { + + public void onEvent(Event event) throws Exception { + InputEvent ev = (InputEvent) event; + String strUsuario = ev.getValue(); + if (strUsuario.length() < 2) { + lsEstacion.clear(); + + BindingListModel listModelEstacion = new BindingListModelList(lsEstacion, true); + MyComboboxEstacion.this.setModel(listModelEstacion); + + MyComboboxEstacion.this.close(); + } + } + }); + } + + public Usuario getInitialValue() { + return initialValue; + } + + public void setInitialValue(Estacion initialValue) { + if (initialValue == null) { + return; + } + List ls = new ArrayList(); + ls.add(initialValue); + + this.setModel(new BindingListModelList(ls, false)); + } + + /** + * + * @param checaBusqueda + * @throws WrongValueException + */ + public String getValue(boolean checaBusqueda) throws WrongValueException { + if (checaBusqueda) { + if (this.getSelectedItem() == null) { + throw new WrongValueException(this, Labels.getLabel("MSG.Error.combobox.hacerBusqueda")); + } + } + + return super.getValue(); + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioMovimentacaoEstoque.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioMovimentacaoEstoque.java new file mode 100644 index 000000000..007961d40 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioMovimentacaoEstoque.java @@ -0,0 +1,25 @@ +package com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios; + +import org.zkoss.util.resource.Labels; + +import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria; +import com.rjconsultores.ventaboletos.web.utilerias.menu.DefaultItemMenuSistema; + +public class ItemMenuRelatorioMovimentacaoEstoque extends DefaultItemMenuSistema { + + public ItemMenuRelatorioMovimentacaoEstoque() { + super("indexController.mniRelatorioMovimentacaoEstoque.label"); + } + + @Override + public String getClaveMenu() { + return "COM.RJCONSULTORES.ADMINISTRACION.GUI.RELATORIOS.MENU.RELATORIOMOVIMENTACAOESTOQUE"; + } + + @Override + public void ejecutar() { + PantallaUtileria.openWindow("/gui/relatorios/filtroRelatorioMovimentacaoEstoque.zul", + Labels.getLabel("relatorioMovimentacaoEstoqueController.window.title"), getArgs(), desktop); + + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties index d06c4f24f..876278b0e 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties @@ -128,6 +128,7 @@ analitico.gerenciais.segundaVia=com.rjconsultores.ventaboletos.web.utilerias.men analitico.gerenciais.cadastroClientes=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioCadastroClientes analitico.gerenciais.historicoClientes=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioHistoricoClientes analitico.gerenciais.aidfDetalhado=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioAidfDetalhado +analitico.gerenciais.movimentacaoEstoque=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioMovimentacaoEstoque analitico.gerenciais.cancelamentoAutomaticoECF=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioCancelamentoAutomaticoECF analitico.gerenciais.confFormulario=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioConferenciaFormularioFisico analitico.gerenciais.difTransf=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioDiferencasTransferencias diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 72123e030..8af4e3528 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -281,6 +281,7 @@ indexController.mniRelatorioCancelamentoTransacao.label = Cancelamento J3 indexController.mniRelatorioTabelaPreco.label = Reporte de tabla de precios indexController.mniRelatorioAIDF.label = Reporte AIDF indexController.mniRelatorioAIDFDetalhado.label = Reporte Estoque +indexController.mniRelatorioMovimentacaoEstoque.label = Movimientos del Stock indexController.mniRelatorioHistoricoClientes.label = Histórico Clientes indexController.mniRelatorioCadastroClientes.label = Cadastro Clientes indexController.mniRelatorioSegundaVia.label = Segunda Via @@ -2214,6 +2215,7 @@ editarCatalogoDeRutaController.RadNo.value = No editarCatalogoDeRutaController.radAprobacionAutorizado.value = Autorizado editarCatalogoDeRutaController.radAprobacionLatente.value = Cerrado editarCatalogoDeRutaController.radioNombreObrigadotio = Solicitar nombre pasajero +editarCatalogoDeRutaController.radioNumfidelidad = Solicitar numero fidelidad editarCatalogoDeRutaController.radioNombreObrigadotio.rdSi = Si editarCatalogoDeRutaController.radioNombreObrigadotio.rdNo = No editarCatalogoDeRutaController.lbEmpresa.value = Empresa @@ -7582,4 +7584,11 @@ editarEmpresaController.imprimir2Vias.ajuda = Al realizar una venta de boleto BP editarEmpresaController.emiteBpeVdaImpPosterior.ajuda = El sistema generará el número de BP-e (comunicándose con SEFAZ) para las ventas de Imp. Posterior e Internet con Localizador. editarEmpresaController.cancelaBpeTrocaOrigDest.ajuda = Permite realizar el cambio del BP-e a otro origen / destino informado en el momento del proceso cancelando el anterior vendido. editarEmpresaController.transferenciaBpeMoviCaja.ajuda = Hacen las Transferencias/Reactivaciones BP-e movimientos que generan caja. -editarEmpresaController.usarAliasMapaViagemVenda.ajuda = En la pantalla de Venta o botón de Tarjeta de Viagem deve usar Alias para as Ubicaciones. \ No newline at end of file +editarEmpresaController.usarAliasMapaViagemVenda.ajuda = En la pantalla de Venta o botón de Tarjeta de Viagem deve usar Alias para as Ubicaciones. + +#Relatorio Movimentacao Estoque +relatorioMovimentacaoEstoqueController.window.title = Reporte del Movimientos del Stock +relatorioMovimentacaoEstoqueController.lb.puntoventaEnv = Punto Venta Envio +relatorioMovimentacaoEstoqueController.lb.puntoventaRec = Punto Venta Recibimiento +relatorioMovimentacaoEstoqueController.lb.estacionEnv = Estacion Envio +relatorioMovimentacaoEstoqueController.lb.estacionRec = Estacion Recibimiento \ No newline at end of file diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 622158988..660480358 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -298,6 +298,7 @@ indexController.mniRelatorioCancelamentoTransacao.label = Cancelamento J3 indexController.mniRelatorioTabelaPreco.label = Tabela de Preços indexController.mniRelatorioAIDF.label = AIDF indexController.mniRelatorioAIDFDetalhado.label = Relatório Estoque +indexController.mniRelatorioMovimentacaoEstoque.label = Movimentação de Estoque indexController.mniRelatorioHistoricoClientes.label = Histórico Clientes indexController.mniRelatorioCadastroClientes.label = Cadastro Clientes indexController.mniRelatorioConsultaAntt.label= Consulta ANTT @@ -849,6 +850,12 @@ relatorioAidfDetalhadoController.lbFormInicial.value = Form. Inicial relatorioAidfDetalhadoController.lbFormFinal.value = Form. Final relatorioAidfDetalhadoController.msg.agencia.obrigatorio = Uma Agência deve ser selecionada +#Relatorio Movimentacao Estoque +relatorioMovimentacaoEstoqueController.window.title = Relatório Movimentação de Estoque +relatorioMovimentacaoEstoqueController.lb.puntoventaEnv = Agência Envio +relatorioMovimentacaoEstoqueController.lb.puntoventaRec = Agência Recebimento +relatorioMovimentacaoEstoqueController.lb.estacionEnv = Estação Envio +relatorioMovimentacaoEstoqueController.lb.estacionRec = Estação Recebimento #Relatório de Vendas PTA relatorioVendasPTAController.window.title = Relatório de Vendas PTA @@ -2367,6 +2374,7 @@ editarCatalogoDeRutaController.RadNo.value = Não editarCatalogoDeRutaController.radAprobacionAutorizado.value = Autorizado editarCatalogoDeRutaController.radAprobacionLatente.value = Fechado editarCatalogoDeRutaController.radioNombreObrigadotio = Solicitar nome passageiro +editarCatalogoDeRutaController.radioNumfidelidad = Solicitar número fidelidade editarCatalogoDeRutaController.radioNombreObrigadotio.rdSi = Sim editarCatalogoDeRutaController.radioNombreObrigadotio.rdNo = Não editarCatalogoDeRutaController.lbEmpresa.value = Empresa @@ -7914,7 +7922,6 @@ relatorioMovimentoPorOrgaoConcedente.MSG.dataInicialMaiorFinal=Data inicial maio relatorioMovimentoPorOrgaoConcedente.MSG.informarPeriodoData=Favor informar o período a ser consultado # Relatório Vendas com Parcelamento - relatorioVendasParcelamentoController.window.title = Vendas com Parcelamento relatorioVendasParcelamentoController.lbDataFin.value = Data Final relatorioVendasParcelamentoController.lbDataIni.value = Data Inicial diff --git a/web/gui/relatorios/filtroRelatorioMovimentacaoEstoque.zul b/web/gui/relatorios/filtroRelatorioMovimentacaoEstoque.zul new file mode 100644 index 000000000..7d4130a8c --- /dev/null +++ b/web/gui/relatorios/filtroRelatorioMovimentacaoEstoque.zul @@ -0,0 +1,75 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + +