Cadastro de convenio transportadora bug#AL-4246

master
Fabio 2024-07-11 14:47:52 -03:00
parent a452f55c7c
commit fd57cfbb29
9 changed files with 388 additions and 1 deletions

View File

@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>br.com.rjconsultores</groupId>
<artifactId>ModelWeb</artifactId>
<version>1.77.2</version>
<version>1.77.3</version>
<distributionManagement>
<repository>

View File

@ -0,0 +1,11 @@
package com.rjconsultores.ventaboletos.dao;
import com.rjconsultores.ventaboletos.entidad.ConvenioTransportadora;
public interface ConvenioTransportadoraDAO extends GenericDAO<ConvenioTransportadora, Long> {
ConvenioTransportadora buscarPelaTransportadoraId(Long transportadoraId);
public boolean existe(ConvenioTransportadora convenio);
}

View File

@ -0,0 +1,52 @@
package com.rjconsultores.ventaboletos.dao.hibernate;
import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.SessionFactory;
import org.hibernate.criterion.Restrictions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Repository;
import com.rjconsultores.ventaboletos.dao.ConvenioTransportadoraDAO;
import com.rjconsultores.ventaboletos.entidad.ConvenioTransportadora;
@Repository("convenioTransportadoraDAO")
public class ConvenioTransportadoraHibernateDAO extends GenericHibernateDAO<ConvenioTransportadora, Long> implements ConvenioTransportadoraDAO {
@Autowired
public ConvenioTransportadoraHibernateDAO(@Qualifier("sessionFactory") SessionFactory factory) {
setSessionFactory(factory);
}
@Override
public List<ConvenioTransportadora> obtenerTodos() {
Criteria c = getSession().createCriteria(getPersistentClass());
c.add(Restrictions.eq("activo", Boolean.TRUE));
return castList(ConvenioTransportadora.class, c.list()) ;
}
@Override
public ConvenioTransportadora buscarPelaTransportadoraId(Long transportadoraId) {
Criteria c = getSession().createCriteria(getPersistentClass());
c.add(Restrictions.eq("transportadoraId", transportadoraId));
c.add(Restrictions.eq("activo", Boolean.TRUE));
return (ConvenioTransportadora)c.uniqueResult();
}
@Override
public boolean existe(ConvenioTransportadora convenio) {
Criteria c = getSession().createCriteria(getPersistentClass());
c.add(Restrictions.eq("transportadoraId", convenio.getTransportadoraId()));
c.add(Restrictions.eq("numConvenio", convenio.getNumConvenio()));
c.add(Restrictions.eq("dataInicial", convenio.getDataInicial()));
c.add(Restrictions.eq("dataFinal", convenio.getDataFinal()));
c.add(Restrictions.eq("activo", Boolean.TRUE));
return c.uniqueResult()!=null;
}
}

View File

@ -0,0 +1,62 @@
package com.rjconsultores.ventaboletos.entidad;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@Getter
@Setter
@NoArgsConstructor
@Entity
@Table(name = "CAIXA_CONTRATO")
@SequenceGenerator(name = "CAIXA_CONTRATO_SEQ", sequenceName = "CAIXA_CONTRATO_SEQ", allocationSize = 1)
public class CaixaContrato {
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "CAIXA_CONTRATO_SEQ")
@Column(name = "CAIXACONTRATO_ID")
private Long id;
@Column(name = "CONTRATO_ID")
private Long contratoId;
@Column(name = "DATA_LANCAMENTO")
@Temporal(TemporalType.TIMESTAMP)
private Date dataLancamento;
@Column(name = "TIPO_LANCAMENTO_ID")
private Long tipoLancamentoId;
@Column(name = "VALOR")
private BigDecimal valor;
@Column(name = "CAJA_ID")
private Long cajaId;
@Column(name = "EVENTOEXTRA_ID")
private Long eventoExtraId;
@Column(name = "USUARIO_ID")
private Integer usuarioId;
@Column(name = "ACTIVO")
private boolean activo;
@Column(name = "FECMODIF")
@Temporal(TemporalType.TIMESTAMP)
private Date fecModif;
}

View File

@ -0,0 +1,68 @@
package com.rjconsultores.ventaboletos.entidad;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@Getter
@Setter
@NoArgsConstructor
@Entity
@SequenceGenerator(name = "CONVENIO_TRANSPORTADORA_SEQ", sequenceName = "CONVENIO_TRANSPORTADORA_SEQ", allocationSize = 1)
@Table(name = "CONVENIO_TRANSPORTADORA")
public class ConvenioTransportadora {
public ConvenioTransportadora(Long transportadoraId) {
this.transportadoraId = transportadoraId;
}
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "CONVENIO_TRANSPORTADORA_SEQ")
@Column(name = "CONVENIOTRANSPORTADORA_ID")
private Long convenioTransportadoraId;
@Column(name = "TRANSPORTADORA_ID")
private Long transportadoraId;
@Column(name = "NOME_CONVENIO")
private String nomeConvenio;
@Column(name = "NUMCONVENIO")
private String numConvenio;
@Column(name = "VALOR")
private BigDecimal valor;
@Column(name = "TIPO_CONVENIO")
private Integer tipoConvenio;
@Column(name = "DATA_INICIAL")
private Date dataInicial;
@Column(name = "DATA_FINAL")
private Date dataFinal;
@Column(name = "USUARIO_ID")
private Integer usuarioId;
@Column(name = "ACTIVO")
private boolean activo;
@Column(name = "FECMODIF")
@Temporal(TemporalType.TIMESTAMP)
private Date fecModif;
}

View File

@ -0,0 +1,56 @@
package com.rjconsultores.ventaboletos.entidad;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToOne;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
@Entity
@Table(name = "TARIFA_CONVENIO_TRANSP")
public class TarifaConvenioTransport implements Serializable {
private static final long serialVersionUID = 4117896818436639147L;
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "TARIFA_GRUPO_CONTRATO_SEQ")
@SequenceGenerator(name = "TARIFA_GRUPO_CONTRATO_SEQ", sequenceName = "TARIFA_GRUPO_CONTRATO_SEQ", allocationSize = 1)
@Column(name = "TARIFACONVENIO_ID")
private Long tarifaConvenioId;
@OneToOne
@JoinColumn(name = "CONVENIOTRANSPORTADORA_ID", referencedColumnName = "CONVENIOTRANSPORTADORA_ID", insertable = false, updatable = false)
private ConvenioTransportadora convenioTransportadora;
@OneToOne
@JoinColumn(name = "ORIGEN_ID", referencedColumnName = "PARADA_ID", insertable = false, updatable = false)
private Parada origem;
@OneToOne
@JoinColumn(name = "DESTINO_ID", referencedColumnName = "PARADA_ID", insertable = false, updatable = false)
private Parada destino;
@Column(name = "TARIFA")
private BigDecimal tarifa;
@Column(name = "USUARIO_ID")
private Integer usuarioId;
@Column(name = "ACTIVO")
private boolean activo;
@Column(name = "FECMODIF")
@Temporal(TemporalType.DATE)
private Date fecModif;
}

View File

@ -0,0 +1,48 @@
package com.rjconsultores.ventaboletos.entidad;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@Getter
@Setter
@NoArgsConstructor
@Entity
@Table(name = "TIPO_LANCAMENTO_CAIXA")
@SequenceGenerator(name = "TIPO_LANCAMENTO_CAIXA_SEQ", sequenceName = "TIPO_LANCAMENTO_CAIXA_SEQ", allocationSize = 1)
public class TipoLancamentoCaixa {
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "TIPO_LANCAMENTO_CAIXA_SEQ")
@Column(name = "TIPO_LANCAMENTO_ID")
private Long tipoLancamentoId;
@Column(name = "NOME_LANCAMENTO")
private String nomeLancamento;
@Column(name = "IND_ACRESCIMO")
private boolean indAcrescimo;
@Column(name = "USUARIO_ID")
private Integer usuarioId;
@Column(name = "ACTIVO")
private boolean activo;
@Column(name = "FECMODIF")
@Temporal(TemporalType.TIMESTAMP)
private Date fecModif;
}

View File

@ -0,0 +1,14 @@
package com.rjconsultores.ventaboletos.service;
import com.rjconsultores.ventaboletos.entidad.ConvenioTransportadora;
import com.rjconsultores.ventaboletos.exception.BusinessException;
public interface ConvenioTransportadoraService extends GenericService<ConvenioTransportadora, Long> {
ConvenioTransportadora buscarPelaTransportadoraId(Long transportadoraId);
public ConvenioTransportadora suscribirActualizar(ConvenioTransportadora convenio) throws BusinessException;
public boolean existe(ConvenioTransportadora convenio);
}

View File

@ -0,0 +1,76 @@
package com.rjconsultores.ventaboletos.service.impl;
import java.util.Calendar;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.rjconsultores.ventaboletos.dao.ConvenioTransportadoraDAO;
import com.rjconsultores.ventaboletos.entidad.ConvenioTransportadora;
import com.rjconsultores.ventaboletos.exception.BusinessException;
import com.rjconsultores.ventaboletos.service.ConvenioTransportadoraService;
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
@Service("convenioTransportadoraService")
public class ConvenioTransportadoraServiceImpl implements ConvenioTransportadoraService {
@Autowired
private ConvenioTransportadoraDAO convenioTransportadoraDAO;
public List<ConvenioTransportadora> obtenerTodos() {
return convenioTransportadoraDAO.obtenerTodos();
}
public ConvenioTransportadora obtenerID(Long id) {
return convenioTransportadoraDAO.obtenerID(id);
}
@Transactional
public ConvenioTransportadora suscribir(ConvenioTransportadora entidad) {
entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
entidad.setFecModif(Calendar.getInstance().getTime());
entidad.setActivo(Boolean.TRUE);
return convenioTransportadoraDAO.suscribir(entidad);
}
@Transactional
public ConvenioTransportadora suscribirActualizar(ConvenioTransportadora entidad) throws BusinessException {
entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
entidad.setFecModif(Calendar.getInstance().getTime());
entidad.setActivo(Boolean.TRUE);
if (entidad.getConvenioTransportadoraId() == null){
return convenioTransportadoraDAO.suscribir(entidad);
}else{
return convenioTransportadoraDAO.actualizacion(entidad);
}
}
@Transactional
public ConvenioTransportadora actualizacion(ConvenioTransportadora entidad) {
return convenioTransportadoraDAO.actualizacion(entidad);
}
@Transactional
public void borrar(ConvenioTransportadora entidad) {
entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
entidad.setFecModif(Calendar.getInstance().getTime());
entidad.setActivo(Boolean.FALSE);
convenioTransportadoraDAO.borrar(entidad);
}
@Override
public ConvenioTransportadora buscarPelaTransportadoraId(Long transportadoraId) {
return convenioTransportadoraDAO.buscarPelaTransportadoraId(transportadoraId) ;
}
@Override
public boolean existe(ConvenioTransportadora convenio) {
return convenioTransportadoraDAO.existe(convenio);
}
}