Merge pull request 'AL-1912' (#20) from AL-1912 into master

Reviewed-on: http://18.235.188.113:3000/adm/ModelWeb/pulls/20
Reviewed-by: fabio <fabio.faria@rjconsultores.com.br>
Reviewed-by: Julio Heredia <julio@rjconsultores.com.br>
master
Lucas Taiã 2023-01-12 21:26:19 +00:00
commit a96c794fa9
3 changed files with 65 additions and 25 deletions

View File

@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>br.com.rjconsultores</groupId>
<artifactId>ModelWeb</artifactId>
<version>1.0.22</version>
<version>1.0.23</version>
<distributionManagement>
<repository>
<id>rj-releases</id>

View File

@ -539,14 +539,16 @@ public class TarifaOficialHibernateDAO extends GenericHibernateDAO<TarifaOficial
+ "WITHIN GROUP (ORDER BY p.casetapeaje_id) as composicaoDoPedagioNaTarifaOficialComPeaje");
sql.append(" FROM tarifa_oficial tof ");
sql.append(" INNER JOIN marca m ON m.marca_id=tof.marca_id ");
sql.append(" LEFT join tarifa ta on");
sql.append(" ta.origen_id=tof.origen_id and");
sql.append(" ta.destino_id=tof.destino_id and ");
sql.append( "ta.RUTA_ID=tof.RUTA_ID and ");
sql.append(" ta.ORGAOCONCEDENTE_ID=tof.ORGAOCONCEDENTE_ID and");
sql.append(" ta.CLASESERVICIO_ID=tof.CLASESERVICIO_ID and");
sql.append(" ta.MARCA_ID=tof.MARCA_ID and ");
sql.append(" ta.tramo_id=tof.tramo_id ");
sql.append(" INNER join tarifa ta on ");
sql.append(" ( tof.MARCA_ID = ta.MARCA_ID ");
sql.append(" AND tof.CLASESERVICIO_ID = ta.CLASESERVICIO_ID ");
sql.append(" AND tof.TRAMO_ID = ta.TRAMO_ID ");
sql.append(" AND tof.MONEDA_ID = ta.MONEDA_ID ");
sql.append(" AND tof.RUTA_ID = ta.RUTA_ID ");
sql.append(" AND tof.ORGAOCONCEDENTE_ID = ta.ORGAOCONCEDENTE_ID ");
sql.append(" AND tof.ACTIVO = 1 ");
sql.append(" AND ta.ACTIVO = 1 ) ");
sql.append(" LEFT JOIN VIGENCIA_TARIFA vg on ta.VIGENCIATARIFA_ID=vg.VIGENCIATARIFA_ID");
sql.append(" and vg.FECINICIOVIGENCIA<= TO_DATE(:dataInicial,'DD/MM/YYYY hh24:mi') ");
sql.append(" and vg.FECFINVIGENCIA>= TO_DATE(:dataFinal,'DD/MM/YYYY hh24:mi')");
@ -557,6 +559,13 @@ public class TarifaOficialHibernateDAO extends GenericHibernateDAO<TarifaOficial
sql.append(" AND p.DESTINO_ID = tof.DESTINO_ID");
sql.append(" AND p.activo = 1");
sql.append(" AND m.empresa_id=:empresaId ");
sql.append(" AND m.activo = 1 ");
sql.append(" AND ta.ORIGEN_ID = tof.ORIGEN_ID ");
sql.append(" AND ta.DESTINO_ID = tof.DESTINO_ID ");
sql.append(" AND p.ORIGEN_ID = ta.ORIGEN_ID ");
sql.append(" AND p.DESTINO_ID = ta.DESTINO_ID ");
sql.append(" AND p.ruta_id= ta.ruta_id ");
sql.append(" AND p.ORGAOCONCEDENTE_ID = ta.ORGAOCONCEDENTE_ID ");
sql.append(" group by ta.tarifa_id,tof.tarifaoficial_id,ta.tarifa_id,ta.COMPOSICAO_DO_PEAJE");
Query query = getSession().createSQLQuery(sql.toString());

View File

@ -276,9 +276,12 @@ public class SQLBuilderOracle implements SQLBuilder {
sb.append(" ORIGEN_ID, ");
sb.append(" DESTINO_ID ");
sb.append(" ) ");
sb.append(" select ");
sb.append(" WITH tarifacte AS ( ");
sb.append(" select DISTINCT ");
sb.append(" ");
sb.append(" TARIFA_OFICIAL_SEQ.NEXTVAL, ");
// >> SE ORGAO FOR DER-PR E SE O COEFICIENTE DA CLASSE NAO ESTA NULL
sb.append(" CASE R.ORGAOCONCEDENTE_ID WHEN " + DER_PR + " THEN CASE WHEN cl.COEFICIENTETARIFA IS NOT NULL THEN ");
sb.append(" trunc(((coalesce(ct1.coeficiente,0) + oc.coeficientetarifa / ((POWER(COALESCE(tc.kmcoeficiente1,0) + 350,0.27)*16160 )) ) * COALESCE(tc.kmcoeficiente1,0)) * cl.COEFICIENTETARIFA ");
@ -306,7 +309,7 @@ public class SQLBuilderOracle implements SQLBuilder {
} else {
sb.append(" 1, 2 ) ");
}
sb.append(" end , ");
sb.append(" end as precio, ");
//
// >> SE ORGAO FOR DER-PR E SE O COEFICIENTE DA CLASSE NAO ESTA NULL
sb.append(" CASE R.ORGAOCONCEDENTE_ID WHEN " + DER_PR + " THEN CASE WHEN cl.COEFICIENTETARIFA IS NOT NULL THEN ");
@ -335,26 +338,26 @@ public class SQLBuilderOracle implements SQLBuilder {
} else {
sb.append(" 1, 2 ) ");
}
sb.append(" end , ");
sb.append(" end as preciooriginal , ");
//
sb.append(" t.tramo_id, ");
sb.append(" mc.marca_id, ");
sb.append(" r.CLASESERVICIO_ID, ");
sb.append(" null, ");
sb.append(" null as precioredabierto, ");
sb.append(" m.moneda_id, ");
sb.append(" null, ");
sb.append(" 'A', ");
sb.append(" null, ");
sb.append(" null, ");
sb.append(" null, ");
sb.append(" null, ");
sb.append(" null as vigenciatarifa_id, ");
sb.append(" 'A' as statustarifa, ");
sb.append(" null as importetaxaembarque, ");
sb.append(" null as importepedagio, ");
sb.append(" null as importeoutros, ");
sb.append(" null as importeseguro, ");
sb.append(" oc.orgaoconcedente_id, ");
sb.append(" r.ruta_id, ");
sb.append(" 1, ");
sb.append(" ").append(DBUtil.getInstance().dbSysdate()).append(", ");
sb.append(" ").append(usuarioId).append(", ");
sb.append(" po.parada_id, ");
sb.append(" pd.parada_id ");
sb.append(" 1 as activo, ");
sb.append(" ").append(DBUtil.getInstance().dbSysdate()).append(" as fecmodif, ");
sb.append(" ").append(usuarioId).append(" as usuario_id, ");
sb.append(" po.parada_id as origen_id, ");
sb.append(" pd.parada_id as destino_id");
sb.append(" ");
sb.append("from ");
sb.append(" ruta_combinacion rc ");
@ -418,6 +421,34 @@ public class SQLBuilderOracle implements SQLBuilder {
sb.append(" and p.casetapeaje_id in ( " + StringUtils.join(listCasetaPeaje,",") + ") ");
}
sb.append(" ) ");
sb.append(" SELECT ");
sb.append(" TARIFA_OFICIAL_SEQ.NEXTVAL, ");
sb.append(" PRECIO, ");
sb.append(" PRECIOORIGINAL, ");
sb.append(" TRAMO_ID, ");
sb.append(" MARCA_ID, ");
sb.append(" CLASESERVICIO_ID, ");
sb.append(" PRECIOREDABIERTO, ");
sb.append(" MONEDA_ID, ");
sb.append(" VIGENCIATARIFA_ID, ");
sb.append(" STATUSTARIFA, ");
sb.append(" IMPORTETAXAEMBARQUE, ");
sb.append(" IMPORTEPEDAGIO, ");
sb.append(" IMPORTEOUTROS, ");
sb.append(" IMPORTESEGURO, ");
sb.append(" ORGAOCONCEDENTE_ID, ");
sb.append(" RUTA_ID, ");
sb.append(" ACTIVO, ");
sb.append(" FECMODIF, ");
sb.append(" USUARIO_ID, ");
sb.append(" ORIGEN_ID, ");
sb.append(" DESTINO_ID ");
sb.append(" FROM tarifacte ");
return sb.toString();
}