fixed bug #6383
git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@45168 d1611594-4594-4d17-8e1d-87c2c4800839master
parent
1d63d58098
commit
6a1596b839
|
@ -15,6 +15,9 @@ public interface TarifaOficialDAO extends GenericDAO<TarifaOficial, Integer>{
|
|||
*/
|
||||
public Integer gerarTarifaPorCoeficiente(Integer ruta, Integer usuarioId, Integer orgaoConcedenteId, Integer empresaId);
|
||||
|
||||
|
||||
public Integer gerarTabelaZerada(Integer ruta, Integer usuarioId, Integer orgaoConcedenteId, Integer empresaId);
|
||||
|
||||
/**
|
||||
* See {@link TarifaOficialService#atualizarTarifaPorCoeficiente(Integer, Integer)}
|
||||
* @param rutaId
|
||||
|
|
|
@ -39,6 +39,16 @@ public class TarifaOficialHibernateDAO extends GenericHibernateDAO<TarifaOficial
|
|||
return qtd;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer gerarTabelaZerada(Integer rutaId, Integer usuarioId, Integer orgaoConcedenteId, Integer emrpesaId) {
|
||||
|
||||
String sql = sqlBuilder.getSQLGerarTabelaZerada(rutaId, usuarioId, orgaoConcedenteId, emrpesaId);
|
||||
|
||||
int qtd = getSession().createSQLQuery(sql).executeUpdate();
|
||||
|
||||
return qtd;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer atualizarTarifaCoeficiente(Integer rutaId, Integer usuarioId, Integer orgaoConcedenteId) {
|
||||
|
||||
|
|
|
@ -20,6 +20,8 @@ public interface SQLBuilder {
|
|||
|
||||
public String getSQLGerarTarifaOficial(Integer codRuta, Integer usuarioId, Integer orgaoConcedenteId, Integer empresaId);
|
||||
|
||||
public String getSQLGerarTabelaZerada(Integer codRuta, Integer usuarioId, Integer orgaoConcedenteId, Integer empresaId);
|
||||
|
||||
public String getSQLAtualizarTarifaOficial(Integer rutaId, Integer usuarioId, Integer orgaoConcedenteId);
|
||||
|
||||
public String getAtualizarTaxaEmbarquePorKmParada(Integer rutaId, Integer usuarioId, Integer orgaoConcedenteId);
|
||||
|
|
|
@ -12,6 +12,114 @@ public class SQLBuilderOracle implements SQLBuilder {
|
|||
private static final String RED_PAGO_EMISSOR_TARJETA = "RDP";
|
||||
private static final String RED_PAGO_FORMA_PAGO = "CR";
|
||||
|
||||
@Override
|
||||
public String getSQLGerarTabelaZerada(final Integer codRuta, final Integer usuarioId,
|
||||
final Integer orgaoConcedenteId, final Integer empresaId)
|
||||
{
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append("INSERT ");
|
||||
sb.append("INTO ");
|
||||
sb.append(" TARIFA_OFICIAL ");
|
||||
sb.append(" ( ");
|
||||
sb.append(" TARIFAOFICIAL_ID, ");
|
||||
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(" ) ");
|
||||
sb.append(" select ");
|
||||
sb.append(" ");
|
||||
sb.append(" TARIFA_OFICIAL_SEQ.NEXTVAL, ");
|
||||
sb.append(" 0, ");
|
||||
sb.append(" 0, ");
|
||||
sb.append(" t.tramo_id, ");
|
||||
sb.append(" mc.marca_id, ");
|
||||
sb.append(" r.CLASESERVICIO_ID, ");
|
||||
sb.append(" null, ");
|
||||
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(" 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(" ");
|
||||
sb.append("from ");
|
||||
sb.append(" ruta_combinacion rc ");
|
||||
sb.append(" inner join ruta r on r.ruta_id = rc.ruta_id ");
|
||||
sb.append(" inner join ruta_empresa re on r.ruta_id = re.ruta_id ");
|
||||
sb.append(" inner join marca ma on ma.empresa_id = re.empresa_id ");
|
||||
sb.append(" inner join orgao_tramo tc on tc.tramo_id = rc.tramo_id ");
|
||||
sb.append(" and tc.CLASESERVICIO_ID = r.CLASESERVICIO_ID and tc.activo =1 ");
|
||||
sb.append(" inner join orgao_concedente oc on ");
|
||||
sb.append(" oc.orgaoconcedente_id = tc.orgaoconcedente_id ");
|
||||
sb.append(" and oc.orgaoconcedente_id =r.orgaoconcedente_id ");
|
||||
sb.append(" inner join coeficiente_tarifa ct1 on ct1.coeficientetarifa_id = tc.coeficientetarifa1_id ");
|
||||
sb.append(" left join coeficiente_tarifa ct2 on ct2.coeficientetarifa_id = tc.coeficientetarifa2_id ");
|
||||
sb.append(" left join coeficiente_tarifa ct3 on ct3.coeficientetarifa_id = tc.coeficientetarifa3_id ");
|
||||
sb.append(" inner join tramo t on t.tramo_id = rc.tramo_id ");
|
||||
sb.append(" inner join parada po on po.parada_id = t.origen_id ");
|
||||
sb.append(" inner join parada pd on pd.parada_id = t.destino_id ");
|
||||
sb.append(" inner join ciudad c on c.ciudad_id = po.ciudad_id ");
|
||||
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, ");
|
||||
sb.append(" moneda m ");
|
||||
sb.append(" ");
|
||||
sb.append("where ");
|
||||
sb.append(" rc.activo = 1 ");
|
||||
if (codRuta != null) {
|
||||
sb.append(" and r.ruta_id = ").append(codRuta);
|
||||
}
|
||||
sb.append(" and r.activo = 1 ");
|
||||
sb.append(" and tc.activo = 1 ");
|
||||
sb.append(" and mc.marca_id <> -1 ");
|
||||
sb.append(" and mc.activo = 1 ");
|
||||
sb.append(" and re.activo = 1 ");
|
||||
if (empresaId != null) {
|
||||
sb.append(" and re.empresa_id = ").append(empresaId);
|
||||
}
|
||||
sb.append(" and m.moneda_id = 1 ");
|
||||
if (orgaoConcedenteId != null) {
|
||||
sb.append(" and oc.orgaoconcedente_id = ").append(orgaoConcedenteId);
|
||||
}
|
||||
sb.append(" and ");
|
||||
sb.append(" (t.tramo_id, ");
|
||||
sb.append(" mc.marca_id, ");
|
||||
sb.append(" r.CLASESERVICIO_ID, ");
|
||||
sb.append(" m.moneda_id, ");
|
||||
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) ");
|
||||
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getSQLGerarTarifaOficial(final Integer codRuta, final Integer usuarioId,
|
||||
final Integer orgaoConcedenteId, final Integer empresaId) {
|
||||
|
|
|
@ -27,6 +27,7 @@ public interface TarifaOficialService {
|
|||
*/
|
||||
public Integer gerarTarifaPorCoeficiente(Integer rutaId, Integer orgaoConcedenteId, Integer empresaId);
|
||||
|
||||
|
||||
/**
|
||||
* Atualiza as tarifas de acordo o cálculo do coeficiente tarifário.<br/>
|
||||
*
|
||||
|
@ -121,4 +122,8 @@ public interface TarifaOficialService {
|
|||
|
||||
public void borrar(TarifaOficial tarifaOficial);
|
||||
|
||||
public void gerarAtualizarTabelaZerada(Integer rudaId, Integer orgaoConcedenteId, Integer empresaId) throws BusinessException ;
|
||||
|
||||
public Integer gerarTabelaZerada(Integer rutaId, Integer orgaoConcedenteId, Integer empresaId);
|
||||
|
||||
}
|
||||
|
|
|
@ -35,6 +35,12 @@ public class TarifaOficialServiceImpl implements TarifaOficialService {
|
|||
return tarifaOficialDAO.gerarTarifaPorCoeficiente(rutaId, UsuarioLogado.getUsuarioLogado().getUsuarioId(), orgaoConcedenteId, empresaId);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public Integer gerarTabelaZerada(Integer rutaId, Integer orgaoConcedenteId, Integer empresaId) {
|
||||
return tarifaOficialDAO.gerarTabelaZerada(rutaId, UsuarioLogado.getUsuarioLogado().getUsuarioId(), orgaoConcedenteId, empresaId);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public Integer atualizarTarifaPorCoeficiente(Integer rutaId, Integer orgaoConcedenteId) {
|
||||
|
@ -57,6 +63,17 @@ public class TarifaOficialServiceImpl implements TarifaOficialService {
|
|||
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = BusinessException.class)
|
||||
public void gerarAtualizarTabelaZerada(Integer rudaId, Integer orgaoConcedenteId, Integer empresaId) throws BusinessException {
|
||||
// Limpando a tabela de TARIFA_OFICIAL
|
||||
tarifaOficialDAO.limparTarifasOficiais();
|
||||
//Gerando as tarifas
|
||||
//gerarTarifaPorCoeficiente(rudaId, orgaoConcedenteId, empresaId);
|
||||
gerarTabelaZerada(rudaId, orgaoConcedenteId, empresaId);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public void atualizarTaxaEmbarque(Integer rutaId, Integer orgaoConcedenteId) {
|
||||
|
|
Loading…
Reference in New Issue