fixes bug#AL-1549

qua:
dev:Wallace

git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@114797 d1611594-4594-4d17-8e1d-87c2c4800839
master
aristides 2022-10-17 17:57:09 +00:00
parent 366c6f5009
commit e3d964a647
6 changed files with 22 additions and 12 deletions

View File

@ -26,7 +26,7 @@ public interface TarifaOficialDAO extends GenericDAO<TarifaOficial, Integer> {
* @param orgaoConcedenteId TODO
* @return TODO
*/
public Integer gerarTarifaPorCoeficiente(Integer ruta, Integer usuarioId, OrgaoConcedente orgaoConcedente, List<Integer> idsEmpresas);
public Integer gerarTarifaPorCoeficiente(Integer ruta, Integer usuarioId, OrgaoConcedente orgaoConcedente, List<Integer> idsEmpresas,Integer[] lsCasetaPeaje);
public Integer gerarTarifaArtesp(Integer ruta, Integer usuarioId, Integer orgaoConcedenteId, List<Integer> idsEmpresas);

View File

@ -51,9 +51,9 @@ public class TarifaOficialHibernateDAO extends GenericHibernateDAO<TarifaOficial
}
@Override
public Integer gerarTarifaPorCoeficiente(Integer rutaId, Integer usuarioId, OrgaoConcedente orgaoConcedente, List<Integer> idsEmpresas) {
public Integer gerarTarifaPorCoeficiente(Integer rutaId, Integer usuarioId, OrgaoConcedente orgaoConcedente, List<Integer> idsEmpresas, Integer[] lsCasetaPeaje) {
String sql = sqlBuilder.getSQLGerarTarifaOficial(rutaId, usuarioId, orgaoConcedente, idsEmpresas);
String sql = sqlBuilder.getSQLGerarTarifaOficial(rutaId, usuarioId, orgaoConcedente, idsEmpresas,lsCasetaPeaje);
int qtd = getSession().createSQLQuery(sql).executeUpdate();

View File

@ -21,7 +21,7 @@ import com.rjconsultores.ventaboletos.entidad.OrgaoConcedente;
*/
public interface SQLBuilder {
public String getSQLGerarTarifaOficial(Integer codRuta, Integer usuarioId, OrgaoConcedente orgaoConcedente, List<Integer> idsEmpresas);
public String getSQLGerarTarifaOficial(Integer codRuta, Integer usuarioId, OrgaoConcedente orgaoConcedente, List<Integer> idsEmpresas, Integer[] listCasetaPeaje);
public String getSQLGerarTabelaZerada(Integer codRuta, Integer usuarioId, Integer orgaoConcedenteId, List<Integer> idsEmpresas, List<Integer> lsParadaId);

View File

@ -5,6 +5,8 @@ import java.util.Date;
import java.util.List;
import java.util.Map;
import org.apache.commons.lang.StringUtils;
import com.rjconsultores.ventaboletos.constantes.Constantes;
import com.rjconsultores.ventaboletos.constantes.TipoSeguro;
import com.rjconsultores.ventaboletos.dao.sqlbuilder.SQLBuilder;
@ -245,7 +247,7 @@ public class SQLBuilderOracle implements SQLBuilder {
@Override
public String getSQLGerarTarifaOficial(final Integer codRuta, final Integer usuarioId,
final OrgaoConcedente orgaoConcedente, final List<Integer> idsEmpresas) {
final OrgaoConcedente orgaoConcedente, final List<Integer> idsEmpresas,Integer[] listCasetaPeaje) {
StringBuilder sb = new StringBuilder();
sb.append(" INSERT ");
@ -374,8 +376,12 @@ public class SQLBuilderOracle implements SQLBuilder {
sb.append(" inner join estado e on e.estado_id = c.estado_id ");
sb.append(" inner join MARCA_CLASESERVICIO mc on ");
sb.append(" mc.CLASESERVICIO_ID = r.CLASESERVICIO_ID and ma.marca_id = mc.marca_id ");
if(null !=listCasetaPeaje) {
sb.append(" inner join peaje p on p.ruta_id=r.ruta_id and p.origen_id=po.parada_id and p.destino_id=pd.parada_id and p.orgaoconcedente_id =oc.orgaoconcedente_id ");
}
sb.append(" inner join CLASE_SERVICIO cl on cl.claseservicio_id = r.CLASESERVICIO_ID, ");
sb.append(" moneda m ");
sb.append(" ");
sb.append("where ");
sb.append(" rc.activo = 1 ");
@ -406,7 +412,11 @@ public class SQLBuilderOracle implements SQLBuilder {
sb.append(" oc.orgaoconcedente_id, r.ruta_id) ");
sb.append(" not in (select tao.tramo_id,tao.marca_id,tao.CLASESERVICIO_ID, ");
sb.append(" tao.moneda_id,tao.orgaoconcedente_id, tao.ruta_id ");
sb.append(" from tarifa_oficial tao where tao.activo = 1) ");
sb.append(" from tarifa_oficial tao where tao.activo = 1) ");
if(null !=listCasetaPeaje) {
sb.append(" and p.activo=1 ");
sb.append(" and p.casetapeaje_id in ( " + StringUtils.join(listCasetaPeaje,",") + ") ");
}
return sb.toString();
}

View File

@ -36,7 +36,7 @@ public interface TarifaOficialService {
* @param orgaoConcedenteId
* @return A quantidade de registros afetadas
*/
public Integer gerarTarifaPorCoeficiente(Integer rutaId, OrgaoConcedente orgaoConcedente, List<Integer> idsEmpresas);
public Integer gerarTarifaPorCoeficiente(Integer rutaId, OrgaoConcedente orgaoConcedente, List<Integer> idsEmpresas,Integer[] lsCasetaPeaje);
/**
@ -67,7 +67,7 @@ public interface TarifaOficialService {
* @param empresaId
* @throws BusinessException
*/
public void gerarAtualizarTarifa(List<Ruta> lsRuta, OrgaoConcedente orgaoConcedenteId, List<Empresa> lsEmpresaSelected) throws BusinessException;
public void gerarAtualizarTarifa(List<Ruta> lsRuta, OrgaoConcedente orgaoConcedenteId, List<Empresa> lsEmpresaSelected, Integer[] lsCasetaPeaje) throws BusinessException;
/**
* Copia a tarifa oficial para a tabela de tarifa de acordo com a vigencia especificada.<br/>

View File

@ -63,8 +63,8 @@ public class TarifaOficialServiceImpl implements TarifaOficialService {
@Override
@Transactional
public Integer gerarTarifaPorCoeficiente(Integer rutaId, OrgaoConcedente orgaoConcedente, List<Integer> idsEmpresas) {
return tarifaOficialDAO.gerarTarifaPorCoeficiente(rutaId, UsuarioLogado.getUsuarioLogado().getUsuarioId(), orgaoConcedente, idsEmpresas);
public Integer gerarTarifaPorCoeficiente(Integer rutaId, OrgaoConcedente orgaoConcedente, List<Integer> idsEmpresas,Integer[] lsCasetaPeaje) {
return tarifaOficialDAO.gerarTarifaPorCoeficiente(rutaId, UsuarioLogado.getUsuarioLogado().getUsuarioId(), orgaoConcedente, idsEmpresas,lsCasetaPeaje );
}
@Override
@ -82,7 +82,7 @@ public class TarifaOficialServiceImpl implements TarifaOficialService {
@Override
@Transactional(rollbackFor = BusinessException.class)
public void gerarAtualizarTarifa(List<Ruta> lsRuta, OrgaoConcedente orgaoConcedente, List<Empresa> lsEmpresaSelected) throws BusinessException {
public void gerarAtualizarTarifa(List<Ruta> lsRuta, OrgaoConcedente orgaoConcedente, List<Empresa> lsEmpresaSelected, Integer[] lsCasetaPeaje) throws BusinessException {
// Limpando a tabela de TARIFA_OFICIAL
tarifaOficialDAO.limparTarifasOficiais(lsEmpresaSelected);
@ -109,7 +109,7 @@ public class TarifaOficialServiceImpl implements TarifaOficialService {
// Gerando as tarifas pelo coeficiente
if (orgaoConcedente == null ||
(orgaoConcedente.getOrgaoConcedenteId() == null || orgaoConcedente.getOrgaoConcedenteId() != OrgaoConcedente.CODIGO_ARTESP)) {
Integer qtdTarifaCoeficiente = gerarTarifaPorCoeficiente(rutaId, orgaoConcedente, idsEmpresas);
Integer qtdTarifaCoeficiente = gerarTarifaPorCoeficiente(rutaId, orgaoConcedente, idsEmpresas,lsCasetaPeaje);
log.info("qtdTarifaCoeficiente=" + qtdTarifaCoeficiente);
}