fixes bug #AL-2307

master
valdevir 2023-05-30 17:17:39 -03:00
parent 79049d14ba
commit eb56242b95
2 changed files with 67 additions and 63 deletions

View File

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

View File

@ -329,69 +329,73 @@ public class RelatorioGratuidade extends Relatorio {
} }
sb.append(" codorigem, "); sb.append(" codorigem, ");
sb.append(" coddestino, "); sb.append(" coddestino, ");
sb.append(" chbpe "); if(isApenasUltimaMovimentacaoBilhete) {
sb.append(" max(chbpe) ");
}else {
sb.append(" chbpe ");
}
sb.append(" "); sb.append(" ");
sb.append(" from "); sb.append(" from ");
sb.append("( "); sb.append("( ");
sb.append(" SELECT c.transacaooriginal_id, c.transacao_id,"); sb.append(" SELECT c.transacaooriginal_id, c.transacao_id,");
sb.append(" c.ccf,"); sb.append(" c.ccf,");
sb.append(" og.descorgao,"); sb.append(" og.descorgao,");
sb.append(" c.feccreacion,"); sb.append(" c.feccreacion,");
sb.append(" ori.cveparada origen,"); sb.append(" ori.cveparada origen,");
sb.append(" des.cveparada destino,"); sb.append(" des.cveparada destino,");
sb.append(" ori.descparada descorigen,"); sb.append(" ori.descparada descorigen,");
sb.append(" des.descparada descdestino,"); sb.append(" des.descparada descdestino,");
sb.append(" c.numkmviaje,"); sb.append(" c.numkmviaje,");
sb.append(" r.descruta,"); sb.append(" r.descruta,");
sb.append(" c.corrida_id,"); sb.append(" c.corrida_id,");
sb.append(" c.fechorviaje,"); sb.append(" c.fechorviaje,");
sb.append(" c.numasiento,"); sb.append(" c.numasiento,");
sb.append(" c.numfoliosistema,"); sb.append(" c.numfoliosistema,");
sb.append(" case when c.numfoliopreimpreso is null then 'PTA' when c.tipoventa_id = '81' then 'VENDA DE TRANSFERENCIA' when c.tipoventa_id = '82' then 'CONFIRM.VEND.ABERTO' when c.tipoventa_id = '8' then 'TROCA' else tv.desctipoventa end as desctipoventa, "); sb.append(" case when c.numfoliopreimpreso is null then 'PTA' when c.tipoventa_id = '81' then 'VENDA DE TRANSFERENCIA' when c.tipoventa_id = '82' then 'CONFIRM.VEND.ABERTO' when c.tipoventa_id = '8' then 'TROCA' else tv.desctipoventa end as desctipoventa, ");
sb.append(" c.nombpasajero,"); sb.append(" c.nombpasajero,");
sb.append(" c.descnumdoc,"); sb.append(" c.descnumdoc,");
sb.append(" tar.preciooriginal,"); sb.append(" tar.preciooriginal,");
sb.append(" tar.precio,"); sb.append(" tar.precio,");
sb.append(" case when c.PRECIOBASE > 0 then TRUNC(((100 - (c.PRECIOPAGADO * 100) / c.PRECIOBASE)),2) else 0 end as porccategoria, "); sb.append(" case when c.PRECIOBASE > 0 then TRUNC(((100 - (c.PRECIOPAGADO * 100) / c.PRECIOBASE)),2) else 0 end as porccategoria, ");
sb.append(" (select sum(cfpv.importe) from caja_formapago cfpv where cfpv.caja_id = c.caja_id and cfpv.activo = 1) as preciopagado, "); sb.append(" (select sum(cfpv.importe) from caja_formapago cfpv where cfpv.caja_id = c.caja_id and cfpv.activo = 1) as preciopagado, ");
sb.append(" nvl((select sum(cfpv.importe) from caja_formapago cfpv where cfpv.caja_id = c.caja_id and cfpv.activo = 1 and c.indstatusboleto = 'V'), 0) as preciopagadovendido, "); sb.append(" nvl((select sum(cfpv.importe) from caja_formapago cfpv where cfpv.caja_id = c.caja_id and cfpv.activo = 1 and c.indstatusboleto = 'V'), 0) as preciopagadovendido, ");
sb.append(" u.cveusuario,"); sb.append(" u.cveusuario,");
sb.append(" ag.nombpuntoventa,"); sb.append(" ag.nombpuntoventa,");
sb.append(" c.desctelefono,"); sb.append(" c.desctelefono,");
sb.append(" e.nombempresa,"); sb.append(" e.nombempresa,");
sb.append(" ca.cvecategoria,"); sb.append(" ca.cvecategoria,");
sb.append(" c.desctipodoc,"); sb.append(" c.desctipodoc,");
sb.append(" ca.desccategoria,"); sb.append(" ca.desccategoria,");
sb.append(" c.importepedagio,"); sb.append(" c.importepedagio,");
sb.append(" c.importeseguro,"); sb.append(" c.importeseguro,");
sb.append(" c.importetaxaembarque,"); sb.append(" c.importetaxaembarque,");
sb.append(" case when c.indstatusboleto = 'V' then 'VENDIDO' "); sb.append(" case when c.indstatusboleto = 'V' then 'VENDIDO' ");
sb.append(" when c.indstatusboleto = 'C' and c.motivocancelacion_id = 31 then 'CANCELADO' "); sb.append(" when c.indstatusboleto = 'C' and c.motivocancelacion_id = 31 then 'CANCELADO' ");
sb.append(" when c.indstatusboleto = 'C' and c.motivocancelacion_id = 32 then 'DEVOLVIDO' "); sb.append(" when c.indstatusboleto = 'C' and c.motivocancelacion_id = 32 then 'DEVOLVIDO' ");
sb.append(" when c.indstatusboleto = 'C' and c.motivocancelacion_id = 37 then 'CANCEC. EMERG' "); sb.append(" when c.indstatusboleto = 'C' and c.motivocancelacion_id = 37 then 'CANCEC. EMERG' ");
sb.append(" when c.indstatusboleto = 'E' and c.indreimpresion = 1 then 'ENTREGUE' "); sb.append(" when c.indstatusboleto = 'E' and c.indreimpresion = 1 then 'ENTREGUE' ");
sb.append(" when (c.indstatusboleto = 'T' and c.tipoventa_id = 8) "); sb.append(" when (c.indstatusboleto = 'T' and c.tipoventa_id = 8) ");
sb.append(" or (c.indstatusboleto = 'T' and c.tipoventa_id not in (81,41,82) and ct.cambiotitularidad_id is null and (bpe.tipoevento is null or bpe.tipoevento <> :bpeEventoAlteracaoPoltrona)) "); sb.append(" or (c.indstatusboleto = 'T' and c.tipoventa_id not in (81,41,82) and ct.cambiotitularidad_id is null and (bpe.tipoevento is null or bpe.tipoevento <> :bpeEventoAlteracaoPoltrona)) ");
sb.append(" or (c.indstatusboleto = 'T' and c.motivocancelacion_id is null and c.tipoventa_id = 8 and (bpe.tipoevento is null or bpe.tipoevento <> :bpeEventoAlteracaoPoltrona)) "); sb.append(" or (c.indstatusboleto = 'T' and c.motivocancelacion_id is null and c.tipoventa_id = 8 and (bpe.tipoevento is null or bpe.tipoevento <> :bpeEventoAlteracaoPoltrona)) ");
sb.append(" then 'TROCA' "); sb.append(" then 'TROCA' ");
sb.append(" when c.indstatusboleto = 'T' and c.motivocancelacion_id is null and bpe.tipoevento = :bpeEventoAlteracaoPoltrona then 'TROCA POLTRONA' "); sb.append(" when c.indstatusboleto = 'T' and c.motivocancelacion_id is null and bpe.tipoevento = :bpeEventoAlteracaoPoltrona then 'TROCA POLTRONA' ");
sb.append(" when c.indstatusboleto = 'T' and c.tipoventa_id = 81 then 'TRANSFERÊNCIA' " ); sb.append(" when c.indstatusboleto = 'T' and c.tipoventa_id = 81 then 'TRANSFERÊNCIA' " );
sb.append(" when c.indstatusboleto = 'T' and c.tipoventa_id = 82 then 'CONFIRM.ABERTO' " ); sb.append(" when c.indstatusboleto = 'T' and c.tipoventa_id = 82 then 'CONFIRM.ABERTO' " );
sb.append(" when c.indstatusboleto = 'C' and c.motivocancelacion_id = 10 then 'TROCA PASSAGEM' " ); sb.append(" when c.indstatusboleto = 'C' and c.motivocancelacion_id = 10 then 'TROCA PASSAGEM' " );
if(mcAlteracaoPoltrona != null) { if(mcAlteracaoPoltrona != null) {
sb.append(" when c.indstatusboleto = 'C' and c.indreimpresion = 1 and c.motivocancelacion_id = :mcAlteracaoPoltrona then 'POLTRONA ALTERADA' "); sb.append(" when c.indstatusboleto = 'C' and c.indreimpresion = 1 and c.motivocancelacion_id = :mcAlteracaoPoltrona then 'POLTRONA ALTERADA' ");
} }
sb.append(" when c.indstatusboleto = 'C' and c.motivocancelacion_id = 27 then 'NO-SHOW' "); sb.append(" when c.indstatusboleto = 'C' and c.motivocancelacion_id = 27 then 'NO-SHOW' ");
sb.append(" when ct.cambiotitularidad_id is not null then 'TROCA TITULARIDADE' "); sb.append(" when ct.cambiotitularidad_id is not null then 'TROCA TITULARIDADE' ");
sb.append(" when c.indstatusboleto = 'C' and c.motivocancelacion_id = 23 then 'TRANSFERIDO' "); sb.append(" when c.indstatusboleto = 'C' and c.motivocancelacion_id = 23 then 'TRANSFERIDO' ");
sb.append(" when c.indstatusboleto = 'T' and c.tipoventa_id = 41 then 'CHECKIN REATIVADO' "); sb.append(" when c.indstatusboleto = 'T' and c.tipoventa_id = 41 then 'CHECKIN REATIVADO' ");
sb.append(" when c.indreimpresion = 1 and c.motivoreimpresion_id = 99 then 'REIMPRESSO' "); sb.append(" when c.indreimpresion = 1 and c.motivoreimpresion_id = 99 then 'REIMPRESSO' ");
sb.append(" end as indstatusboleto,"); sb.append(" end as indstatusboleto,");
sb.append(" ori.cveparada codorigem,"); sb.append(" ori.cveparada codorigem,");
sb.append(" des.cveparada coddestino,"); sb.append(" des.cveparada coddestino,");
sb.append(" bpe.chbpe chbpe "); sb.append(" bpe.chbpe chbpe ");
sb.append(" FROM caja c"); sb.append(" FROM caja c");
sb.append(" JOIN categoria ca ON c.categoria_id = ca.categoria_id"); sb.append(" JOIN categoria ca ON c.categoria_id = ca.categoria_id");
sb.append(" JOIN parada ori ON ori.parada_id = c.origen_id"); sb.append(" JOIN parada ori ON ori.parada_id = c.origen_id");
@ -402,11 +406,11 @@ public class RelatorioGratuidade extends Relatorio {
sb.append(" JOIN usuario u ON u.usuario_id = c.usuario_id"); sb.append(" JOIN usuario u ON u.usuario_id = c.usuario_id");
sb.append(" LEFT JOIN vigencia_tarifa vt ON c.fechorventa BETWEEN vt.feciniciovigencia AND vt.fecfinvigencia and vt.activo = 1 "); sb.append(" LEFT JOIN vigencia_tarifa vt ON c.fechorventa BETWEEN vt.feciniciovigencia AND vt.fecfinvigencia and vt.activo = 1 ");
sb.append(" LEFT JOIN tarifa tar ON (tar.ruta_id = c.ruta_id"); sb.append(" LEFT JOIN tarifa tar ON (tar.ruta_id = c.ruta_id");
sb.append(" AND tar.marca_id = c.marca_id"); sb.append(" AND tar.marca_id = c.marca_id");
sb.append(" AND tar.claseservicio_id = c.claseservicio_id"); sb.append(" AND tar.claseservicio_id = c.claseservicio_id");
sb.append(" AND tar.vigenciatarifa_id = vt.vigenciatarifa_id"); sb.append(" AND tar.vigenciatarifa_id = vt.vigenciatarifa_id");
sb.append(" AND tar.origen_id = c.origen_id"); sb.append(" AND tar.origen_id = c.origen_id");
sb.append(" AND tar.destino_id = c.destino_id and tar.activo = 1)"); sb.append(" AND tar.destino_id = c.destino_id and tar.activo = 1)");
sb.append(" JOIN marca m on m.marca_id = c.marca_id"); sb.append(" JOIN marca m on m.marca_id = c.marca_id");
sb.append(" JOIN empresa e on e.empresa_id = m.empresa_id"); sb.append(" JOIN empresa e on e.empresa_id = m.empresa_id");
sb.append(" JOIN orgao_concedente og ON og.orgaoconcedente_id = r.orgaoconcedente_id"); sb.append(" JOIN orgao_concedente og ON og.orgaoconcedente_id = r.orgaoconcedente_id");
@ -494,8 +498,8 @@ public class RelatorioGratuidade extends Relatorio {
sb.append(" importetaxaembarque, "); sb.append(" importetaxaembarque, ");
// sb.append(" -- indstatusboleto, "); // sb.append(" -- indstatusboleto, ");
sb.append(" codorigem, "); sb.append(" codorigem, ");
sb.append(" coddestino, "); sb.append(" coddestino ");
sb.append(" chbpe "); //sb.append(" chbpe ");
}else { }else {
sb.append(" "); sb.append(" ");
} }