Erro registro valor Conta Corrente e Resumo de Caixa
git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Web/trunk/ventaboletos@31567 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
af1b42fa70
commit
2fc9df9292
|
@ -23,6 +23,9 @@ import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement;
|
|||
*/
|
||||
public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
|
||||
|
||||
private static final Integer CEM = Integer.valueOf(100);
|
||||
private static final Integer MAX_DECIMAL = Integer.valueOf(2);
|
||||
|
||||
enum IndicadorRelatorio {
|
||||
|
||||
MPE(1), RECEITA_KM(2), RECEITA_VIAGEM(3), IAP(4), PAXKM(5), ABSOLUTO(6), EQ(7);
|
||||
|
@ -52,7 +55,6 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
|
|||
*/
|
||||
public RelatorioAcompanhamentoEquivalentes(Map<String, Object> parametros, Connection conexao) throws Exception {
|
||||
super(parametros, conexao);
|
||||
// TODO Auto-generated constructor stub
|
||||
|
||||
this.setCustomDataSource(new ArrayDataSource(this) {
|
||||
|
||||
|
@ -61,6 +63,7 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
|
|||
Connection conexao = this.relatorio.getConexao();
|
||||
Map<String, Object> parametros = this.relatorio.getParametros();
|
||||
String sql = getSql();
|
||||
|
||||
NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql);
|
||||
|
||||
if (parametros.get("EMPRESA_ID") != null)
|
||||
|
@ -89,6 +92,8 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
|
|||
|
||||
Integer rolOperativoId = this.resultSet.getInt("ROLOPERATIVO_ID");
|
||||
Integer corridaId = this.resultSet.getInt("CORRIDA_ID");
|
||||
Integer assentos = this.resultSet.getInt("ASSENTOS");
|
||||
|
||||
Map<String, Object> row = new HashMap<String, Object>();
|
||||
BigDecimal totalMes = BigDecimal.ZERO;
|
||||
Integer totalDias = 0;
|
||||
|
@ -100,7 +105,7 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
|
|||
// Roda todos os dias do mes
|
||||
for (int dia = 1; dia <= cal.getActualMaximum(Calendar.DATE); dia++) {
|
||||
|
||||
BigDecimal valor = getValorByIndicador(cal.getTime(), corridaId, rolOperativoId, (Integer) this.relatorio.getParametros().get("INDICADOR"));
|
||||
BigDecimal valor = getValorByIndicador(cal.getTime(), corridaId, rolOperativoId, (Integer) this.relatorio.getParametros().get("INDICADOR"), assentos);
|
||||
|
||||
if (valor != null) {
|
||||
totalMes = totalMes.add(valor);
|
||||
|
@ -133,7 +138,7 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
|
|||
|
||||
}
|
||||
|
||||
protected BigDecimal getValorByIndicador(Date data, Integer corridaId, Integer rolOperativoId, Integer indicador) throws SQLException {
|
||||
protected BigDecimal getValorByIndicador(Date data, Integer corridaId, Integer rolOperativoId, Integer indicador, Integer assentos) throws SQLException {
|
||||
|
||||
String sql = null;
|
||||
|
||||
|
@ -161,7 +166,7 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
|
|||
break;
|
||||
}
|
||||
|
||||
return getValorIndicador(data, corridaId, sql);
|
||||
return getValorIndicador(data, corridaId, indicador, assentos, sql);
|
||||
}
|
||||
|
||||
});
|
||||
|
@ -251,57 +256,30 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
|
|||
|
||||
protected String getSqlIndicadorIap() {
|
||||
StringBuilder sql = new StringBuilder();
|
||||
sql.append(" SELECT (TAB1.EQUIVALENTE * TAB1.EXTENSAO_LINHA) /");
|
||||
sql.append(" (TAB1.CAPACIDADE * TAB1.EXTENSAO_LINHA) VALOR");
|
||||
sql.append(" FROM (SELECT TAB.*,");
|
||||
sql.append(" (SELECT SUM((TR.CANTKMREAL / TAB.EXTENSAO_LINHA) *");
|
||||
sql.append(" COUNT(1))");
|
||||
sql.append(" FROM CORRIDA CR,");
|
||||
sql.append(" CORRIDA_TRAMO CT,");
|
||||
sql.append(" TRAMO TR,");
|
||||
sql.append(" BOLETO BO,");
|
||||
sql.append(" CORRIDA_TRAMO CTD,");
|
||||
sql.append(" CORRIDA_TRAMO CTO");
|
||||
sql.append(" WHERE CR.CORRIDA_ID = :CORRIDA_ID");
|
||||
sql.append(" AND CR.FECCORRIDA = :FECCORRIDA");
|
||||
sql.append(" AND CT.FECCORRIDA = CR.FECCORRIDA");
|
||||
sql.append(" AND CT.CORRIDA_ID = CR.CORRIDA_ID");
|
||||
sql.append(" AND TR.TRAMO_ID = CT.TRAMO_ID");
|
||||
sql.append(" AND BO.CORRIDA_ID = CT.CORRIDA_ID");
|
||||
sql.append(" AND BO.FECCORRIDA = CT.FECCORRIDA");
|
||||
sql.append(" AND BO.ORIGEN_ID = CTO.ORIGEN_ID");
|
||||
sql.append(" AND BO.DESTINO_ID = CTD.DESTINO_ID");
|
||||
sql.append(" AND CTD.CORRIDA_ID = CT.CORRIDA_ID");
|
||||
sql.append(" AND CTD.FECCORRIDA = CT.FECCORRIDA");
|
||||
sql.append(" AND CTO.CORRIDA_ID = CT.CORRIDA_ID");
|
||||
sql.append(" AND CTO.FECCORRIDA = CT.FECCORRIDA");
|
||||
sql.append(" AND CTO.ACTIVO = 1");
|
||||
sql.append(" AND CTD.ACTIVO = 1");
|
||||
sql.append(" AND CT.NUMSECUENCIA BETWEEN CTO.NUMSECUENCIA AND");
|
||||
sql.append(" CTD.NUMSECUENCIA");
|
||||
sql.append(" AND BO.ACTIVO = 1");
|
||||
sql.append(" AND BO.INDREIMPRESION = 0");
|
||||
sql.append(" AND BO.INDSTATUSOPERACION = 'F'");
|
||||
sql.append(" AND (BO.MOTIVOCANCELACION_ID IS NULL OR");
|
||||
sql.append(" BO.MOTIVOCANCELACION_ID = 0)");
|
||||
sql.append(" GROUP BY CT.TRAMO_ID, TR.CANTKMREAL) EQUIVALENTE");
|
||||
sql.append(" FROM (SELECT (SELECT SUM(TR1.CANTKMREAL)");
|
||||
sql.append(" FROM CORRIDA_TRAMO CT1, TRAMO TR1");
|
||||
sql.append(" SELECT ROUND(SUM(:CEM * (( EQUIVALENTE * EXTENSAO_LINHA ) / ( :CAPACIDADE * ");
|
||||
sql.append(" EXTENSAO_LINHA ))), ");
|
||||
sql.append(" :MAX_DECIMAL ) VALOR ");
|
||||
sql.append(" FROM (SELECT ROUND(SUM(EQ), :MAX_DECIMAL) EQUIVALENTE, ");
|
||||
sql.append(" EL EXTENSAO_LINHA ");
|
||||
sql.append(" FROM (SELECT ROUND(( BO.NUMKMVIAJE * COUNT(1) / ( EXTENSAO_LINHA.EL ) ");
|
||||
sql.append(" ), :MAX_DECIMAL ) ");
|
||||
sql.append(" EQ, ");
|
||||
sql.append(" EXTENSAO_LINHA.EL ");
|
||||
sql.append(" EL ");
|
||||
sql.append(" FROM BOLETO BO, ");
|
||||
sql.append(" (SELECT SUM(TR1.CANTKMREAL) EL ");
|
||||
sql.append(" FROM CORRIDA_TRAMO CT1, ");
|
||||
sql.append(" TRAMO TR1 ");
|
||||
sql.append(" WHERE CT1.CORRIDA_ID = :CORRIDA_ID ");
|
||||
sql.append(" AND CT1.FECCORRIDA = :FECCORRIDA ");
|
||||
sql.append(" AND TR1.TRAMO_ID = CT1.TRAMO_ID) EXTENSAO_LINHA,");
|
||||
sql.append(" ");
|
||||
sql.append(" (SELECT DA.CANTASIENTOS");
|
||||
sql.append(" FROM CORRIDA CR,");
|
||||
sql.append(" ROL_OPERATIVO RO,");
|
||||
sql.append(" DIAGRAMA_AUTOBUS DA");
|
||||
sql.append(" WHERE CR.CORRIDA_ID = :CORRIDA_ID");
|
||||
sql.append(" AND CR.FECCORRIDA = :FECCORRIDA");
|
||||
sql.append(" AND RO.ROLOPERATIVO_ID = CR.ROLOPERATIVO_ID");
|
||||
sql.append(" AND RO.DIAGRAMAAUTOBUS_ID =");
|
||||
sql.append(" DA.DIAGRAMAAUTOBUS_ID) CAPACIDADE");
|
||||
sql.append(" ");
|
||||
sql.append(" FROM DUAL) TAB) TAB1");
|
||||
sql.append(" AND TR1.TRAMO_ID = CT1.TRAMO_ID) EXTENSAO_LINHA ");
|
||||
sql.append(" WHERE BO.CORRIDA_ID = :CORRIDA_ID ");
|
||||
sql.append(" AND BO.FECCORRIDA = :FECCORRIDA ");
|
||||
sql.append(" AND BO.ACTIVO = 1 ");
|
||||
sql.append(" AND ( BO.MOTIVOCANCELACION_ID IS NULL ");
|
||||
sql.append(" OR BO.MOTIVOCANCELACION_ID = 0 ) ");
|
||||
sql.append(" GROUP BY BO.NUMKMVIAJE, EXTENSAO_LINHA.EL) ");
|
||||
sql.append(" GROUP BY EQ, EL) ");
|
||||
|
||||
return sql.toString();
|
||||
|
||||
|
@ -405,15 +383,23 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
|
|||
|
||||
}
|
||||
|
||||
protected BigDecimal getValorIndicador(Date data, Integer corridaId, String sql) throws SQLException {
|
||||
protected BigDecimal getValorIndicador(Date data, Integer corridaId, Integer indicador, Integer assentos, String sql) throws SQLException {
|
||||
BigDecimal retorno = null;
|
||||
try {
|
||||
|
||||
Connection conexao = this.getConexao();
|
||||
BigDecimal retorno = null;
|
||||
|
||||
NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql);
|
||||
|
||||
stmt.setInt("CORRIDA_ID", corridaId);
|
||||
stmt.setDate("FECCORRIDA", new java.sql.Date(data.getTime()));
|
||||
|
||||
if (IndicadorRelatorio.fromInt(indicador).equals(IndicadorRelatorio.IAP)) {
|
||||
stmt.setInt("CAPACIDADE", assentos);
|
||||
stmt.setInt("CEM", CEM);
|
||||
stmt.setInt("MAX_DECIMAL", MAX_DECIMAL);
|
||||
}
|
||||
|
||||
ResultSet resultSet = stmt.executeQuery();
|
||||
|
||||
if (resultSet.next())
|
||||
|
@ -421,6 +407,9 @@ public class RelatorioAcompanhamentoEquivalentes extends Relatorio {
|
|||
|
||||
resultSet.close();
|
||||
stmt.close();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
return retorno;
|
||||
}
|
||||
|
|
|
@ -35,6 +35,8 @@ import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer;
|
|||
@Scope("prototype")
|
||||
public class RelatorioAcompanhamentoEquivalentesController extends MyGenericForwardComposer {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Autowired
|
||||
private DataSource dataSource;
|
||||
|
||||
|
@ -49,8 +51,6 @@ public class RelatorioAcompanhamentoEquivalentesController extends MyGenericForw
|
|||
|
||||
private MyComboboxEstandar cmbEmpresa;
|
||||
|
||||
|
||||
|
||||
public void onClick$btnExecutarRelatorio(Event ev) throws Exception {
|
||||
executarRelatorio();
|
||||
}
|
||||
|
@ -69,7 +69,6 @@ public class RelatorioAcompanhamentoEquivalentesController extends MyGenericForw
|
|||
parametros.put("INDICADOR", Integer.parseInt(rdGroupIndicador.getSelectedItem().getValue()));
|
||||
parametros.put("INDICADOR_NOME", rdGroupIndicador.getSelectedItem().getLabel());
|
||||
|
||||
|
||||
Comboitem itemEmpresa = cmbEmpresa.getSelectedItem();
|
||||
if (itemEmpresa != null) {
|
||||
Empresa empresa = (Empresa) itemEmpresa.getValue();
|
||||
|
@ -80,11 +79,9 @@ public class RelatorioAcompanhamentoEquivalentesController extends MyGenericForw
|
|||
if (rdGroupServico.getSelectedItem() != null && !rdGroupServico.getSelectedItem().getValue().equals("-1"))
|
||||
parametros.put("TIPOSERVICIO_ID", Integer.parseInt(rdGroupServico.getSelectedItem().getValue()));
|
||||
|
||||
|
||||
relatorio = new RelatorioAcompanhamentoEquivalentes(parametros, dataSource.getConnection());
|
||||
|
||||
|
||||
Map args = new HashMap();
|
||||
Map<String, Relatorio> args = new HashMap<String, Relatorio>();
|
||||
args.put("relatorio", relatorio);
|
||||
|
||||
openWindow("/component/reportView.zul",
|
||||
|
@ -99,7 +96,6 @@ public class RelatorioAcompanhamentoEquivalentesController extends MyGenericForw
|
|||
super.doAfterCompose(comp);
|
||||
}
|
||||
|
||||
|
||||
public List<Empresa> getLsEmpresa() {
|
||||
return lsEmpresa;
|
||||
}
|
||||
|
|
|
@ -383,7 +383,7 @@ relatorioAcompanhamentoEquivalentesController.lbIndicador.value = Indicador
|
|||
relatorioAcompanhamentoEquivalentesController.lbIndicador.mpe.value = MPE
|
||||
relatorioAcompanhamentoEquivalentesController.lbIndicador.receitaKm.value = R$/Km
|
||||
relatorioAcompanhamentoEquivalentesController.lbIndicador.receitaViagem.value = R$/Viagem
|
||||
relatorioAcompanhamentoEquivalentesController.lbIndicador.iap.value = IAP
|
||||
relatorioAcompanhamentoEquivalentesController.lbIndicador.iap.value = IAP%
|
||||
relatorioAcompanhamentoEquivalentesController.lbIndicador.paxKm.value = Pax.KM
|
||||
relatorioAcompanhamentoEquivalentesController.lbIndicador.absoluto.value = Absoluto
|
||||
relatorioAcompanhamentoEquivalentesController.lbIndicador.eq.value = Eq
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<zk xmlns="http://www.zkoss.org/2005/zul">
|
||||
<window id="winFiltroRelatorioAcompanhamentoEquivalentes"
|
||||
apply="${relatorioAcompanhamentoEquivalentesController}"
|
||||
contentStyle="overflow:auto" height="278px" width="550px"
|
||||
contentStyle="overflow:auto" height="260px" width="550px"
|
||||
border="normal">
|
||||
<grid fixedLayout="true">
|
||||
<columns>
|
||||
|
|
Loading…
Reference in New Issue