Merge pull request 'fixes bug#AL-3971' (!431) from AL-3971 into master

Reviewed-on: adm/VentaBoletosAdm#431
Reviewed-by: fabio <fabio.faria@rjconsultores.com.br>
master 1.55.10
wallace 2024-03-12 13:50:08 +00:00
commit a7e78d17f9
7 changed files with 60 additions and 17 deletions

View File

@ -4,7 +4,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>br.com.rjconsultores</groupId>
<artifactId>ventaboletosadm</artifactId>
<version>1.55.9</version>
<version>1.55.10</version>
<packaging>war</packaging>
<properties>

View File

@ -34,14 +34,15 @@ public class RelatorioEstoque extends Relatorio {
Date dtInicio = (Date) parametros.get("DATA_INICIO");
Date dtFim = (Date) parametros.get("DATA_FIM");
Integer aidfTipoId = (Integer) parametros.get("AIDFTIPO_ID");
if (parametros.get("EMPRESA_ID") != null) {
empresaId = Integer.valueOf(parametros.get("EMPRESA_ID").toString());
}
if (parametros.get("NUMPUNTOVENTA") != null) {
puntoVentaId = String.valueOf(parametros.get("NUMPUNTOVENTA"));
puntoVentaId = String.valueOf(parametros.get("NUMPUNTOVENTA"));
}
String sql = retornarItensConsultaPorPuloFolio(puntoVentaId,empresaId, dtInicio, dtFim);
String sql = retornarItensConsultaPorPuloFolio(puntoVentaId,empresaId, dtInicio, dtFim, aidfTipoId);
NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql);
if(dtInicio != null && dtFim != null) {
stmt.setString("dataInicio", DateUtil.getStringDate(dtInicio, "dd/MM/yyyy") + " 00:00:00");
@ -49,6 +50,10 @@ public class RelatorioEstoque extends Relatorio {
}else if(dtInicio != null) {
stmt.setString("dataInicio", DateUtil.getStringDate(dtInicio, "dd/MM/yyyy") + " 00:00:00");
}
if(aidfTipoId != null) {
stmt.setInt("aidfTipo",aidfTipoId);
}
lsDadosRelatorio = new ArrayList<ItemReporteControleEstoqueBoletos>();
ResultSet rset = null;
rset = stmt.executeQuery();
@ -76,7 +81,7 @@ public class RelatorioEstoque extends Relatorio {
this.resultSet = rset;
String sqlretornEstoque = sQLretornarEstoque(puntoVentaId, dtInicio, dtFim,empresaId);
String sqlretornEstoque = sQLretornarEstoque(puntoVentaId, dtInicio, dtFim,empresaId, aidfTipoId);
NamedParameterStatement stmt2 = new NamedParameterStatement(conexao, sqlretornEstoque);
@ -86,6 +91,9 @@ public class RelatorioEstoque extends Relatorio {
}else if(dtInicio != null) {
stmt2.setString("dataInicio", DateUtil.getStringDate(dtInicio, "dd/MM/yyyy") + " 00:00:00");
}
if(aidfTipoId != null) {
stmt2.setInt("aidfTipo",aidfTipoId);
}
ResultSet rset2 = null;
rset2 = stmt2.executeQuery();
@ -164,7 +172,7 @@ public class RelatorioEstoque extends Relatorio {
private String retornarItensConsultaPorPuloFolio(String puntoVentaId, Integer empresaId, Date dataInicio, Date dataFim) {
private String retornarItensConsultaPorPuloFolio(String puntoVentaId, Integer empresaId, Date dataInicio, Date dataFim, Integer aidfTipo) {
StringBuilder sb = new StringBuilder();
@ -246,7 +254,7 @@ public class RelatorioEstoque extends Relatorio {
sb.append(" AND CJ.PUNTOVENTA_ID = PV.PUNTOVENTA_ID ");
sb.append(" AND DAB.ACTIVO = 1 ");
sb.append(" AND AB.activo =1 AND AI.activo = 1 and est.estado_id = ai.ESTADO_ID ");
sb.append(" AND AIT.AIDFTIPO_ID = AI.AIDFTIPO_ID ");
sb.append(aidfTipo != null ? " AND (AI.AIDFTIPO_ID =:aidfTipo AND AIT.AIDFTIPO_ID = AI.AIDFTIPO_ID) " : " AND AIT.AIDFTIPO_ID = AI.AIDFTIPO_ID ");
sb.append(" GROUP BY DAB.AIDF_ID, ");
sb.append(" DAB.NUMSERIEPREIMPRESA, ");
sb.append(" CJ.NUMFOLIOPREIMPRESO, ");
@ -323,7 +331,7 @@ public class RelatorioEstoque extends Relatorio {
sb.append(" AND CJ.PUNTOVENTA_ID = PV.PUNTOVENTA_ID ");
sb.append(" AND DAB.ACTIVO = 1 ");
sb.append(" AND AB.activo =1 AND AI.activo = 1 and est.estado_id = ai.ESTADO_ID ");
sb.append(" AND AIT.AIDFTIPO_ID = AI.AIDFTIPO_ID ");
sb.append(aidfTipo != null ? " AND (AI.AIDFTIPO_ID =:aidfTipo AND AIT.AIDFTIPO_ID = AI.AIDFTIPO_ID) " : " AND AIT.AIDFTIPO_ID = AI.AIDFTIPO_ID ");
sb.append(" GROUP BY DAB.AIDF_ID, ");
sb.append(" DAB.NUMSERIEPREIMPRESA, ");
sb.append(" CJ.NUMFOLIOPREIMPRESO, ");
@ -343,12 +351,11 @@ public class RelatorioEstoque extends Relatorio {
sb.append(" ORDER BY TB.aidfId, ");
sb.append(" TB.serie, ");
sb.append(" TB.folioCaja ");
return sb.toString();
}
private String sQLretornarEstoque(String puntoVentaId, Date dataInicio, Date dataFim, Integer empresaId) {
private String sQLretornarEstoque(String puntoVentaId, Date dataInicio, Date dataFim, Integer empresaId, Integer aidfTipo) {
StringBuilder queryString = new StringBuilder("SELECT DISTINCT to_date(to_char(ai.fecvencimiento, 'dd/MM/yyyy'), 'dd/MM/yyyy') as fecVencimento, to_date(to_char(AI.fecadquisicion, 'dd/MM/yyyy'), 'dd/MM/yyyy') as fechorAquisicion, ")
.append("dab.NUMSERIEPREIMPRESA as serie, ")
@ -405,7 +412,9 @@ public class RelatorioEstoque extends Relatorio {
.append("WHERE dab.STATUSOPERACION IN(0,1,4) ")
.append("AND dab.ACTIVO = 1 ")
.append(" and dab.NUMFOLIOFINAL < 2147483647 ")
.append(" AND DAB.AIDF_ID = AI.AIDF_ID and ai.activo = 1 ");
.append(" AND DAB.AIDF_ID = AI.AIDF_ID and ai.activo = 1 ")
.append(aidfTipo != null ? " AND AI.AIDFTIPO_ID = :aidfTipo " : " ");
if (puntoVentaId != null) {

View File

@ -16,15 +16,18 @@ import org.zkoss.zhtml.Messagebox;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zul.Bandbox;
import org.zkoss.zul.Combobox;
import org.zkoss.zul.Comboitem;
import org.zkoss.zul.Datebox;
import org.zkoss.zul.Paging;
import org.zkoss.zul.Textbox;
import com.rjconsultores.ventaboletos.entidad.AidfTipo;
import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.entidad.PuntoVenta;
import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioEstoque;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio;
import com.rjconsultores.ventaboletos.service.AidfService;
import com.rjconsultores.ventaboletos.service.EmpresaService;
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar;
@ -50,6 +53,8 @@ public class RelatorioAidfDetalhadoController extends MyGenericForwardComposer {
private Textbox txtAIDF;
private Textbox txtInicioForm;
private Textbox txtFimForm;
private List<AidfTipo> lsAidfTipo;
private Combobox cmbAidfTipo;
@Autowired
private transient PagedListWrapper<PuntoVenta> plwPuntoVenta;
@ -65,6 +70,8 @@ public class RelatorioAidfDetalhadoController extends MyGenericForwardComposer {
private EmpresaService empresaService;
@Autowired
private DataSource dataSourceRead;
@Autowired
private AidfService aidfService;
@Override
public void doAfterCompose(Component comp) throws Exception {
@ -73,6 +80,7 @@ public class RelatorioAidfDetalhadoController extends MyGenericForwardComposer {
puntoVentaList.setItemRenderer(new RenderRelatorioVendasBilheteiro());
puntoVentaSelList.setItemRenderer(new RenderRelatorioVendasBilheteiroSelecionados());
lsAidfTipo = aidfService.obtenerTodosAdifTipo();
}
/**
@ -122,6 +130,14 @@ public class RelatorioAidfDetalhadoController extends MyGenericForwardComposer {
} else {
filtro.append(" Todas; ");
}
Comboitem cmbItem = cmbAidfTipo.getSelectedItem();
if (cmbItem != null) {
AidfTipo aidfTipo = (AidfTipo) cmbItem.getValue();
parametros.put("AIDFTIPO_ID", aidfTipo.getAidftipoId());
filtro.append(aidfTipo.getDesctipo() + ";");
} else {
filtro.append(" Todas; ");
}
parametros.put("FILTROS", filtro.toString());
relatorio = new RelatorioEstoque(parametros, dataSourceRead.getConnection());
@ -278,5 +294,14 @@ public class RelatorioAidfDetalhadoController extends MyGenericForwardComposer {
public void setPuntoVentaSelList(MyListbox puntoVentaSelList) {
this.puntoVentaSelList = puntoVentaSelList;
}
}
public List<AidfTipo> getLsAidfTipo() {
return lsAidfTipo;
}
public void setLsAidfTipo(List<AidfTipo> lsAidfTipo) {
this.lsAidfTipo = lsAidfTipo;
}
}

View File

@ -383,7 +383,7 @@ indexController.mniRelatorioVendasCartoes.label=Vendas Cartões
indexController.mniRelatorioCancelamentoTransacao.label = Cancelamento J3
indexController.mniRelatorioTabelaPreco.label = Tabela de Preços
indexController.mniRelatorioAIDF.label = AIDF
indexController.mniRelatorioAIDFDetalhado.label = Relatório Estoque
indexController.mniRelatorioAIDFDetalhado.label = Relatório Saldo Estoque
indexController.mniRelatorioMovimentacaoEstoque.label = Movimentação de Estoque
indexController.mniRelatorioHistoricoClientes.label = Histórico Clientes
indexController.mniRelatorioCadastroClientes.label = Cadastro Clientes

View File

@ -359,7 +359,7 @@ indexController.mniRelatorioCancelamentoVendaCartao.label = Cancelación de vent
indexController.mniRelatorioCancelamentoTransacao.label = Cancelamento J3
indexController.mniRelatorioTabelaPreco.label = Reporte de tabla de precios
indexController.mniRelatorioAIDF.label = Reporte AIDF
indexController.mniRelatorioAIDFDetalhado.label = Reporte Estoque
indexController.mniRelatorioAIDFDetalhado.label = Reporte Salto Estoque
indexController.mniRelatorioMovimentacaoEstoque.label = Movimientos del Stock
indexController.mniRelatorioHistoricoClientes.label = Histórico Clientes
indexController.mniRelatorioCadastroClientes.label = Cadastro Clientes
@ -1095,7 +1095,7 @@ relatorioAidfController.lbEmpresa.value = Empresa
relatorioAidfController.lbSerie.value = Série
#Relatorio Aidf Detalhado
relatorioAidfDetalhadoController.window.title = Relatório Estoque
relatorioAidfDetalhadoController.window.title = Relatório Saldo de Estoque
relatorioAidfDetalhadoController.datainicial.value = Data Inicial Aquisição
relatorioAidfDetalhadoController.dataFinal.value = Data Final Aquisição
relatorioAidfDetalhadoController.lbEmpresa.value = Empresa
@ -1103,6 +1103,7 @@ relatorioAidfDetalhadoController.lbAidf.value = AIDF/Série/SubSerie
relatorioAidfDetalhadoController.lbFormInicial.value = Form. Inicial
relatorioAidfDetalhadoController.lbFormFinal.value = Form. Final
relatorioAidfDetalhadoController.msg.agencia.obrigatorio = Uma Agência deve ser selecionada
relatorioAidfDetalhadoController.aidfTipo.label=Tipo Aidf
#Relatório de Vendas PTA
relatorioVendasPTAController.window.title = Reporte de Ventas PTA

View File

@ -385,7 +385,7 @@ indexController.mniRelatorioVendasCartoes.label=Vendas Cartões
indexController.mniRelatorioCancelamentoTransacao.label = Cancelamento J3
indexController.mniRelatorioTabelaPreco.label = Tabela de Preços
indexController.mniRelatorioAIDF.label = AIDF
indexController.mniRelatorioAIDFDetalhado.label = Relatório Estoque
indexController.mniRelatorioAIDFDetalhado.label = Relatório Saldo de Estoque
indexController.mniRelatorioMovimentacaoEstoque.label = Movimentação de Estoque
indexController.mniRelatorioHistoricoClientes.label = Histórico Clientes
indexController.mniRelatorioCadastroClientes.label = Cadastro Clientes
@ -1225,6 +1225,7 @@ relatorioAidfDetalhadoController.lbAidf.value = AIDF/Série/SubSerie
relatorioAidfDetalhadoController.lbFormInicial.value = Form. Inicial
relatorioAidfDetalhadoController.lbFormFinal.value = Form. Final
relatorioAidfDetalhadoController.msg.agencia.obrigatorio = Uma Agência deve ser selecionada
relatorioAidfDetalhadoController.aidfTipo.label=Tipo Aidf
#Relatorio Movimentacao Estoque
relatorioMovimentacaoEstoqueController.window.title = Relatório Movimentação de Estoque

View File

@ -7,7 +7,7 @@
<zk xmlns="http://www.zkoss.org/2005/zul">
<window id="winFiltroRelatorioAidfDetalhado" apply="${relatorioAidfDetalhadoController}"
contentStyle="overflow:auto"
height="300px" width="738px" border="normal">
height="320px" width="738px" border="normal">
<grid fixedLayout="true">
<columns>
<column width="25%" />
@ -90,7 +90,14 @@
</listbox>
<paging id="pagingSelPuntoVenta" pageSize="10" />
</row>
<row spans="1,3">
<label
value="${c:l('relatorioAidfDetalhadoController.aidfTipo.label')}" />
<combobox id="cmbAidfTipo"
use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar"
mold="rounded" buttonVisible="true"
width="100%" model="@{winFiltroRelatorioAidfDetalhado$composer.lsAidfTipo}"/>
</row>
</rows>
</grid>
<toolbar>