wilian 2018-01-25 17:38:47 +00:00
parent 79bf750e4e
commit 6765412815
3 changed files with 66 additions and 14 deletions

View File

@ -37,6 +37,7 @@ public class RelatorioMovimentosAtraso extends Relatorio {
private String competencia; private String competencia;
private SituacaoDiaMovimento status; private SituacaoDiaMovimento status;
private Map<Integer, Set<Integer>> diasComMovimentos; private Map<Integer, Set<Integer>> diasComMovimentos;
private List<MovimentosAtrasoVO> lsDadosRelatorio;
public RelatorioMovimentosAtraso(Map<String, Object> parametros, Connection conexao) throws Exception { public RelatorioMovimentosAtraso(Map<String, Object> parametros, Connection conexao) throws Exception {
super(parametros, conexao); super(parametros, conexao);
@ -49,7 +50,7 @@ public class RelatorioMovimentosAtraso extends Relatorio {
Boolean tipoRelatorio = (Boolean) relatorio.getParametros().get("eTipoConferencia"); Boolean tipoRelatorio = (Boolean) relatorio.getParametros().get("eTipoConferencia");
List<MovimentosAtrasoVO> lsDadosRelatorio = processarRelatorio(conexao, tipoRelatorio); lsDadosRelatorio = processarRelatorio(conexao, tipoRelatorio);
setLsDadosRelatorio(lsDadosRelatorio); setLsDadosRelatorio(lsDadosRelatorio);
} }
}); });
@ -210,11 +211,11 @@ public class RelatorioMovimentosAtraso extends Relatorio {
NamedParameterStatement stmt = null; NamedParameterStatement stmt = null;
try { try {
StringBuilder sQuery = new StringBuilder(); StringBuilder sQuery = new StringBuilder();
sQuery.append("SELECT C.PUNTOVENTA_ID, TO_DATE(C.FECHORVENTA,'DD/MM/YYYY') AS FECHORVENTA ") sQuery.append("SELECT C.PUNTOVENTA_ID, C.FECCORTE ")
.append("FROM CAJA C ") .append("FROM CAJA C ")
.append("INNER JOIN MARCA M ON C.MARCA_ID = M.MARCA_ID ") .append("INNER JOIN MARCA M ON C.MARCA_ID = M.MARCA_ID ")
.append("WHERE C.ACTIVO = 1 ") .append("WHERE C.ACTIVO = 1 ")
.append("AND C.FECHORVENTA BETWEEN :dataInicial AND :dataFinal "); .append("AND C.FECCORTE BETWEEN :dataInicial AND :dataFinal ");
if(empresaId != null) { if(empresaId != null) {
sQuery.append("AND M.EMPRESA_ID = :empresaId "); sQuery.append("AND M.EMPRESA_ID = :empresaId ");
@ -224,7 +225,7 @@ public class RelatorioMovimentosAtraso extends Relatorio {
sQuery.append("AND C.PUNTOVENTA_ID = :puntoventaId "); sQuery.append("AND C.PUNTOVENTA_ID = :puntoventaId ");
} }
sQuery.append("GROUP BY C.PUNTOVENTA_ID, TO_DATE(C.FECHORVENTA, 'DD/MM/YYYY') "); sQuery.append("GROUP BY C.PUNTOVENTA_ID, C.FECCORTE");
log.info(sQuery.toString()); log.info(sQuery.toString());
@ -244,10 +245,10 @@ public class RelatorioMovimentosAtraso extends Relatorio {
diasComMovimentos = new HashMap<Integer, Set<Integer>>(); diasComMovimentos = new HashMap<Integer, Set<Integer>>();
while (rset.next()) { while (rset.next()) {
Integer puntoventaId = rset.getInt("PUNTOVENTA_ID"); Integer puntoventaId = rset.getInt("PUNTOVENTA_ID");
Date fechorventa = DateUtil.normalizar(rset.getDate("FECHORVENTA")); Date feccorte = DateUtil.normalizar(rset.getDate("FECCORTE"));
validarPuntoventaDiasComMovimentos(puntoventaId); validarPuntoventaDiasComMovimentos(puntoventaId);
diasComMovimentos.get(puntoventaId).add(DateUtil.getIntegerDate(fechorventa, "dd")); diasComMovimentos.get(puntoventaId).add(DateUtil.getIntegerDate(feccorte, "dd"));
} }
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage(), e); log.error(e.getMessage(), e);
@ -402,4 +403,8 @@ public class RelatorioMovimentosAtraso extends Relatorio {
} }
public List<MovimentosAtrasoVO> getLsDadosRelatorio() {
return lsDadosRelatorio;
}
} }

View File

@ -1,6 +1,10 @@
package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios; package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.List;
import java.util.Map; import java.util.Map;
import javax.sql.DataSource; import javax.sql.DataSource;
@ -19,8 +23,11 @@ import org.zkoss.zul.Textbox;
import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.Empresa;
import com.rjconsultores.ventaboletos.entidad.PuntoVenta; import com.rjconsultores.ventaboletos.entidad.PuntoVenta;
import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioMovimentosAtraso; import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioMovimentosAtraso;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; import com.rjconsultores.ventaboletos.service.ConferenciaComissaoService;
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
import com.rjconsultores.ventaboletos.vo.comissao.ConferenciaComissaoVO;
import com.rjconsultores.ventaboletos.vo.comissao.DiaConferenciaComissaoVO;
import com.rjconsultores.ventaboletos.vo.comissao.MovimentosAtrasoVO;
import com.rjconsultores.ventaboletos.vo.comissao.MovimentosAtrasoVO.SituacaoDiaMovimento; import com.rjconsultores.ventaboletos.vo.comissao.MovimentosAtrasoVO.SituacaoDiaMovimento;
import com.rjconsultores.ventaboletos.web.utilerias.MaskUtil; import com.rjconsultores.ventaboletos.web.utilerias.MaskUtil;
import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer;
@ -36,9 +43,13 @@ public class RelatorioMovimentosAtrasoController extends MyGenericForwardCompose
@Autowired @Autowired
private DataSource dataSourceRead; private DataSource dataSourceRead;
@Autowired
private ConferenciaComissaoService conferenciaComissaoService;
private Textbox txtCompetencia; private Textbox txtCompetencia;
private PuntoVenta puntoVenta; private PuntoVenta puntoVenta;
private Empresa empresa; private Empresa empresa;
private List<Empresa> lsEmpresas;
private Radio rdbTipoConferencia; private Radio rdbTipoConferencia;
@ -46,8 +57,15 @@ public class RelatorioMovimentosAtrasoController extends MyGenericForwardCompose
public void doAfterCompose(Component comp) throws Exception { public void doAfterCompose(Component comp) throws Exception {
super.doAfterCompose(comp); super.doAfterCompose(comp);
aplicarMascara(); aplicarMascara();
txtCompetencia.focus(); lsEmpresas = UsuarioLogado.getUsuarioLogado().getEmpresa();
} initCompetencia();
}
private void initCompetencia() {
DateFormat format =new SimpleDateFormat("MM/yyyy");
txtCompetencia.setText(format.format(new Date()));
txtCompetencia.focus();
}
public void onClick$btnRelatorio(Event ev) { public void onClick$btnRelatorio(Event ev) {
try { try {
@ -66,7 +84,8 @@ public class RelatorioMovimentosAtrasoController extends MyGenericForwardCompose
parametros.put("puntoventa", "Todos"); parametros.put("puntoventa", "Todos");
} }
Relatorio relatorio = new RelatorioMovimentosAtraso(parametros, dataSourceRead.getConnection()); RelatorioMovimentosAtraso relatorio = new RelatorioMovimentosAtraso(parametros, dataSourceRead.getConnection());
removerDiasSemMovimento(relatorio);
Map<String, Object> args = new HashMap<String, Object>(); Map<String, Object> args = new HashMap<String, Object>();
args.put("relatorio", relatorio); args.put("relatorio", relatorio);
@ -78,6 +97,29 @@ public class RelatorioMovimentosAtrasoController extends MyGenericForwardCompose
} }
} }
/**
* Remove os dias sem movimento
* Mantis #10515
* @param relatorio
*/
private void removerDiasSemMovimento(RelatorioMovimentosAtraso relatorio) {
try {
for (MovimentosAtrasoVO movimentosAtraso : relatorio.getLsDadosRelatorio()) {
List<ConferenciaComissaoVO> lsConferenciaComissao = conferenciaComissaoService.carregarConferenciaComissao(txtCompetencia.getValue(), empresa, new PuntoVenta(movimentosAtraso.getPuntoventaId()), null);
for (ConferenciaComissaoVO conferenciaComissao : lsConferenciaComissao) {
for (DiaConferenciaComissaoVO diaConferenciaComissao : conferenciaComissao.getDiasOrdenado()) {
if(diaConferenciaComissao.getIndsemmovimento()) {
movimentosAtraso.getDiasEmAtraso().remove(diaConferenciaComissao.getDia());
}
}
}
}
} catch (Exception e) {
log.error(e.getMessage(), e);
}
}
public PuntoVenta getPuntoVenta() { public PuntoVenta getPuntoVenta() {
return puntoVenta; return puntoVenta;
} }
@ -98,4 +140,8 @@ public class RelatorioMovimentosAtrasoController extends MyGenericForwardCompose
MaskUtil.aplicarMascara(txtCompetencia.getUuid(), "99/9999"); MaskUtil.aplicarMascara(txtCompetencia.getUuid(), "99/9999");
} }
public List<Empresa> getLsEmpresas() {
return lsEmpresas;
}
} }

View File

@ -46,11 +46,12 @@
<row> <row>
<label value="${c:l('relatorioMovimentosAtrasoController.lbEmpresa.value')}" /> <label value="${c:l('relatorioMovimentosAtrasoController.lbEmpresa.value')}" />
<combobox id="cmbEmpresa" <combobox id="cmbEmpresa"
use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEmpresa"
constraint="no empty" constraint="no empty"
mold="rounded" use="com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar"
buttonVisible="true" width="90%"
width="90%" mold="rounded"
buttonVisible="true"
model="@{winRelatorioMovimentosAtraso$composer.lsEmpresas}"
selectedItem="@{winRelatorioMovimentosAtraso$composer.empresa}" /> selectedItem="@{winRelatorioMovimentosAtraso$composer.empresa}" />
</row> </row>
<row> <row>