bug#al-2680

PRICING CONEXÃO - Commit melhoria Desconto
dev:
qua:
master
valdir.cordeiro 2023-05-12 19:00:06 -03:00
parent b0e9412daf
commit c709069a22
12 changed files with 98 additions and 7 deletions

View File

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

View File

@ -6,4 +6,6 @@ import com.rjconsultores.ventaboletos.entidad.ConexionDescuento;
public interface ConexionDescuentoDAO extends GenericDAO<ConexionDescuento, Long> { public interface ConexionDescuentoDAO extends GenericDAO<ConexionDescuento, Long> {
public List<ConexionDescuento> bucarPorConexion(Long conexionId); public List<ConexionDescuento> bucarPorConexion(Long conexionId);
public List<ConexionDescuento> bucarPorConexionInativos(Long conexionId);
} }

View File

@ -30,4 +30,13 @@ implements ConexionDescuentoDAO {
return c.list(); return c.list();
} }
@Override
@SuppressWarnings("unchecked")
public List<ConexionDescuento> bucarPorConexionInativos(Long conexionId) {
Criteria c = getSession().createCriteria(getPersistentClass());
c.add(Restrictions.eq("conexion.conexionId", conexionId));
c.add(Restrictions.eq("activo", false));
return c.list();
}
} }

View File

@ -164,7 +164,7 @@ public class ConexionRutaConfHibernateDAO extends GenericHibernateDAO<ConexionRu
.append("oriT.parada_id paradaIdOriT, oriT.cveparada cveparadaOriT, oriT.descparada descparadaOriT, ") .append("oriT.parada_id paradaIdOriT, oriT.cveparada cveparadaOriT, oriT.descparada descparadaOriT, ")
.append("desT.parada_id paradaIdDesT, desT.cveparada cveparadaDesT, desT.descparada descparadaDesT, ") .append("desT.parada_id paradaIdDesT, desT.cveparada cveparadaDesT, desT.descparada descparadaDesT, ")
.append("co.numgrupo, co.numsecuencia, ctr.ruta_origen_id rutaOrigenId, ctr.ruta_destino_id rutaDestinoId, ") .append("co.numgrupo, co.numsecuencia, ctr.ruta_origen_id rutaOrigenId, ctr.ruta_destino_id rutaDestinoId, ")
.append("ctr.ruta_destinoc_id rutaDestinoCId ") .append("ctr.ruta_destinoc_id rutaDestinoCId, coctrl.conexionctrl_id, coctrl.indPricing ")
.append("from conexion_ruta_tramo_ctrl ctrl ") .append("from conexion_ruta_tramo_ctrl ctrl ")
.append("join ruta r on r.ruta_id = ctrl.ruta_id ") .append("join ruta r on r.ruta_id = ctrl.ruta_id ")
.append("join conexion_ruta_ctrl ctr on ctr.conexionrutactrl_id = ctrl.conexionrutactrl_id ") .append("join conexion_ruta_ctrl ctr on ctr.conexionrutactrl_id = ctrl.conexionrutactrl_id ")
@ -207,14 +207,16 @@ public class ConexionRutaConfHibernateDAO extends GenericHibernateDAO<ConexionRu
rutaDestinoCId = Integer.valueOf(tupla[20].toString()); rutaDestinoCId = Integer.valueOf(tupla[20].toString());
} }
ConexionCtrlVO conexionCtrl = recuperarConexionCtrlVO(listConexionCtrlVO, listConexionCtrl, paradaOrigemTrecho.getParadaId(), paradaDestinoTrecho.getParadaId()); Long conexionctrlId = Long.valueOf(tupla[21].toString());
Boolean indPricing = tupla[22] == null ? false : Integer.valueOf(tupla[22].toString()) == 1;
ConexionCtrlVO conexionCtrl = recuperarConexionCtrlVO(listConexionCtrlVO, listConexionCtrl, paradaOrigemTrecho.getParadaId(), paradaDestinoTrecho.getParadaId(), conexionctrlId, indPricing);
ConexionRutaCtrlVO conexionRutaCtrl = new ConexionRutaCtrlVO(rutaOrigemId, rutaDestinoId, rutaDestinoCId); ConexionRutaCtrlVO conexionRutaCtrl = new ConexionRutaCtrlVO(rutaOrigemId, rutaDestinoId, rutaDestinoCId);
ParadaVOConexionRuta trecho = new ParadaVOConexionRuta(grupo, paradaOrigem, paradaDestino, rutaId, numRuta, secuencia, true, paradaOrigemTrecho, paradaDestinoTrecho, conexionCtrl, conexionRutaCtrl, sentido); ParadaVOConexionRuta trecho = new ParadaVOConexionRuta(grupo, paradaOrigem, paradaDestino, rutaId, numRuta, secuencia, true, paradaOrigemTrecho, paradaDestinoTrecho, conexionCtrl, conexionRutaCtrl, sentido);
trecho.setConexionRutaTramoId(conexionRutaTramoId); trecho.setConexionRutaTramoId(conexionRutaTramoId);
localidadesCombinadas.add(trecho); localidadesCombinadas.add(trecho);
} }
retorno.setListConexionCtrl(listConexionCtrl); retorno.setListConexionCtrl(listConexionCtrl);
@ -225,7 +227,7 @@ public class ConexionRutaConfHibernateDAO extends GenericHibernateDAO<ConexionRu
return retorno; return retorno;
} }
private ConexionCtrlVO recuperarConexionCtrlVO(List<ConexionCtrlVO> listConexionCtrlVO, List<ConexionCtrl> listConexionCtrl, Integer origemConexaoCtrl, Integer destinoConexaoCtrl) { private ConexionCtrlVO recuperarConexionCtrlVO(List<ConexionCtrlVO> listConexionCtrlVO, List<ConexionCtrl> listConexionCtrl, Integer origemConexaoCtrl, Integer destinoConexaoCtrl, Long conexionctrlId, Boolean indPricing) {
for (ConexionCtrlVO conexionCtrlTemp : listConexionCtrlVO) { for (ConexionCtrlVO conexionCtrlTemp : listConexionCtrlVO) {
if(conexionCtrlTemp.isOrigemDestinoIgual(origemConexaoCtrl, destinoConexaoCtrl)) { if(conexionCtrlTemp.isOrigemDestinoIgual(origemConexaoCtrl, destinoConexaoCtrl)) {
return conexionCtrlTemp; return conexionCtrlTemp;
@ -233,8 +235,14 @@ public class ConexionRutaConfHibernateDAO extends GenericHibernateDAO<ConexionRu
} }
ConexionCtrlVO conexionCtrlVO = new ConexionCtrlVO(origemConexaoCtrl, destinoConexaoCtrl); ConexionCtrlVO conexionCtrlVO = new ConexionCtrlVO(origemConexaoCtrl, destinoConexaoCtrl);
conexionCtrlVO.setConexionctrlId(conexionctrlId);
conexionCtrlVO.setIndPricing(indPricing);
listConexionCtrlVO.add(conexionCtrlVO); listConexionCtrlVO.add(conexionCtrlVO);
listConexionCtrl.add(new ConexionCtrl(origemConexaoCtrl, destinoConexaoCtrl, null));
ConexionCtrl conexaoCtrl = new ConexionCtrl(origemConexaoCtrl, destinoConexaoCtrl, null);
conexaoCtrl.setConexionctrlId(conexionctrlId);
conexaoCtrl.setIndPricing(indPricing);
listConexionCtrl.add(conexaoCtrl);
return conexionCtrlVO; return conexionCtrlVO;
} }

View File

@ -43,6 +43,9 @@ public class ConexionCtrl implements Serializable {
@Column(name = "DESTINO_ID") @Column(name = "DESTINO_ID")
private Integer destinoId; private Integer destinoId;
@Column(name = "INDPRICING")
private Boolean indPricing;
@Transient @Transient
private Integer grupos; private Integer grupos;
@ -144,4 +147,11 @@ public class ConexionCtrl implements Serializable {
return getOrigenId().equals(origemConexaoCtrl) && getDestinoId().equals(destinoConexaoCtrl); return getOrigenId().equals(origemConexaoCtrl) && getDestinoId().equals(destinoConexaoCtrl);
} }
public Boolean getIndPricing() {
return indPricing == null ? false : indPricing;
}
public void setIndPricing(Boolean indPricing) {
this.indPricing = indPricing;
}
} }

View File

@ -1,6 +1,7 @@
package com.rjconsultores.ventaboletos.entidad; package com.rjconsultores.ventaboletos.entidad;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
import javax.persistence.Basic; import javax.persistence.Basic;
@ -42,6 +43,9 @@ public class ConexionRutaConf implements Serializable {
@Column(name = "TIEMPOMAX") @Column(name = "TIEMPOMAX")
private Integer tiempoMax; private Integer tiempoMax;
@Column(name = "DESCUENTO")
private BigDecimal descuento;
public ConexionRutaConf() { public ConexionRutaConf() {
super(); super();
} }
@ -133,4 +137,11 @@ public class ConexionRutaConf implements Serializable {
return true; return true;
} }
public BigDecimal getDescuento() {
return descuento;
}
public void setDescuento(BigDecimal descuento) {
this.descuento = descuento;
}
} }

View File

@ -64,6 +64,9 @@ public class ConexionRutaTramoCtrl implements Serializable {
@Transient @Transient
private Integer grupo; private Integer grupo;
@Transient
private Boolean indPricing;
public ConexionRutaTramoCtrl() { public ConexionRutaTramoCtrl() {
super(); super();
} }
@ -195,4 +198,11 @@ public class ConexionRutaTramoCtrl implements Serializable {
this.ruta = ruta; this.ruta = ruta;
} }
public Boolean getIndPricing() {
return indPricing == null ? false : indPricing;
}
public void setIndPricing(Boolean indPricing) {
this.indPricing = indPricing;
}
} }

View File

@ -8,4 +8,6 @@ public interface ConexionCtrlService extends GenericService<ConexionCtrl, Long>
public List<ConexionCtrl> buscarConexionesCtrl(Integer origenId, Integer destinoId); public List<ConexionCtrl> buscarConexionesCtrl(Integer origenId, Integer destinoId);
public void suscribirTodos(List<ConexionCtrl> conexionCtrlList);
} }

View File

@ -13,4 +13,7 @@ public interface ConexionDescuentoService {
public void borrar(ConexionDescuento conexionDescuento); public void borrar(ConexionDescuento conexionDescuento);
public void suscribirTodos(List<ConexionDescuento> conexionesDescuentos); public void suscribirTodos(List<ConexionDescuento> conexionesDescuentos);
public List<ConexionDescuento> buscarPorConexionInativos(Conexion conexion);
} }

View File

@ -13,6 +13,7 @@ import com.rjconsultores.ventaboletos.dao.ConexionRutaTramoCtrlDAO;
import com.rjconsultores.ventaboletos.entidad.Conexion; import com.rjconsultores.ventaboletos.entidad.Conexion;
import com.rjconsultores.ventaboletos.entidad.ConexionConf; import com.rjconsultores.ventaboletos.entidad.ConexionConf;
import com.rjconsultores.ventaboletos.entidad.ConexionCtrl; import com.rjconsultores.ventaboletos.entidad.ConexionCtrl;
import com.rjconsultores.ventaboletos.entidad.ConexionDescuento;
import com.rjconsultores.ventaboletos.entidad.ConexionRutaCtrl; import com.rjconsultores.ventaboletos.entidad.ConexionRutaCtrl;
import com.rjconsultores.ventaboletos.entidad.ConexionRutaTramoCtrl; import com.rjconsultores.ventaboletos.entidad.ConexionRutaTramoCtrl;
import com.rjconsultores.ventaboletos.service.ConexionConfService; import com.rjconsultores.ventaboletos.service.ConexionConfService;
@ -108,4 +109,15 @@ public class ConexionCtrlServiceImpl implements ConexionCtrlService {
public List<ConexionCtrl> buscarConexionesCtrl(Integer origenId, Integer destinoId) { public List<ConexionCtrl> buscarConexionesCtrl(Integer origenId, Integer destinoId) {
return conexionCtrlDAO.buscarConexionesCtrl(origenId, destinoId); return conexionCtrlDAO.buscarConexionesCtrl(origenId, destinoId);
} }
@Override
@Transactional
public void suscribirTodos(List<ConexionCtrl> conexionCtrlList) {
for (ConexionCtrl conexionCtrl : conexionCtrlList) {
conexionCtrl.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
conexionCtrl.setFecmodif(Calendar.getInstance().getTime());
conexionCtrl.setActivo(true);
}
conexionCtrlDAO.suscribirTodos(conexionCtrlList);
}
} }

View File

@ -22,6 +22,11 @@ public class ConexionDescuentoServiceImpl implements ConexionDescuentoService {
return conexionDescuentoHDAO.bucarPorConexion(conexion.getConexionId()); return conexionDescuentoHDAO.bucarPorConexion(conexion.getConexionId());
} }
@Override
public List<ConexionDescuento> buscarPorConexionInativos(Conexion conexion) {
return conexionDescuentoHDAO.bucarPorConexionInativos(conexion.getConexionId());
}
@Override @Override
@Transactional @Transactional
public ConexionDescuento suscribir(ConexionDescuento conexionDescuento) { public ConexionDescuento suscribir(ConexionDescuento conexionDescuento) {

View File

@ -2,11 +2,14 @@ package com.rjconsultores.ventaboletos.vo.parada;
public class ConexionCtrlVO { public class ConexionCtrlVO {
private Long conexionctrlId;
private Integer origenId; private Integer origenId;
private Integer destinoId; private Integer destinoId;
private Integer grupo; private Integer grupo;
private boolean valida; private boolean valida;
private Boolean indPricing;
public ConexionCtrlVO(Integer origemConexaoCtrl, Integer destinoConexaoCtrl) { public ConexionCtrlVO(Integer origemConexaoCtrl, Integer destinoConexaoCtrl) {
this.grupo = 0; this.grupo = 0;
this.origenId = origemConexaoCtrl; this.origenId = origemConexaoCtrl;
@ -85,4 +88,20 @@ public class ConexionCtrlVO {
this.valida = valida; this.valida = valida;
} }
public Long getConexionctrlId() {
return conexionctrlId;
}
public void setConexionctrlId(Long conexionctrlId) {
this.conexionctrlId = conexionctrlId;
}
public Boolean getIndPricing() {
return indPricing == null ? false : indPricing;
}
public void setIndPricing(Boolean indPricing) {
this.indPricing = indPricing;
}
} }