From cbaa7aa275c5f8579de739b46d8e8f6813dc705e Mon Sep 17 00:00:00 2001 From: leonardo Date: Wed, 17 Dec 2014 20:20:36 +0000 Subject: [PATCH] fixed bug #5928 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@40489 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../ventaboletos/dao/EmpresaDAO.java | 2 + .../ventaboletos/dao/OrgaoCancelacionDAO.java | 15 +++ .../dao/hibernate/EmpresaHibernateDAO.java | 12 +++ .../OrgaoCancelacionHibernateDAO.java | 56 +++++++++++ .../entidad/OrgaoCancelacion.java | 95 +++++++++++++++++++ .../ventaboletos/entidad/OrgaoConcedente.java | 18 ++++ .../ventaboletos/service/EmpresaService.java | 2 + .../service/OrgaoCancelacionService.java | 20 ++++ .../service/impl/EmpresaServiceImpl.java | 5 + .../impl/OrgaoCancelacionServiceImpl.java | 55 +++++++++++ 10 files changed, 280 insertions(+) create mode 100644 src/com/rjconsultores/ventaboletos/dao/OrgaoCancelacionDAO.java create mode 100644 src/com/rjconsultores/ventaboletos/dao/hibernate/OrgaoCancelacionHibernateDAO.java create mode 100644 src/com/rjconsultores/ventaboletos/entidad/OrgaoCancelacion.java create mode 100644 src/com/rjconsultores/ventaboletos/service/OrgaoCancelacionService.java create mode 100644 src/com/rjconsultores/ventaboletos/service/impl/OrgaoCancelacionServiceImpl.java diff --git a/src/com/rjconsultores/ventaboletos/dao/EmpresaDAO.java b/src/com/rjconsultores/ventaboletos/dao/EmpresaDAO.java index a60fd09e2..f940da83f 100644 --- a/src/com/rjconsultores/ventaboletos/dao/EmpresaDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/EmpresaDAO.java @@ -31,4 +31,6 @@ public interface EmpresaDAO extends GenericDAO { public List buscaInscricoesEstaduais(Empresa empresa); public void actualizaInscEstadual(InscricaoEstadual inscricaoEstadual); + + public List buscaLike(String nombempresa); } diff --git a/src/com/rjconsultores/ventaboletos/dao/OrgaoCancelacionDAO.java b/src/com/rjconsultores/ventaboletos/dao/OrgaoCancelacionDAO.java new file mode 100644 index 000000000..ed5d98f6a --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/dao/OrgaoCancelacionDAO.java @@ -0,0 +1,15 @@ +package com.rjconsultores.ventaboletos.dao; + +import java.util.List; + +import com.rjconsultores.ventaboletos.entidad.OrgaoCancelacion; +import com.rjconsultores.ventaboletos.entidad.OrgaoConcedente; + +public interface OrgaoCancelacionDAO extends GenericDAO { + + public List buscarPorOrgao(OrgaoConcedente orgaoConcedente); + + public List obtenerTodos(); + + public List obtenerTodosIds() ; +} diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/EmpresaHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/EmpresaHibernateDAO.java index 11bc3247c..ba08a3197 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/EmpresaHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/EmpresaHibernateDAO.java @@ -11,6 +11,7 @@ import org.hibernate.Criteria; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.SessionFactory; +import org.hibernate.criterion.MatchMode; import org.hibernate.criterion.Order; import org.hibernate.criterion.Restrictions; import org.springframework.beans.factory.annotation.Autowired; @@ -131,4 +132,15 @@ public class EmpresaHibernateDAO extends GenericHibernateDAO session.saveOrUpdate(inscricaoEstadual); session.flush(); } + + @Override + public List buscaLike(String nombempresa) { + Criteria c = getSession().createCriteria(getPersistentClass()); + c.add(Restrictions.eq("activo", Boolean.TRUE)); + c.add(Restrictions.like("nombempresa", nombempresa, MatchMode.START)); + + c.addOrder(Order.asc("nombempresa")); + + return c.list(); + } } diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/OrgaoCancelacionHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/OrgaoCancelacionHibernateDAO.java new file mode 100644 index 000000000..c01bdc3ea --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/OrgaoCancelacionHibernateDAO.java @@ -0,0 +1,56 @@ +package com.rjconsultores.ventaboletos.dao.hibernate; + +import java.util.List; + +import org.hibernate.Criteria; +import org.hibernate.SessionFactory; +import org.hibernate.criterion.Order; +import org.hibernate.criterion.Projections; +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.OrgaoCancelacionDAO; +import com.rjconsultores.ventaboletos.entidad.OrgaoCancelacion; +import com.rjconsultores.ventaboletos.entidad.OrgaoConcedente; + +@Repository("orgaoCancelacionDAO") +public class OrgaoCancelacionHibernateDAO extends GenericHibernateDAO implements OrgaoCancelacionDAO { + + @Autowired + public OrgaoCancelacionHibernateDAO(@Qualifier("sessionFactory") SessionFactory factory) { + setSessionFactory(factory); + } + + @SuppressWarnings("unchecked") + @Override + public List obtenerTodos() { + Criteria c = getSession().createCriteria(getPersistentClass()); + c.add(Restrictions.eq("activo", Boolean.TRUE)); + c.addOrder(Order.asc("descOrgao")); + + return c.list(); + } + + @SuppressWarnings("unchecked") + @Override + public List obtenerTodosIds() { + Criteria c = getSession().createCriteria(getPersistentClass()); + c.add(Restrictions.eq("activo", Boolean.TRUE)); + c.setProjection(Projections.property("orgaoCancelacionId")); + + return c.list(); + } + + @SuppressWarnings("unchecked") + @Override + public List buscarPorOrgao(OrgaoConcedente orgaoConcedente) { + Criteria c = getSession().createCriteria(getPersistentClass()); + c.add(Restrictions.like("orgao", orgaoConcedente)); + c.add(Restrictions.eq("activo", Boolean.TRUE)); + + return c.list(); + } + +} diff --git a/src/com/rjconsultores/ventaboletos/entidad/OrgaoCancelacion.java b/src/com/rjconsultores/ventaboletos/entidad/OrgaoCancelacion.java new file mode 100644 index 000000000..d330ec571 --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/entidad/OrgaoCancelacion.java @@ -0,0 +1,95 @@ +package com.rjconsultores.ventaboletos.entidad; + +import java.math.BigDecimal; +import java.util.Date; + +import javax.persistence.Basic; +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.ManyToOne; +import javax.persistence.SequenceGenerator; +import javax.persistence.Table; +import javax.persistence.Temporal; +import javax.persistence.TemporalType; + +@Entity +@SequenceGenerator(name = "ORGAO_CANCELACION_SEQ", sequenceName = "ORGAO_CANCELACION_SEQ", allocationSize = 1) +@Table(name = "ORGAO_CANCELACION") +public class OrgaoCancelacion { + + private static final long serialVersionUID = 1L; + @Id + @Basic(optional = false) + @GeneratedValue(strategy = GenerationType.AUTO, generator = "ORGAO_CANCELACION_SEQ") + @Column(name = "ORGAOCANCELACION_ID") + private Integer orgaoCancelacionId; + @JoinColumn(name = "EMPRESA_ID", referencedColumnName = "EMPRESA_ID") + @ManyToOne + private Empresa empresa; + @JoinColumn(name = "ORGAOCONCEDENTE_ID", referencedColumnName = "ORGAOCONCEDENTE_ID") + @ManyToOne + private OrgaoConcedente orgao; + @Column(name = "PORCMULTA") + private BigDecimal porcmulta; + @Column(name = "PORCCAMBIO") + private BigDecimal porccambio; + @Column(name = "ACTIVO") + private Boolean activo; + @Column(name = "FECMODIF") + @Temporal(TemporalType.TIMESTAMP) + private Date fecmodif; + @Column(name = "USUARIO_ID") + private Integer usuarioId; + public Integer getOrgaoCancelacionId() { + return orgaoCancelacionId; + } + public void setOrgaoCancelacionId(Integer orgaoCancelacionId) { + this.orgaoCancelacionId = orgaoCancelacionId; + } + public Empresa getEmpresa() { + return empresa; + } + public void setEmpresa(Empresa empresa) { + this.empresa = empresa; + } + public OrgaoConcedente getOrgao() { + return orgao; + } + public void setOrgao(OrgaoConcedente orgao) { + this.orgao = orgao; + } + public BigDecimal getPorcmulta() { + return porcmulta; + } + public void setPorcmulta(BigDecimal porcmulta) { + this.porcmulta = porcmulta; + } + public BigDecimal getPorccambio() { + return porccambio; + } + public void setPorccambio(BigDecimal porccambio) { + this.porccambio = porccambio; + } + public Boolean getActivo() { + return activo; + } + public void setActivo(Boolean activo) { + this.activo = activo; + } + public Date getFecmodif() { + return fecmodif; + } + public void setFecmodif(Date fecmodif) { + this.fecmodif = fecmodif; + } + public Integer getUsuarioId() { + return usuarioId; + } + public void setUsuarioId(Integer usuarioId) { + this.usuarioId = usuarioId; + } +} diff --git a/src/com/rjconsultores/ventaboletos/entidad/OrgaoConcedente.java b/src/com/rjconsultores/ventaboletos/entidad/OrgaoConcedente.java index 32b7ef560..188314bcf 100644 --- a/src/com/rjconsultores/ventaboletos/entidad/OrgaoConcedente.java +++ b/src/com/rjconsultores/ventaboletos/entidad/OrgaoConcedente.java @@ -44,6 +44,16 @@ public class OrgaoConcedente implements Serializable { private List categoriaOrgaoList; @Column(name = "INDNOMDOCOBLIGATORIO") private Boolean indNomDocObligatorio; + @OneToMany(mappedBy = "orgao") + private List orgaoCancelacionList; + + public void addParametro(OrgaoCancelacion param){ + this.orgaoCancelacionList.add(param); + } + + public void removeParametro(OrgaoCancelacion param){ + this.orgaoCancelacionList.remove(param); + } public Integer getOrgaoConcedenteId() { return orgaoConcedenteId; @@ -118,6 +128,14 @@ public class OrgaoConcedente implements Serializable { public void setIndNomDocObligatorio(Boolean indNomDocObligatorio) { this.indNomDocObligatorio = indNomDocObligatorio; } + + public List getOrgaoCancelacionList() { + return orgaoCancelacionList; + } + + public void setOrgaoCancelacionList(List orgaoCancelacionList) { + this.orgaoCancelacionList = orgaoCancelacionList; + } @Override public String toString() { diff --git a/src/com/rjconsultores/ventaboletos/service/EmpresaService.java b/src/com/rjconsultores/ventaboletos/service/EmpresaService.java index 723255ec0..2022d0cb8 100644 --- a/src/com/rjconsultores/ventaboletos/service/EmpresaService.java +++ b/src/com/rjconsultores/ventaboletos/service/EmpresaService.java @@ -39,4 +39,6 @@ public interface EmpresaService { public List buscaInscricoesEstaduais(Empresa empresa); public void actualizaInscEstadual(InscricaoEstadual inscricaoEstadual); + + public List buscaLike(String nombempresa); } diff --git a/src/com/rjconsultores/ventaboletos/service/OrgaoCancelacionService.java b/src/com/rjconsultores/ventaboletos/service/OrgaoCancelacionService.java new file mode 100644 index 000000000..f01eafd7d --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/service/OrgaoCancelacionService.java @@ -0,0 +1,20 @@ +package com.rjconsultores.ventaboletos.service; + +import java.util.List; + +import com.rjconsultores.ventaboletos.entidad.OrgaoCancelacion; +import com.rjconsultores.ventaboletos.entidad.OrgaoConcedente; + +public interface OrgaoCancelacionService { + + public List buscarPorOrgao(OrgaoConcedente orgaoConcedente); + + public List obtenerTodos(); + + public OrgaoCancelacion obtenerID(Integer id); + + public void borrar(OrgaoCancelacion entidad); + + public OrgaoCancelacion suscribirActualizacion(OrgaoCancelacion entidad); + +} diff --git a/src/com/rjconsultores/ventaboletos/service/impl/EmpresaServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/EmpresaServiceImpl.java index 53c4ca453..9dac0cb1d 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/EmpresaServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/EmpresaServiceImpl.java @@ -108,4 +108,9 @@ public class EmpresaServiceImpl implements EmpresaService { public void actualizaInscEstadual(InscricaoEstadual inscricaoEstadual) { empresaDAO.actualizaInscEstadual(inscricaoEstadual); } + + @Override + public List buscaLike(String nombempresa){ + return empresaDAO.buscaLike(nombempresa); + } } diff --git a/src/com/rjconsultores/ventaboletos/service/impl/OrgaoCancelacionServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/OrgaoCancelacionServiceImpl.java new file mode 100644 index 000000000..f0ed89041 --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/service/impl/OrgaoCancelacionServiceImpl.java @@ -0,0 +1,55 @@ +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.OrgaoCancelacionDAO; +import com.rjconsultores.ventaboletos.entidad.OrgaoCancelacion; +import com.rjconsultores.ventaboletos.entidad.OrgaoConcedente; +import com.rjconsultores.ventaboletos.service.OrgaoCancelacionService; +import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; + +@Service("orgaoCancelacionService") +public class OrgaoCancelacionServiceImpl implements OrgaoCancelacionService{ + + @Autowired + private OrgaoCancelacionDAO orgaoCancelacionDAO; + + public List obtenerTodos() { + return orgaoCancelacionDAO.obtenerTodos(); + } + + public OrgaoCancelacion obtenerID(Integer id) { + return orgaoCancelacionDAO.obtenerID(id); + } + + @Transactional + public OrgaoCancelacion suscribirActualizacion(OrgaoCancelacion entidad) { + entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + entidad.setFecmodif(Calendar.getInstance().getTime()); + entidad.setActivo(Boolean.TRUE); + + if (entidad.getOrgaoCancelacionId() != null){ + return orgaoCancelacionDAO.actualizacion(entidad); + } else { + return orgaoCancelacionDAO.suscribir(entidad); + } + } + + @Transactional + public void borrar(OrgaoCancelacion entidad) { + entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + entidad.setFecmodif(Calendar.getInstance().getTime()); + entidad.setActivo(Boolean.FALSE); + + orgaoCancelacionDAO.actualizacion(entidad); + } + + public List buscarPorOrgao(OrgaoConcedente orgaoConcedente) { + return orgaoCancelacionDAO.buscarPorOrgao(orgaoConcedente); + } +}