wilian 2016-02-18 19:16:44 +00:00
parent 349b288ada
commit e463fcc7fa
9 changed files with 92 additions and 6 deletions

View File

@ -11,6 +11,7 @@ import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.TreeSet;
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
@ -32,6 +33,7 @@ public class RelatorioMovimentosAtraso extends Relatorio {
private Date dataInicial;
private Date dataFinal;
private String competencia;
private SituacaoDiaMovimento status;
public RelatorioMovimentosAtraso(Map<String, Object> parametros, Connection conexao) throws Exception {
super(parametros, conexao);
@ -93,6 +95,8 @@ public class RelatorioMovimentosAtraso extends Relatorio {
}
}
aplicarFiltroSituacaoMovimentos(lsDadosRelatorio);
Collections.sort(lsDadosRelatorio);
return lsDadosRelatorio;
} catch (Exception e) {
@ -112,6 +116,29 @@ public class RelatorioMovimentosAtraso extends Relatorio {
return null;
}
private void aplicarFiltroSituacaoMovimentos(List<MovimentosAtrasoVO> lsDadosRelatorio) {
if(status != null) {
Set<Integer> sPuntoventaManter = new TreeSet<Integer>();
for (MovimentosAtrasoVO movimentosAtraso : lsDadosRelatorio) {
if(movimentosAtraso.getSituacao().equals(status)) {
sPuntoventaManter.add(movimentosAtraso.getPuntoventaId());
}
}
List<MovimentosAtrasoVO> lsMovimentosAtrasosManter = new ArrayList<MovimentosAtrasoVO>();
for (MovimentosAtrasoVO movimentosAtraso: lsDadosRelatorio) {
if(sPuntoventaManter.contains(movimentosAtraso.getPuntoventaId())) {
lsMovimentosAtrasosManter.add(movimentosAtraso);
}
}
if(lsMovimentosAtrasosManter.size() != lsDadosRelatorio.size()) {
lsDadosRelatorio.clear();
lsDadosRelatorio.addAll(lsMovimentosAtrasosManter);
}
}
}
private List<MovimentosAtrasoVO> iniciarDados(Connection conexao) {
ResultSet rset = null;
NamedParameterStatement stmt = null;
@ -209,6 +236,7 @@ public class RelatorioMovimentosAtraso extends Relatorio {
Integer puntoventaId = (Integer) parametros.get("puntoventaId");
Integer empresaId = (Integer) parametros.get("empresaId");
String competencia = (String) parametros.get("competencia");
status = (SituacaoDiaMovimento) parametros.get("status");
if(StringUtils.isNotBlank(competencia)) {
this.competencia = competencia;
@ -231,6 +259,10 @@ public class RelatorioMovimentosAtraso extends Relatorio {
this.dataFinal = DateUtil.getDateFromString(cal.getActualMaximum(Calendar.DAY_OF_MONTH) + "/" + competencia, "dd/MM/yyyy");
}
if(status != null) {
parametros.put("statusFiltro", status.toString());
}
}
}

View File

@ -16,4 +16,5 @@ cabecalho.usuario=Usu
label.empresa=Empresa:
label.legenda=Legenda
label.puntoventa=Punto Venta:
label.competencia=Competencia:
label.competencia=Competencia:
label.situacao=Situação:

View File

@ -16,4 +16,5 @@ cabecalho.usuario=Usu
label.empresa=Empresa:
label.legenda=Legenda
label.puntoventa=Ponto de Venda:
label.competencia=Competência:
label.competencia=Competência:
label.situacao=Situação:

View File

@ -16,6 +16,7 @@
<parameter name="shortSituacaoAguardando" class="java.lang.String"/>
<parameter name="competencia" class="java.lang.String"/>
<parameter name="puntoventa" class="java.lang.String"/>
<parameter name="statusFiltro" class="java.lang.String"/>
<queryString>
<![CDATA[]]>
</queryString>
@ -26,7 +27,7 @@
<band splitType="Stretch"/>
</background>
<title>
<band height="102" splitType="Stretch">
<band height="120" splitType="Stretch">
<textField>
<reportElement x="0" y="0" width="637" height="20" uuid="43b2c28d-4760-4890-b00d-25e931e79c74"/>
<textElement markup="none">
@ -69,6 +70,13 @@
</textElement>
<textFieldExpression><![CDATA[$R{label.competencia} + " " + $P{competencia}]]></textFieldExpression>
</textField>
<textField isBlankWhenNull="true">
<reportElement x="0" y="100" width="637" height="20" uuid="df62eb14-a843-4ef2-b219-89de2d25a2d2"/>
<textElement>
<font isBold="true"/>
</textElement>
<textFieldExpression><![CDATA[$R{label.situacao} + " " + $P{statusFiltro}]]></textFieldExpression>
</textField>
</band>
</title>
<pageHeader>

View File

@ -13,6 +13,7 @@ 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.Radio;
import org.zkoss.zul.Textbox;
import com.rjconsultores.ventaboletos.entidad.Empresa;
@ -21,6 +22,7 @@ import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioMovimentosAtraso;
import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio;
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
import com.rjconsultores.ventaboletos.vo.comissao.MovimentosAtrasoVO.SituacaoDiaMovimento;
import com.rjconsultores.ventaboletos.web.utilerias.MaskUtil;
import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer;
@Scope("prototype")
@ -36,11 +38,17 @@ public class RelatorioMovimentosAtrasoController extends MyGenericForwardCompose
private Textbox txtCompetencia;
private PuntoVenta puntoVenta;
private Empresa empresa;
private Empresa empresa;
private Radio rTodos;
private Radio rEntregue;
private Radio rAtrasado;
private Radio rAguardando;
@Override
public void doAfterCompose(Component comp) throws Exception {
super.doAfterCompose(comp);
aplicarMascara();
txtCompetencia.focus();
}
@ -57,6 +65,14 @@ public class RelatorioMovimentosAtrasoController extends MyGenericForwardCompose
parametros.put("shortSituacaoAtrasado", SituacaoDiaMovimento.ATRASADO.getShortDescricao());
parametros.put("situacaoAguardando", SituacaoDiaMovimento.AGUARDANDO.toString());
parametros.put("shortSituacaoAguardando", SituacaoDiaMovimento.AGUARDANDO.getShortDescricao());
if(rEntregue.isChecked()) {
parametros.put("status", SituacaoDiaMovimento.ENTREGUE);
} else if(rAtrasado.isChecked()) {
parametros.put("status", SituacaoDiaMovimento.ATRASADO);
} else if(rAguardando.isChecked()) {
parametros.put("status", SituacaoDiaMovimento.AGUARDANDO);
}
if(puntoVenta != null) {
parametros.put("puntoventaId", puntoVenta.getPuntoventaId());
@ -92,5 +108,9 @@ public class RelatorioMovimentosAtrasoController extends MyGenericForwardCompose
public void setEmpresa(Empresa empresa) {
this.empresa = empresa;
}
public void aplicarMascara() {
MaskUtil.aplicarMascara(txtCompetencia.getUuid(), "99/9999");
}
}

View File

@ -6112,6 +6112,11 @@ relatorioMovimentosAtrasoController.lbCompetencia.label = Competencia
relatorioMovimentosAtrasoController.lbCompetenciaLayout.label = (MM/YYYY)
relatorioMovimentosAtrasoController.lbEmpresa.value = Empresa
relatorioMovimentosAtrasoController.lbPuntoVenta.value = Punto venta
relatorioMovimentosAtrasoController.lbSituacaoDiaMovimento.value = Situação Movimento
relatorioMovimentosAtrasoController.lbSituacaoDiaMovimentoTodos.value = Todos
relatorioMovimentosAtrasoController.lbSituacaoDiaMovimentoEntregue.value = Entregue
relatorioMovimentosAtrasoController.lbSituacaoDiaMovimentoAtrasado.value = Atrasado
relatorioMovimentosAtrasoController.lbSituacaoDiaMovimentoAguardando.value = Aguardando
# Relatorio Observacao Boletos
relatorioObservacaoBilhetesController.window.title = Reporte Observaciones Boletos

View File

@ -6255,6 +6255,11 @@ relatorioMovimentosAtrasoController.lbCompetencia.label = Competencia
relatorioMovimentosAtrasoController.lbCompetenciaLayout.label = (MM/YYYY)
relatorioMovimentosAtrasoController.lbEmpresa.value = Empresa
relatorioMovimentosAtrasoController.lbPuntoVenta.value = Ponto de venda
relatorioMovimentosAtrasoController.lbSituacaoDiaMovimento.value = Situação Movimento
relatorioMovimentosAtrasoController.lbSituacaoDiaMovimentoTodos.value = Todos
relatorioMovimentosAtrasoController.lbSituacaoDiaMovimentoEntregue.value = Entregue
relatorioMovimentosAtrasoController.lbSituacaoDiaMovimentoAtrasado.value = Atrasado
relatorioMovimentosAtrasoController.lbSituacaoDiaMovimentoAguardando.value = Aguardando
# Relatorio Observacao Bilhetes
relatorioObservacaoBilhetesController.window.title = Relatório Observações Bilhetes

View File

@ -9,8 +9,8 @@
title="${c:l('relatorioMovimentosAtrasoController.window.title')}"
apply="${relatorioMovimentosAtrasoController}"
contentStyle="overflow:auto"
height="190px"
width="380px"
height="215px"
width="450px"
border="normal" >
<toolbar>
<button id="btnCerrar"
@ -54,6 +54,20 @@
width="90%"
selectedItem="@{winRelatorioMovimentosAtraso$composer.puntoVenta}" />
</row>
<row>
<label value="${c:l('relatorioMovimentosAtrasoController.lbSituacaoDiaMovimento.value')}" />
<radiogroup id="situacaoDiaMovimento">
<radio id="rTodos"
label="${c:l('relatorioMovimentosAtrasoController.lbSituacaoDiaMovimentoTodos.value')}"
checked="true" />
<radio id="rEntregue"
label="${c:l('relatorioMovimentosAtrasoController.lbSituacaoDiaMovimentoEntregue.value')}" />
<radio id="rAguardando"
label="${c:l('relatorioMovimentosAtrasoController.lbSituacaoDiaMovimentoAguardando.value')}" />
<radio id="rAtrasado"
label="${c:l('relatorioMovimentosAtrasoController.lbSituacaoDiaMovimentoAtrasado.value')}" />
</radiogroup>
</row>
</rows>
</grid>