diff --git a/src/com/rjconsultores/ventaboletos/dao/ConfTotemVentaRapidaDAO.java b/src/com/rjconsultores/ventaboletos/dao/ConfTotemVentaRapidaDAO.java new file mode 100644 index 000000000..4e8ee6807 --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/dao/ConfTotemVentaRapidaDAO.java @@ -0,0 +1,15 @@ +package com.rjconsultores.ventaboletos.dao; + +import java.util.List; + +import com.rjconsultores.ventaboletos.entidad.ConfTotemVentaRapida; +import com.rjconsultores.ventaboletos.entidad.Parada; + +public interface ConfTotemVentaRapidaDAO extends GenericDAO { + + ConfTotemVentaRapida buscarOrigemDestino(Parada origem, Parada destino); + + List buscarOrigem(Parada origem); + + +} diff --git a/src/com/rjconsultores/ventaboletos/dao/ParadaDAO.java b/src/com/rjconsultores/ventaboletos/dao/ParadaDAO.java index fc73b1f36..bebbf5bb0 100644 --- a/src/com/rjconsultores/ventaboletos/dao/ParadaDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/ParadaDAO.java @@ -11,6 +11,7 @@ import com.rjconsultores.ventaboletos.entidad.Parada; import com.rjconsultores.ventaboletos.entidad.RegionMetropolitana; import com.rjconsultores.ventaboletos.entidad.Ruta; import com.rjconsultores.ventaboletos.entidad.TipoParada; +import com.rjconsultores.ventaboletos.vo.parada.ParadaVO; import java.util.List; @@ -60,4 +61,6 @@ public interface ParadaDAO { public List buscarPorAgrupamentoParadaId(AgrupamentoParada agrupamentoParada); + public List buscarDestinosPorOrigem(Integer origemId); + } diff --git a/src/com/rjconsultores/ventaboletos/dao/PtovtaExcecaoMultaCancDAO.java b/src/com/rjconsultores/ventaboletos/dao/PtovtaExcecaoMultaCancDAO.java new file mode 100644 index 000000000..379f110dc --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/dao/PtovtaExcecaoMultaCancDAO.java @@ -0,0 +1,7 @@ +package com.rjconsultores.ventaboletos.dao; + +import com.rjconsultores.ventaboletos.entidad.PtovtaExcecaoMultaCanc; + +public interface PtovtaExcecaoMultaCancDAO extends GenericDAO { + +} diff --git a/src/com/rjconsultores/ventaboletos/dao/RemessaCNABBancosDAO.java b/src/com/rjconsultores/ventaboletos/dao/RemessaCNABBancosDAO.java index 0002cb4b2..19ccc64d7 100644 --- a/src/com/rjconsultores/ventaboletos/dao/RemessaCNABBancosDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/RemessaCNABBancosDAO.java @@ -5,6 +5,7 @@ import java.util.Date; import java.util.List; import com.rjconsultores.ventaboletos.ArquivoRemessa; +import com.rjconsultores.ventaboletos.blocos.DetalheRetorno; import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.FechamentoBoleto; @@ -34,5 +35,6 @@ public interface RemessaCNABBancosDAO extends GenericDAO public FechamentoBoleto obtenerFechamentoBoletoPorNossoNumero(String nossoNumero, Integer empresaId); - public boolean quitarFechamentoBoleto(Long fechamentoboletoId, Integer usuarioId) throws SQLException; + public boolean quitarFechamentoBoleto(Long fechamentoboletoId, Integer usuarioId, DetalheRetorno detalhe) throws SQLException; + } diff --git a/src/com/rjconsultores/ventaboletos/dao/SapDAO.java b/src/com/rjconsultores/ventaboletos/dao/SapDAO.java index c21e2dc3e..473bfcc86 100644 --- a/src/com/rjconsultores/ventaboletos/dao/SapDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/SapDAO.java @@ -5,11 +5,14 @@ import java.util.List; import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.FechamentoCntcorrente; +import com.rjconsultores.ventaboletos.entidad.PuntoVenta; import com.rjconsultores.ventaboletos.vo.integracao.FechamentoCntCorrenteVO; public interface SapDAO extends GenericDAO { public List obtenerTodosParaRemessa(Empresa empresa, Date dataDe, Date dataAte, Boolean reenviar); + + public List obtenerTodosParaRemessa(Empresa empresa, Date dataDe, Date dataAte, Boolean reenviar, PuntoVenta puntoVenta); public boolean atualizaFechamento(Long fechamentocntcorrenteId, int status) throws Exception; diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/ConfTotemVentaRapidaHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/ConfTotemVentaRapidaHibernateDAO.java new file mode 100644 index 000000000..33e9b8e01 --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/ConfTotemVentaRapidaHibernateDAO.java @@ -0,0 +1,48 @@ +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.ConfTotemVentaRapidaDAO; +import com.rjconsultores.ventaboletos.entidad.ConfTotemVentaRapida; +import com.rjconsultores.ventaboletos.entidad.Parada; + +/** + * + * @author Wallace + */ +@Repository("ConfTotemVentaRapidaDAO") +public class ConfTotemVentaRapidaHibernateDAO extends GenericHibernateDAO implements ConfTotemVentaRapidaDAO { + + @Autowired + public ConfTotemVentaRapidaHibernateDAO(@Qualifier("sessionFactory") SessionFactory factory) { + setSessionFactory(factory); + } + + @Override + public ConfTotemVentaRapida buscarOrigemDestino(Parada origem, Parada destino) { + + Criteria c = this.makeCriteria(); + c.add(Restrictions.eq("origen", origem)); + c.add(Restrictions.eq("destino", destino)); + c.add(Restrictions.eq("activo", Boolean.TRUE)); + + return (ConfTotemVentaRapida) c.uniqueResult(); + } + + @Override + public List buscarOrigem(Parada origem) { + + Criteria c = this.makeCriteria(); + c.add(Restrictions.eq("origen", origem)); + c.add(Restrictions.eq("activo", Boolean.TRUE)); + + return c.list(); + } +} \ No newline at end of file diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/ConferenciaComissaoHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/ConferenciaComissaoHibernateDAO.java index 4b83a76db..14a1b7e55 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/ConferenciaComissaoHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/ConferenciaComissaoHibernateDAO.java @@ -52,6 +52,7 @@ import com.rjconsultores.ventaboletos.vo.comissao.BoletoComissao; import com.rjconsultores.ventaboletos.vo.comissao.ConferenciaComissaoVO; import com.rjconsultores.ventaboletos.vo.comissao.DiaConferenciaComissaoVO; import com.rjconsultores.ventaboletos.vo.comissao.EventosFinanceirosVO; +import com.rjconsultores.ventaboletos.vo.comissao.FormaPagoEventosFinanceirosVO; import com.rjconsultores.ventaboletos.vo.comissao.FormapagoVO; import com.rjconsultores.ventaboletos.vo.comissao.LogConferenciaVO; import com.rjconsultores.ventaboletos.vo.comissao.OcdVO; @@ -709,8 +710,18 @@ public class ConferenciaComissaoHibernateDAO extends GenericHibernateDAO()); + eventosFinanceiros.getFormapagos().add(new FormaPagoEventosFinanceirosVO(eventosFinanceiros.getFormapagoId(),eventosFinanceiros.getDescpago(),eventosFinanceiros.getImpingreso())); + result.add(eventosFinanceiros); } } diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/ParadaHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/ParadaHibernateDAO.java index 070227935..3539190d2 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/ParadaHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/ParadaHibernateDAO.java @@ -7,11 +7,15 @@ package com.rjconsultores.ventaboletos.dao.hibernate; import java.util.List; import org.hibernate.Criteria; +import org.hibernate.Query; import org.hibernate.SessionFactory; import org.hibernate.criterion.MatchMode; import org.hibernate.criterion.Order; import org.hibernate.criterion.Projections; import org.hibernate.criterion.Restrictions; +import org.hibernate.transform.AliasToBeanResultTransformer; +import org.hibernate.type.IntegerType; +import org.hibernate.type.StringType; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.stereotype.Repository; @@ -24,6 +28,7 @@ import com.rjconsultores.ventaboletos.entidad.Parada; import com.rjconsultores.ventaboletos.entidad.RegionMetropolitana; import com.rjconsultores.ventaboletos.entidad.Ruta; import com.rjconsultores.ventaboletos.entidad.TipoParada; +import com.rjconsultores.ventaboletos.vo.parada.ParadaVO; /** * @@ -139,6 +144,36 @@ public class ParadaHibernateDAO extends GenericHibernateDAO imp return getSession().createQuery(sql).setEntity("origem", origem).list(); } + + + @Override + public List buscarDestinosPorOrigem(Integer origenId){ + StringBuilder sb = new StringBuilder(); + + sb.append("select distinct p.PARADA_ID as paradaId, p.CVEPARADA as cveparada, p.DESCPARADA as descparada from RUTA_COMBINACION rc ") + .append("inner join ruta r on rc.RUTA_ID=r.RUTA_ID ") + .append("inner join ESQUEMA_CORRIDA ec on r.RUTA_ID=ec.RUTA_ID ") + .append("inner join corrida c on ec.NUMCORRIDA=c.CORRIDA_ID ") + .append("inner join parada p on p.parada_id=c.DESTINO_ID ") + .append("where rc.ACTIVO = 1 and r.activo=1 and ec.activo=1 and c.activo=1 and p.activo = 1 and c.ORIGEN_ID=:origenId"); + + Query qry = getSession().createSQLQuery(sb.toString()) + .addScalar("paradaId", IntegerType.INSTANCE) + .addScalar("cveparada", StringType.INSTANCE) + .addScalar("descparada", StringType.INSTANCE) + .setResultTransformer(new AliasToBeanResultTransformer(Parada.class)); + + qry.setInteger("origenId", origenId); + + List list = qry.list(); + + if (list.size() > 0) { + return list; + } + + return null; + + } public List buscaParadaRegionMetropolitana(RegionMetropolitana regionMetropolitana) { Criteria c = getSession().createCriteria(getPersistentClass()); diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/PtovtaExcecaoMultaCancHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/PtovtaExcecaoMultaCancHibernateDAO.java new file mode 100644 index 000000000..d5aa7ae7a --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/PtovtaExcecaoMultaCancHibernateDAO.java @@ -0,0 +1,20 @@ +package com.rjconsultores.ventaboletos.dao.hibernate; + +import org.hibernate.SessionFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.stereotype.Repository; + +import com.rjconsultores.ventaboletos.dao.PtovtaExcecaoMultaCancDAO; +import com.rjconsultores.ventaboletos.entidad.PtovtaExcecaoMultaCanc; + +@Repository("ptovtaExcecaoMultaCancHibernateDAO") +public class PtovtaExcecaoMultaCancHibernateDAO extends GenericHibernateDAO implements PtovtaExcecaoMultaCancDAO { + + @Autowired + public PtovtaExcecaoMultaCancHibernateDAO( + @Qualifier("sessionFactory") SessionFactory factory) { + setSessionFactory(factory); + } + +} diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/RemessaCNABBancosHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/RemessaCNABBancosHibernateDAO.java index 728199585..2d3b6ae04 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/RemessaCNABBancosHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/RemessaCNABBancosHibernateDAO.java @@ -28,6 +28,7 @@ import com.rjconsultores.ventaboletos.ArquivoRemessa; import com.rjconsultores.ventaboletos.ArquivoRemessaItem; import com.rjconsultores.ventaboletos.ArquivoRemessaItemInteface; import com.rjconsultores.ventaboletos.blocos.DetalheObrigatorio; +import com.rjconsultores.ventaboletos.blocos.DetalheRetorno; import com.rjconsultores.ventaboletos.blocos.RodapeRemessaPadrao; import com.rjconsultores.ventaboletos.blocos.bancobrasil.ArquivoRemessaBancoBrasil; import com.rjconsultores.ventaboletos.blocos.bancobrasil.CabecalhoLoteRemessaBancoBrasil; @@ -829,7 +830,7 @@ public class RemessaCNABBancosHibernateDAO extends GenericHibernateDAO obtenerTodosParaRemessa(Empresa empresa, Date dataDe, Date dataAte, Boolean reenviar) { + return obtenerTodosParaRemessa(empresa, dataDe, dataAte, reenviar, null); + } @SuppressWarnings("unchecked") @Override - public List obtenerTodosParaRemessa(Empresa empresa, Date dataDe, Date dataAte, Boolean reenviar) { + public List obtenerTodosParaRemessa(Empresa empresa, Date dataDe, Date dataAte, Boolean reenviar, PuntoVenta puntoVenta) { StringBuilder sb = new StringBuilder(); sb.append(" SELECT "); @@ -51,11 +57,13 @@ public class SapHibernateDAO extends GenericHibernateDAO - implements TipoOcupacionDAO { + implements TipoOcupacionDAO { - @Autowired - public TipoOcupacionHibernateDAO(@Qualifier("sessionFactory") SessionFactory factory) { - setSessionFactory(factory); - } + @Autowired + public TipoOcupacionHibernateDAO(@Qualifier("sessionFactory") SessionFactory factory) { + setSessionFactory(factory); + } - @Override - public List obtenerTodos() { - Criteria c = getSession().createCriteria(getPersistentClass()); - c.add(Restrictions.eq("activo", Boolean.TRUE)); + @Override + public List obtenerTodos() { + Criteria c = getSession().createCriteria(getPersistentClass()); + c.add(Restrictions.eq("activo", Boolean.TRUE)); - return c.list(); - } + return c.list(); + } - public List buscar(String desctipo, String cvetipoocupacion) { - Criteria c = getSession().createCriteria(getPersistentClass()); - c.add(Restrictions.eq("activo", Boolean.TRUE)); + public List buscar(String desctipo, String cvetipoocupacion) { + Criteria c = getSession().createCriteria(getPersistentClass()); + c.add(Restrictions.eq("activo", Boolean.TRUE)); - c.add(Restrictions.eq("desctipo", desctipo)); - c.add(Restrictions.eq("cvetipoocupacion", cvetipoocupacion)); + if (desctipo != null) { + c.add(Restrictions.eq("desctipo", desctipo)); + } - return c.list(); - } + if (cvetipoocupacion != null) { + c.add(Restrictions.eq("cvetipoocupacion", cvetipoocupacion)); + } - public List buscarClave(String cvetipoocupacion) { - Criteria c = getSession().createCriteria(getPersistentClass()); - c.add(Restrictions.eq("activo", Boolean.TRUE)); + return c.list(); + } - c.add(Restrictions.eq("cvetipoocupacion", cvetipoocupacion)); + public List buscarClave(String cvetipoocupacion) { + Criteria c = getSession().createCriteria(getPersistentClass()); + c.add(Restrictions.eq("activo", Boolean.TRUE)); - return c.list(); - } + c.add(Restrictions.eq("cvetipoocupacion", cvetipoocupacion)); + + return c.list(); + } } diff --git a/src/com/rjconsultores/ventaboletos/entidad/CategoriaDescuento.java b/src/com/rjconsultores/ventaboletos/entidad/CategoriaDescuento.java index 5a4fb4d0b..d67c311d3 100644 --- a/src/com/rjconsultores/ventaboletos/entidad/CategoriaDescuento.java +++ b/src/com/rjconsultores/ventaboletos/entidad/CategoriaDescuento.java @@ -230,6 +230,13 @@ public class CategoriaDescuento implements Serializable { @ManyToOne(cascade = CascadeType.ALL) private Categoria categoriaInterage; + @Column(name = "INDEXIGENUMFIDELIDADE") + private Boolean indExigeNumFidelidade; + + @JoinColumn(name = "TIPOOCUPACION_ID") + @ManyToOne(cascade = CascadeType.ALL) + private TipoOcupacion tipoOcupacion; + public enum DisponibilidadeFeriado { // Declaração dos enum GERARSEMPRE("SEMPRE", "S"), @@ -969,4 +976,19 @@ public class CategoriaDescuento implements Serializable { this.categoriaInterage = categoriaInterage; } + public Boolean getIndExigeNumFidelidade() { + return indExigeNumFidelidade == null ? false : indExigeNumFidelidade; + } + + public void setIndExigeNumFidelidade(Boolean indExigeNumFidelidade) { + this.indExigeNumFidelidade = indExigeNumFidelidade; + } + + public TipoOcupacion getTipoOcupacion() { + return tipoOcupacion; + } + + public void setTipoOcupacion(TipoOcupacion tipoOcupacion) { + this.tipoOcupacion = tipoOcupacion; + } } diff --git a/src/com/rjconsultores/ventaboletos/entidad/ConfTotem.java b/src/com/rjconsultores/ventaboletos/entidad/ConfTotem.java index 551ba9e74..32b034c08 100644 --- a/src/com/rjconsultores/ventaboletos/entidad/ConfTotem.java +++ b/src/com/rjconsultores/ventaboletos/entidad/ConfTotem.java @@ -51,29 +51,6 @@ public class ConfTotem implements Serializable { public ConfTotem() { super(); } - @Override - public int hashCode() { - final int prime = 31; - int result = 1; - result = prime * result + ((confTotemId == null) ? 0 : confTotemId.hashCode()); - return result; - } - @Override - public boolean equals(Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (getClass() != obj.getClass()) - return false; - ConfTotem other = (ConfTotem) obj; - if (confTotemId == null) { - if (other.confTotemId != null) - return false; - } else if (!confTotemId.equals(other.confTotemId)) - return false; - return true; - } public String getValor() { return valor; @@ -107,4 +84,28 @@ public class ConfTotem implements Serializable { this.chave = chave; } + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((confTotemId == null) ? 0 : confTotemId.hashCode()); + return result; + } + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + ConfTotem other = (ConfTotem) obj; + if (confTotemId == null) { + if (other.confTotemId != null) + return false; + } else if (!confTotemId.equals(other.confTotemId)) + return false; + return true; + } + } diff --git a/src/com/rjconsultores/ventaboletos/entidad/ConfTotemVentaRapida.java b/src/com/rjconsultores/ventaboletos/entidad/ConfTotemVentaRapida.java new file mode 100644 index 000000000..af0b0ab27 --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/entidad/ConfTotemVentaRapida.java @@ -0,0 +1,139 @@ +package com.rjconsultores.ventaboletos.entidad; + +import java.io.Serializable; +import java.util.Date; + +import javax.persistence.Basic; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.FetchType; +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; + +/** + * + * @author wallace + */ +@Entity +@SequenceGenerator(name = "CONFTOTEM_VENTARAPIDA_SEQ", sequenceName = "CONFTOTEM_VENTARAPIDA_SEQ", allocationSize = 1) +@Table(name = "CONF_TOTEM_VENTARAPIDA") +public class ConfTotemVentaRapida implements Serializable { + private static final long serialVersionUID = 1L; + @Id + @Basic(optional = false) + @GeneratedValue(strategy = GenerationType.AUTO, generator = "CONFTOTEM_VENTARAPIDA_SEQ") + @Column(name = "CONFTOTEMVENTARAPIDA_ID") + private Integer confTotemVentaRapidaId; + @Column(name = "ACTIVO") + private Boolean activo; + @Column(name = "FECMODIF") + @Temporal(TemporalType.TIMESTAMP) + private Date fecmodif; + @Column(name = "USUARIO_ID") + private Integer usuarioId; + @ManyToOne + @JoinColumn(name = "ORIGEN_ID") + private Parada origen; + @ManyToOne + @JoinColumn(name = "DESTINO_ID") + private Parada destino; + + public ConfTotemVentaRapida() { + super(); + } + + public ConfTotemVentaRapida(Parada origem, Parada destino) { + this.origen = origem; + this.destino = destino; + } + + public Integer getConfTotemVentaRapidaOri() { + return confTotemVentaRapidaId; + } + + public void setConfTotemVentaRapidaId(Integer confTotemVentaRapidaId) { + this.confTotemVentaRapidaId = confTotemVentaRapidaId; + } + + 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; + } + + public Parada getOrigen() { + return origen; + } + + public void setOrigen(Parada origen) { + this.origen = origen; + } + + public Parada getDestino() { + return destino; + } + + public void setDestino(Parada destino) { + this.destino = destino; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((destino == null) ? 0 : destino.hashCode()); + result = prime * result + ((origen == null) ? 0 : origen.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + ConfTotemVentaRapida other = (ConfTotemVentaRapida) obj; + if (destino == null) { + if (other.destino != null) + return false; + } else if (!destino.equals(other.destino)) + return false; + if (origen == null) { + if (other.origen != null) + return false; + } else if (!origen.equals(other.origen)) + return false; + return true; + } + + + + +} diff --git a/src/com/rjconsultores/ventaboletos/entidad/Empresa.java b/src/com/rjconsultores/ventaboletos/entidad/Empresa.java index 8843eeb74..b988cc9de 100644 --- a/src/com/rjconsultores/ventaboletos/entidad/Empresa.java +++ b/src/com/rjconsultores/ventaboletos/entidad/Empresa.java @@ -396,14 +396,15 @@ public class Empresa implements Serializable, Auditavel { @Column(name = "INDCHECKINBLOQUEADOREMARCACAO") private Boolean indCheckinBloqueadoRemarcacao; - @Column(name = "INDAGRUPLOCCONEXAO") private Boolean indAgrupLocConexao; - @Column(name = "INDLIMITACATEGORIAPORCORRIDA") private Boolean IndLimitaCategoriaPorCorrida; + @Column(name = "INDSEGUNDAVIASEGOPCIONAL") + private Boolean indSegundaViaSegOpcional; + @Transient @NaoAuditar private Empresa empresaClone; @@ -1495,4 +1496,12 @@ public class Empresa implements Serializable, Auditavel { public void setIndLimitaCategoriaPorCorrida(Boolean indLimitaCategoriaPorCorrida) { IndLimitaCategoriaPorCorrida = indLimitaCategoriaPorCorrida; } + + public Boolean getIndSegundaViaSegOpcional() { + return indSegundaViaSegOpcional == null ? false : indSegundaViaSegOpcional; + } + + public void setIndSegundaViaSegOpcional(Boolean indSegundaViaSegOpcional) { + this.indSegundaViaSegOpcional = indSegundaViaSegOpcional; + } } diff --git a/src/com/rjconsultores/ventaboletos/entidad/Estado.java b/src/com/rjconsultores/ventaboletos/entidad/Estado.java index 27fb88ea1..c5d29a9d6 100644 --- a/src/com/rjconsultores/ventaboletos/entidad/Estado.java +++ b/src/com/rjconsultores/ventaboletos/entidad/Estado.java @@ -88,6 +88,9 @@ public class Estado implements Serializable { @Column(name = "CODIBGE") private Integer codibge; + @Column(name = "TIMEOUT_BPE") + private Integer timeoutBpe; + public Estado() { } @@ -225,8 +228,6 @@ public class Estado implements Serializable { this.centroResultadosAG = centroResultadosAG; } - - public String getMensagemPromocional1() { return mensagemPromocional1; } @@ -290,4 +291,12 @@ public class Estado implements Serializable { public void setCodibge(Integer codibge) { this.codibge = codibge; } + + public Integer getTimeoutBpe() { + return timeoutBpe; + } + + public void setTimeoutBpe(Integer timeoutBpe) { + this.timeoutBpe = timeoutBpe; + } } diff --git a/src/com/rjconsultores/ventaboletos/entidad/FechamentoBoleto.java b/src/com/rjconsultores/ventaboletos/entidad/FechamentoBoleto.java index 41341e914..02f98857e 100644 --- a/src/com/rjconsultores/ventaboletos/entidad/FechamentoBoleto.java +++ b/src/com/rjconsultores/ventaboletos/entidad/FechamentoBoleto.java @@ -42,9 +42,16 @@ public class FechamentoBoleto implements java.io.Serializable{ @Temporal(TemporalType.TIMESTAMP) private Date fecvencimento; + @Column(name = "FECBAIXA", length = 7) + @Temporal(TemporalType.TIMESTAMP) + private Date fecbaixa; + @Column(name = "VALORDOCUMENTO") private BigDecimal valordocumento; + @Column(name = "VALOR_JUROS") + private BigDecimal valorjuros; + @Column(name = "DESCONTOS") private BigDecimal descontos; @@ -91,6 +98,7 @@ public class FechamentoBoleto implements java.io.Serializable{ public Long getFechamentoboletoId() { return fechamentoboletoId; } + public void setFechamentoboletoId(Long fechamentoboletoId) { this.fechamentoboletoId = fechamentoboletoId; } @@ -98,6 +106,7 @@ public class FechamentoBoleto implements java.io.Serializable{ public FechamentoCntcorrente getFechamentoCntcorrente() { return fechamentoCntcorrente; } + public void setFechamentoCntcorrente(FechamentoCntcorrente fechamentoCntcorrente) { this.fechamentoCntcorrente = fechamentoCntcorrente; } @@ -105,6 +114,7 @@ public class FechamentoBoleto implements java.io.Serializable{ public String getNossonumero() { return nossonumero; } + public void setNossonumero(String nossonumero) { this.nossonumero = nossonumero; } @@ -112,6 +122,7 @@ public class FechamentoBoleto implements java.io.Serializable{ public Date getFecdocumento() { return fecdocumento; } + public void setFecdocumento(Date fecdocumento) { this.fecdocumento = fecdocumento; } @@ -119,6 +130,7 @@ public class FechamentoBoleto implements java.io.Serializable{ public Date getFecvencimento() { return fecvencimento; } + public void setFecvencimento(Date fecvencimento) { this.fecvencimento = fecvencimento; } @@ -126,6 +138,7 @@ public class FechamentoBoleto implements java.io.Serializable{ public BigDecimal getValordocumento() { return valordocumento; } + public void setValordocumento(BigDecimal valordocumento) { this.valordocumento = valordocumento; } @@ -133,6 +146,7 @@ public class FechamentoBoleto implements java.io.Serializable{ public BigDecimal getDescontos() { return descontos; } + public void setDescontos(BigDecimal descontos) { this.descontos = descontos; } @@ -140,6 +154,7 @@ public class FechamentoBoleto implements java.io.Serializable{ public BigDecimal getDeducoes() { return deducoes; } + public void setDeducoes(BigDecimal deducoes) { this.deducoes = deducoes; } @@ -147,6 +162,7 @@ public class FechamentoBoleto implements java.io.Serializable{ public BigDecimal getMora() { return mora; } + public void setMora(BigDecimal mora) { this.mora = mora; } @@ -154,6 +170,7 @@ public class FechamentoBoleto implements java.io.Serializable{ public BigDecimal getAcrescimos() { return acrescimos; } + public void setAcrescimos(BigDecimal acrescimos) { this.acrescimos = acrescimos; } @@ -161,6 +178,7 @@ public class FechamentoBoleto implements java.io.Serializable{ public BigDecimal getValorCobrado() { return valorCobrado; } + public void setValorCobrado(BigDecimal valorCobrado) { this.valorCobrado = valorCobrado; } @@ -168,6 +186,7 @@ public class FechamentoBoleto implements java.io.Serializable{ public Date getFecmodif() { return fecmodif; } + public void setFecmodif(Date fecmodif) { this.fecmodif = fecmodif; } @@ -175,6 +194,7 @@ public class FechamentoBoleto implements java.io.Serializable{ public Integer getUsuarioId() { return usuarioId; } + public void setUsuarioId(Integer usuarioId) { this.usuarioId = usuarioId; } @@ -182,6 +202,7 @@ public class FechamentoBoleto implements java.io.Serializable{ public Boolean getActivo() { return activo; } + public void setActivo(Boolean activo) { this.activo = activo; } @@ -189,36 +210,47 @@ public class FechamentoBoleto implements java.io.Serializable{ public String getStatus() { return status; } + public void setStatus(String status) { this.status = status; } + public Long getRemessaId() { return remessaId; } + public void setRemessaId(Long remessaId) { this.remessaId = remessaId; } + public BigDecimal getPorcentagemMulta() { return porcentagemMulta; } + public void setPorcentagemMulta(BigDecimal porcentagemMulta) { this.porcentagemMulta = porcentagemMulta; } + public BigDecimal getPorcentagemMora() { return porcentagemMora; } + public void setPorcentagemMora(BigDecimal porcentagemMora) { this.porcentagemMora = porcentagemMora; } + public Boolean getIndBoletoQuitado() { return indBoletoQuitado; } + public void setIndBoletoQuitado(Boolean indBoletoQuitado) { this.indBoletoQuitado = indBoletoQuitado; } + public Integer getUsuarioQuitacao() { return usuarioQuitacao; } + public void setUsuarioQuitacao(Integer usuarioQuitacao) { this.usuarioQuitacao = usuarioQuitacao; } diff --git a/src/com/rjconsultores/ventaboletos/entidad/OrgaoCancelacion.java b/src/com/rjconsultores/ventaboletos/entidad/OrgaoCancelacion.java index 6b71c9f55..2965f0a87 100644 --- a/src/com/rjconsultores/ventaboletos/entidad/OrgaoCancelacion.java +++ b/src/com/rjconsultores/ventaboletos/entidad/OrgaoCancelacion.java @@ -117,6 +117,14 @@ public class OrgaoCancelacion implements Serializable, Auditavel @Column(name = "TAXA_CONVENIENCIA_SVI") private BigDecimal taxaConvenienciaSVI; + @Transient @NaoAuditar private OrgaoConcedente orgaoConcedenteClone; @@ -350,6 +351,8 @@ public class OrgaoConcedente implements Serializable, Auditavel public void setTaxaConvenienciaSVI(BigDecimal taxaConvenienciaSVI) { this.taxaConvenienciaSVI = taxaConvenienciaSVI; } + + @Override public void clonar() throws CloneNotSupportedException { diff --git a/src/com/rjconsultores/ventaboletos/entidad/Parada.java b/src/com/rjconsultores/ventaboletos/entidad/Parada.java index 629ed0b71..8707b1861 100644 --- a/src/com/rjconsultores/ventaboletos/entidad/Parada.java +++ b/src/com/rjconsultores/ventaboletos/entidad/Parada.java @@ -300,7 +300,7 @@ public class Parada implements Serializable, Auditavel { return false; } Parada other = (Parada) object; - if ((this.getParadaId() == null && other.getParadaId() != null) || (this.getParadaId() != null && !this.getParadaId().equals(other.getParadaId()))) { + if ((this.getParadaId() == null && other.getParadaId() != null) || (this.getParadaId() != null && this.getParadaId().intValue() != other.getParadaId().intValue())) { return false; } return true; diff --git a/src/com/rjconsultores/ventaboletos/entidad/PtovtaExcecaoMultaCanc.java b/src/com/rjconsultores/ventaboletos/entidad/PtovtaExcecaoMultaCanc.java new file mode 100644 index 000000000..1ded1130e --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/entidad/PtovtaExcecaoMultaCanc.java @@ -0,0 +1,184 @@ +package com.rjconsultores.ventaboletos.entidad; + +import java.io.Serializable; +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; +import javax.persistence.Transient; + +import org.hibernate.Hibernate; + +import br.com.rjconsultores.auditador.annotations.AuditarClasse; +import br.com.rjconsultores.auditador.annotations.NaoAuditar; +import br.com.rjconsultores.auditador.interfaces.Auditavel; + +/** + * @author Valdevir + */ +@AuditarClasse(nome = "PtovtaExcecaoMultaCanc", tela = "Alteração Ponto de Venda/Excecao Multa Canc") +@Entity +@SequenceGenerator(name = "PTOVTA_EXCECAO_MULTA_CANC_SEQ", sequenceName = "PTOVTA_EXCECAO_MULTA_CANC_SEQ", allocationSize = 1) +@Table(name = "PTOVTA_EXCECAO_MULTA_CANC") +public class PtovtaExcecaoMultaCanc implements Serializable , Auditavel { + + private static final long serialVersionUID = 1L; + + @Id + @Basic(optional = false) + @GeneratedValue(strategy = GenerationType.AUTO, generator = "PTOVTA_EXCECAO_MULTA_CANC_SEQ") + @Column(name = "PTOVTAEXCECAOMULTACANC_ID") + private Integer ptovtaExcecaoMultaCancId; + + @ManyToOne + @JoinColumn(name = "PUNTOVENTA_ID") + private PuntoVenta puntoventa; + + @ManyToOne + @JoinColumn(name = "EMPRESA_ID") + private Empresa empresa; + + @ManyToOne + @JoinColumn(name = "ORGAOCONCEDENTE_ID") + private OrgaoConcedente orgaoConcedente; + + @Column(name = "ACTIVO") + private Boolean activo; + + @Column(name = "FECMODIF") + @Temporal(TemporalType.TIMESTAMP) + private Date fecmodif; + + @Column(name = "USUARIO_ID") + private int usuarioId; + + @Transient + @NaoAuditar + private PtovtaExcecaoMultaCanc ptovtaExcecaoMultaCancClone; + + public PtovtaExcecaoMultaCanc() { + super(); + this.activo = true; + this.fecmodif = new Date(); + } + + public Integer getPtovtaExcecaoMultaCancId() { + return ptovtaExcecaoMultaCancId; + } + + public void setPtovtaExcecaoMultaCancId(Integer ptovtaExcecaoMultaCancId) { + this.ptovtaExcecaoMultaCancId = ptovtaExcecaoMultaCancId; + } + + public OrgaoConcedente getOrgaoConcedente() { + return orgaoConcedente; + } + + public void setOrgaoConcedente(OrgaoConcedente orgaoConcedente) { + this.orgaoConcedente = orgaoConcedente; + } + + public PtovtaExcecaoMultaCanc getPtovtaExcecaoMultaCancClone() { + return ptovtaExcecaoMultaCancClone; + } + + public void setPtovtaExcecaoMultaCancClone(PtovtaExcecaoMultaCanc ptovtaExcecaoMultaCancClone) { + this.ptovtaExcecaoMultaCancClone = ptovtaExcecaoMultaCancClone; + } + + public PuntoVenta getPuntoventa() { + return puntoventa; + } + + public void setPuntoventa(PuntoVenta puntoventa) { + this.puntoventa = puntoventa; + } + + public Empresa getEmpresa() { + return empresa; + } + + public void setEmpresa(Empresa empresa) { + this.empresa = empresa; + } + + + 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 int getUsuarioId() { + return usuarioId; + } + + public void setUsuarioId(int usuarioId) { + this.usuarioId = usuarioId; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((ptovtaExcecaoMultaCancId == null) ? 0 : ptovtaExcecaoMultaCancId.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (!(obj instanceof PtovtaExcecaoMultaCanc)) + return false; + PtovtaExcecaoMultaCanc other = (PtovtaExcecaoMultaCanc) obj; + if (ptovtaExcecaoMultaCancId == null) { + if (other.ptovtaExcecaoMultaCancId != null) + return false; + } else if (!ptovtaExcecaoMultaCancId.equals(other.ptovtaExcecaoMultaCancId)) + return false; + return true; + } + + @Override + public void clonar() throws CloneNotSupportedException { + ptovtaExcecaoMultaCancClone = new PtovtaExcecaoMultaCanc(); + ptovtaExcecaoMultaCancClone = (PtovtaExcecaoMultaCanc) this.clone(); + Hibernate.initialize(ptovtaExcecaoMultaCancClone.getPuntoventa()); + + } + + @Override + public PtovtaExcecaoMultaCanc getCloneObject() throws CloneNotSupportedException { + return ptovtaExcecaoMultaCancClone; + } + + @Override + public String getTextoInclusaoExclusao() { + return String.format("ID [%s]", getPtovtaExcecaoMultaCancId()); + } + + +} diff --git a/src/com/rjconsultores/ventaboletos/entidad/PuntoVenta.java b/src/com/rjconsultores/ventaboletos/entidad/PuntoVenta.java index 824c33c0f..c1a85bd6a 100644 --- a/src/com/rjconsultores/ventaboletos/entidad/PuntoVenta.java +++ b/src/com/rjconsultores/ventaboletos/entidad/PuntoVenta.java @@ -32,7 +32,6 @@ import javax.persistence.TemporalType; import javax.persistence.Transient; import org.apache.commons.lang.BooleanUtils; -import org.hibernate.Hibernate; import org.hibernate.annotations.LazyCollection; import org.hibernate.annotations.LazyCollectionOption; import org.hibernate.annotations.Where; @@ -285,6 +284,12 @@ public class PuntoVenta implements Serializable, Auditavel { @LazyCollection(LazyCollectionOption.FALSE) @Where(clause = "activo = 1") private List ptovtaAntifraudes; + + @AuditarLista(auditarEntidades = true, nome = "PtovtaExcecaoMultaCanc") + @OneToMany(mappedBy = "puntoventa", cascade = CascadeType.ALL) + @LazyCollection(LazyCollectionOption.FALSE) + @Where(clause = "activo = 1") + private List ptovtaExcecaoMultaCancList; @Column(name = "INDBLOQUEIATIPOPASSAGEM") private Boolean indBloqueiaTipoPassagem; @@ -1193,6 +1198,12 @@ public class PuntoVenta implements Serializable, Auditavel { this.ptovtaAntifraudes.remove(cat); } } + + public void removePtovtaExcecaoMultaCanc(PtovtaExcecaoMultaCanc excecaoMulta){ + if(this.ptovtaExcecaoMultaCancList != null) { + this.ptovtaExcecaoMultaCancList.remove(excecaoMulta); + } + } public Boolean getIndBloqueiaTipoPassagem() { return BooleanUtils.toBoolean(indBloqueiaTipoPassagem); @@ -1249,6 +1260,26 @@ public class PuntoVenta implements Serializable, Auditavel { public void setIndQrcodeTaxaEmbarqueRodTTL(Boolean indQrcodeTaxaEmbarqueRodTTL) { this.indQrcodeTaxaEmbarqueRodTTL = indQrcodeTaxaEmbarqueRodTTL; } + + + public Boolean getIndBloqueiaCancelamentoBilheteImpresso() { + return indBloqueiaCancelamentoBilheteImpresso; + } + + public void setIndBloqueiaCancelamentoBilheteImpresso(Boolean indBloqueiaCancelamentoBilheteImpresso) { + this.indBloqueiaCancelamentoBilheteImpresso = indBloqueiaCancelamentoBilheteImpresso; + } + + + + public List getPtovtaExcecaoMultaCancList() { + return ptovtaExcecaoMultaCancList; + } + + public void setPtovtaExcecaoMultaCancList(List ptovtaExcecaoMultaCanc) { + this.ptovtaExcecaoMultaCancList = ptovtaExcecaoMultaCanc; + } + @Override public void clonar() throws CloneNotSupportedException { diff --git a/src/com/rjconsultores/ventaboletos/enums/TipoImpressora.java b/src/com/rjconsultores/ventaboletos/enums/TipoImpressora.java index 4a153ef1e..27759497f 100644 --- a/src/com/rjconsultores/ventaboletos/enums/TipoImpressora.java +++ b/src/com/rjconsultores/ventaboletos/enums/TipoImpressora.java @@ -11,7 +11,8 @@ public enum TipoImpressora { DARUMA(4, Labels.getLabel("editarEstacionController.tipoImpressora.darumaFiscal"), true), DARUMA_BLINDADA(5, Labels.getLabel("editarEstacionController.tipoImpressora.darumaFiscalBlindada"), true), STOCK_CENTRAL(6, Labels.getLabel("editarEstacionController.tipoImpressora.stockCentral"), true), - BPE(7, Labels.getLabel("editarEstacionController.tipoImpressora.bpe"), true); + BPE(7, Labels.getLabel("editarEstacionController.tipoImpressora.bpe"), true), + MACON(8, Labels.getLabel("editarEstacionController.tipoImpressora.macon"), true); private final int codigo; private final String nome; diff --git a/src/com/rjconsultores/ventaboletos/service/ConexionRutaCombinacionService.java b/src/com/rjconsultores/ventaboletos/service/ConexionRutaCombinacionService.java index b3630c256..2d228b624 100644 --- a/src/com/rjconsultores/ventaboletos/service/ConexionRutaCombinacionService.java +++ b/src/com/rjconsultores/ventaboletos/service/ConexionRutaCombinacionService.java @@ -10,10 +10,14 @@ import com.rjconsultores.ventaboletos.vo.parada.ParadaVOConexionRuta; public interface ConexionRutaCombinacionService { - public void gerarCombinacionEntre2Eixos(List listParada1, List rutasEixoA, List rutasEixoB, List lsLocalidadesComuns, List listParada4, List rutasEixoA2, List rutasEixoB2, List localidadesGeradas, List conexoesCtrl); + public void gerarCombinacionEntre2Eixos(List listParada1, List rutasEixoA, List rutasEixoB, List lsLocalidadesComuns, List listParada4, List rutasEixoA2, List rutasEixoB2, List localidadesGeradas, List conexoesCtrl, Boolean isConexaoPorAgrupamento); public void gerarCombinacionEntre3Eixos(List listParada1, List rutasEixoA, List rutasEixoB, List lsLocalidadesComuns, List listParada4, List listParadasC, List rutasEixoA2, List rutasEixoB2, List rutasEixoC, List localidadesGeradas, List conexoesCtrl); public List extrairConexionRutaCtrl(List localidadesGeradas); + + public List getParadasByAgrupamentoId(Parada parada); + + } diff --git a/src/com/rjconsultores/ventaboletos/service/ConfTotemVentaRapidaService.java b/src/com/rjconsultores/ventaboletos/service/ConfTotemVentaRapidaService.java new file mode 100644 index 000000000..c13ba0df5 --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/service/ConfTotemVentaRapidaService.java @@ -0,0 +1,26 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ + +package com.rjconsultores.ventaboletos.service; + +import java.util.List; + +import com.rjconsultores.ventaboletos.entidad.ConfTotemVentaRapida; +import com.rjconsultores.ventaboletos.entidad.Parada; + +/** + * + * @author wallace + */ +public interface ConfTotemVentaRapidaService extends GenericService{ + + ConfTotemVentaRapida buscarOrigemDestino(Parada origem, Parada destino); + + List buscarOrigem(Parada origen); + + void apagarPorOrigem(Parada selectedObject); + + +} diff --git a/src/com/rjconsultores/ventaboletos/service/ImportacaoClientesService.java b/src/com/rjconsultores/ventaboletos/service/ImportacaoClientesService.java index f60fd219d..36ef4f502 100644 --- a/src/com/rjconsultores/ventaboletos/service/ImportacaoClientesService.java +++ b/src/com/rjconsultores/ventaboletos/service/ImportacaoClientesService.java @@ -14,4 +14,7 @@ public interface ImportacaoClientesService { public String[] lerArquivoExcel(Media media, List empresas); public Integer[] salvarClientes(String[] cliente, List empresas) throws Exception; + + public String[] lerArquivoPolicialExcel(Media media, List empresas); + } diff --git a/src/com/rjconsultores/ventaboletos/service/ParadaService.java b/src/com/rjconsultores/ventaboletos/service/ParadaService.java index aac9bbd51..68f193036 100644 --- a/src/com/rjconsultores/ventaboletos/service/ParadaService.java +++ b/src/com/rjconsultores/ventaboletos/service/ParadaService.java @@ -15,6 +15,7 @@ import com.rjconsultores.ventaboletos.entidad.Ruta; import com.rjconsultores.ventaboletos.entidad.TipoParada; import com.rjconsultores.ventaboletos.exception.BusinessException; import com.rjconsultores.ventaboletos.utilerias.RegistroConDependenciaException; +import com.rjconsultores.ventaboletos.vo.parada.ParadaVO; /** * @@ -46,4 +47,7 @@ public interface ParadaService { public List buscaParadaRegionMetropolitana(RegionMetropolitana regionMetropolitana); public List buscarPorAgrupamentoParadaId(AgrupamentoParada agrupamentoParada); + + public List buscarDestinosPorOrigem(Integer origemId); + } diff --git a/src/com/rjconsultores/ventaboletos/service/PtovtaExcecaoMultaCancService.java b/src/com/rjconsultores/ventaboletos/service/PtovtaExcecaoMultaCancService.java new file mode 100644 index 000000000..636fc73a5 --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/service/PtovtaExcecaoMultaCancService.java @@ -0,0 +1,7 @@ +package com.rjconsultores.ventaboletos.service; + +import com.rjconsultores.ventaboletos.entidad.PtovtaExcecaoMultaCanc; + +public interface PtovtaExcecaoMultaCancService extends GenericService { + +} diff --git a/src/com/rjconsultores/ventaboletos/service/SapService.java b/src/com/rjconsultores/ventaboletos/service/SapService.java index 7a00c7397..6b73cf0e9 100644 --- a/src/com/rjconsultores/ventaboletos/service/SapService.java +++ b/src/com/rjconsultores/ventaboletos/service/SapService.java @@ -5,6 +5,7 @@ import java.util.List; import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.FechamentoCntcorrente; +import com.rjconsultores.ventaboletos.entidad.PuntoVenta; import com.rjconsultores.ventaboletos.vo.integracao.FechamentoCntCorrenteVO; public interface SapService extends GenericService { @@ -13,6 +14,8 @@ public interface SapService extends GenericService public List obtenerTodosParaRemessa(Empresa empresa, Date dataDe, Date dataAte, Boolean reenviar); + public List obtenerTodosParaRemessa(Empresa empresa, Date dataDe, Date dataAte, Boolean reenviar, PuntoVenta puntoVenta); + public void integracaoSapAutomatica() throws Exception; } diff --git a/src/com/rjconsultores/ventaboletos/service/TipoOcupacionService.java b/src/com/rjconsultores/ventaboletos/service/TipoOcupacionService.java index 62392e7b9..19239467d 100644 --- a/src/com/rjconsultores/ventaboletos/service/TipoOcupacionService.java +++ b/src/com/rjconsultores/ventaboletos/service/TipoOcupacionService.java @@ -13,6 +13,8 @@ import java.util.List; */ public interface TipoOcupacionService extends GenericService { + public List buscar(String desctipo); + public List buscar(String desctipo, String cvetipoocupacion); public List buscarClave(String cvetipoocupacion); diff --git a/src/com/rjconsultores/ventaboletos/service/impl/ConexionRutaCombinacionServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/ConexionRutaCombinacionServiceImpl.java index 16164e4c0..af0ce1a4c 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/ConexionRutaCombinacionServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/ConexionRutaCombinacionServiceImpl.java @@ -42,7 +42,7 @@ public class ConexionRutaCombinacionServiceImpl implements ConexionRutaCombinaci return cacheLocalidades; } - private void gerarCombinacao(LinkedList> lists, List rutasEixoA, List rutasEixoB, List rutasEixoC, List localidadesGeradas, List conexoesCtrl, Map cacheLocalidades) { + private void gerarCombinacao(LinkedList> lists, List rutasEixoA, List rutasEixoB, List rutasEixoC, List localidadesGeradas, List conexoesCtrl, Map cacheLocalidades, Boolean isConexaoPorAgrupamento) { Set combinacoes = new TreeSet(); @@ -66,7 +66,7 @@ public class ConexionRutaCombinacionServiceImpl implements ConexionRutaCombinaci Set rutasVendaB = rutaCombinacionService.rutasCombinacionVenda(rutasEixoB); if(rutasEixoC == null) { - gerarLocalidadesEixoAB(rutasEixoA, rutasEixoB, localidadesGeradas, combinacoes, conexoesCtrl, cacheLocalidades, rutasVendaA, rutasVendaB); + gerarLocalidadesEixoAB(rutasEixoA, rutasEixoB, localidadesGeradas, combinacoes, conexoesCtrl, cacheLocalidades, rutasVendaA, rutasVendaB, isConexaoPorAgrupamento); }else { Set rutasVendaC = rutaCombinacionService.rutasCombinacionVenda(rutasEixoC); gerarLocalidadesEixoABC(rutasEixoA, rutasEixoB,rutasEixoC, localidadesGeradas, combinacoes, conexoesCtrl, cacheLocalidades, rutasVendaA, rutasVendaB, rutasVendaC ); @@ -76,7 +76,7 @@ public class ConexionRutaCombinacionServiceImpl implements ConexionRutaCombinaci } - private void gerarLocalidadesEixoAB(List rutasEixoA, List rutasEixoB, List localidadesGeradas, Set combinacoes, List conexoesCtrl, Map cacheLocalidades, Set rutasVendaA, Set rutasVendaB) { + private void gerarLocalidadesEixoAB(List rutasEixoA, List rutasEixoB, List localidadesGeradas, Set combinacoes, List conexoesCtrl, Map cacheLocalidades, Set rutasVendaA, Set rutasVendaB, Boolean isConexaoPorAgrupamento) { short i = 1; String[] valoresCalculados; @@ -105,7 +105,7 @@ public class ConexionRutaCombinacionServiceImpl implements ConexionRutaCombinaci conexionCtrl, conexionRutaCtrl, rutaEixoB.getDescSentido()); i++; - adicionarLocalidadeGerada(conexionCtrl, localidadesGeradas, trechoA, trechoB, null, rutasVendaA, rutasVendaB, new HashSet()); + adicionarLocalidadeGerada(conexionCtrl, localidadesGeradas, trechoA, trechoB, null, rutasVendaA, rutasVendaB, new HashSet(), isConexaoPorAgrupamento); i = 1; } @@ -151,7 +151,7 @@ public class ConexionRutaCombinacionServiceImpl implements ConexionRutaCombinaci } - private void adicionarLocalidadeGerada(ConexionCtrlVO conexionCtrl, List localidadesGeradas, ParadaVOConexionRuta trechoA, ParadaVOConexionRuta trechoB, ParadaVOConexionRuta trechoC, Set rutasVendaA, Set rutasVendaB, Set rutasVendaC) { + private void adicionarLocalidadeGerada(ConexionCtrlVO conexionCtrl, List localidadesGeradas, ParadaVOConexionRuta trechoA, ParadaVOConexionRuta trechoB, ParadaVOConexionRuta trechoC, Set rutasVendaA, Set rutasVendaB, Set rutasVendaC, Boolean isConexaoPorAgrupamento) { boolean isTrechoAVende = false; boolean isTrechoBVende = false; @@ -172,7 +172,7 @@ public class ConexionRutaCombinacionServiceImpl implements ConexionRutaCombinaci } } - if(isTrechoAVende && isTrechoBVende && isTrechoCVende) { + if((isTrechoAVende && isTrechoBVende && isTrechoCVende) || Boolean.TRUE.equals(isConexaoPorAgrupamento)) { localidadesGeradas.add(trechoA); localidadesGeradas.add(trechoB); if(trechoC != null) { @@ -220,7 +220,7 @@ public class ConexionRutaCombinacionServiceImpl implements ConexionRutaCombinaci conexionCtrl, conexionRutaCtrl, rutaEixoC.getDescSentido()); i++; - adicionarLocalidadeGerada(conexionCtrl, localidadesGeradas, trechoA, trechoB, trechoC, rutasVendaA, rutasVendaB, rutasVendaC); + adicionarLocalidadeGerada(conexionCtrl, localidadesGeradas, trechoA, trechoB, trechoC, rutasVendaA, rutasVendaB, rutasVendaC, null); i = 1; } @@ -244,7 +244,7 @@ public class ConexionRutaCombinacionServiceImpl implements ConexionRutaCombinaci conexoesCtrl.addAll(temp); } - public void gerarCombinacionEntre2Eixos(List listParada1, List rutasEixoA, List rutasEixoB, List lsLocalidadesComuns, List listParada4, List rutasEixoA2, List rutasEixoB2, List localidadesGeradas, List conexoesCtrl) { + public void gerarCombinacionEntre2Eixos(List listParada1, List rutasEixoA, List rutasEixoB, List lsLocalidadesComuns, List listParada4, List rutasEixoA2, List rutasEixoB2, List localidadesGeradas, List conexoesCtrl, Boolean isConexaoPorAgrupamento) { for (int i = 0; i < lsLocalidadesComuns.size(); i++) { @@ -279,11 +279,24 @@ public class ConexionRutaCombinacionServiceImpl implements ConexionRutaCombinaci } Map cacheLocalidades = criandoCacheLocalidades(localidades); - gerarCombinacao(lists, rutasEixoA, rutasEixoB, null, localidadesGeradas, conexoesCtrl, cacheLocalidades); + gerarCombinacao(lists, rutasEixoA, rutasEixoB, null, localidadesGeradas, conexoesCtrl, cacheLocalidades, isConexaoPorAgrupamento); } } + + public List getParadasByAgrupamentoId(Parada parada) { + List localidades = new ArrayList(); + List paradaAgrupamentoList = paradaService.buscarPorAgrupamentoParadaId(parada.getAgrupamentoParada()); + if(paradaAgrupamentoList!=null && !paradaAgrupamentoList.isEmpty()) { + for (Parada paradaAgrupamento : paradaAgrupamentoList) { + if(!localidades.contains(paradaAgrupamento)) { + localidades.add(paradaAgrupamento); + } + } + } + return localidades; + } public void gerarCombinacionEntre3Eixos(List listParada1, List rutasEixoA, List rutasEixoB, List lsLocalidadesComuns, List listParada4, List listParadasC, List rutasEixoA2, List rutasEixoB2, List rutasEixoC, List localidadesGeradas, List conexoesCtrl) { @@ -308,7 +321,7 @@ public class ConexionRutaCombinacionServiceImpl implements ConexionRutaCombinaci localidades.addAll(listParadasC); Map cacheLocalidades = criandoCacheLocalidades(localidades); - gerarCombinacao(lists, rutasEixoA, rutasEixoB, rutasEixoC, localidadesGeradas, conexoesCtrl, cacheLocalidades); + gerarCombinacao(lists, rutasEixoA, rutasEixoB, rutasEixoC, localidadesGeradas, conexoesCtrl, cacheLocalidades, null); } } diff --git a/src/com/rjconsultores/ventaboletos/service/impl/ConexionRutaLocalidadeRemovidaServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/ConexionRutaLocalidadeRemovidaServiceImpl.java index ad45a77bd..b4254f219 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/ConexionRutaLocalidadeRemovidaServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/ConexionRutaLocalidadeRemovidaServiceImpl.java @@ -72,7 +72,6 @@ public class ConexionRutaLocalidadeRemovidaServiceImpl implements ConexionRutaLo /** *Obtem a lista de paradas removidas pela lista de paradas */ - @Transactional public List obtenerPorParadaList(List paradaList) { List paradaIdList = new ArrayList(); for (Parada parada : paradaList) { diff --git a/src/com/rjconsultores/ventaboletos/service/impl/ConfTotemVentaRapidaServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/ConfTotemVentaRapidaServiceImpl.java new file mode 100644 index 000000000..646673e5e --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/service/impl/ConfTotemVentaRapidaServiceImpl.java @@ -0,0 +1,98 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ + +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.ConfTotemVentaRapidaDAO; +import com.rjconsultores.ventaboletos.entidad.ConfTotemVentaRapida; +import com.rjconsultores.ventaboletos.entidad.Parada; +import com.rjconsultores.ventaboletos.service.ConfTotemVentaRapidaService; +import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; + +/** + * + * @author wallace + */ +@Service("confTotemVentaRapidaService") +public class ConfTotemVentaRapidaServiceImpl implements ConfTotemVentaRapidaService { + + @Autowired + private ConfTotemVentaRapidaDAO confTotemVentaRapidaDAO; + + @Override + public List obtenerTodos() { + return confTotemVentaRapidaDAO.obtenerTodos(); + } + + @Override + public ConfTotemVentaRapida obtenerID(Integer id) { + return confTotemVentaRapidaDAO.obtenerID(id); + } + + @Transactional + @Override + public ConfTotemVentaRapida suscribir(ConfTotemVentaRapida entidad) { + + entidad.setActivo(Boolean.TRUE); + entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + entidad.setFecmodif(Calendar.getInstance().getTime()); + + return confTotemVentaRapidaDAO.suscribir(entidad); + } + + @Transactional + @Override + public ConfTotemVentaRapida actualizacion(ConfTotemVentaRapida entidad) { + + + entidad.setActivo(Boolean.TRUE); + entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + entidad.setFecmodif(Calendar.getInstance().getTime()); + return confTotemVentaRapidaDAO.actualizacion(entidad); + } + + @Transactional + @Override + public void borrar(ConfTotemVentaRapida entidad) { + + entidad.setActivo(Boolean.FALSE); + entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + entidad.setFecmodif(Calendar.getInstance().getTime()); + + confTotemVentaRapidaDAO.actualizacion(entidad); + + } + + @Override + public ConfTotemVentaRapida buscarOrigemDestino(Parada origem, Parada destino) { + return confTotemVentaRapidaDAO.buscarOrigemDestino(origem, destino); + } + + @Override + public List buscarOrigem(Parada origem) { + return confTotemVentaRapidaDAO.buscarOrigem(origem); + } + + @Override + @Transactional + public void apagarPorOrigem(Parada paradaOrigem) { + + for (ConfTotemVentaRapida confTotemVentaRapida : confTotemVentaRapidaDAO.buscarOrigem(paradaOrigem)) { + confTotemVentaRapida.setActivo(Boolean.FALSE); + confTotemVentaRapida.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + confTotemVentaRapida.setFecmodif(Calendar.getInstance().getTime()); + confTotemVentaRapidaDAO.actualizacion(confTotemVentaRapida); + } + + } + +} diff --git a/src/com/rjconsultores/ventaboletos/service/impl/ConferenciaComissaoServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/ConferenciaComissaoServiceImpl.java index dc1b5e984..bdd484945 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/ConferenciaComissaoServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/ConferenciaComissaoServiceImpl.java @@ -47,6 +47,7 @@ import com.rjconsultores.ventaboletos.vo.comissao.ConferenciaComissaoVO; import com.rjconsultores.ventaboletos.vo.comissao.DiaConferenciaComissaoVO; import com.rjconsultores.ventaboletos.vo.comissao.EtiquetaMalote; import com.rjconsultores.ventaboletos.vo.comissao.EventosFinanceirosVO; +import com.rjconsultores.ventaboletos.vo.comissao.FormaPagoEventosFinanceirosVO; import com.rjconsultores.ventaboletos.vo.comissao.FormapagoVO; import com.rjconsultores.ventaboletos.vo.comissao.LogConferenciaVO; import com.rjconsultores.ventaboletos.vo.comissao.OcdVO; @@ -575,11 +576,13 @@ public class ConferenciaComissaoServiceImpl implements ConferenciaComissaoServic // calculando os movimentos financeiros for (EventosFinanceirosVO eventosFinanceiros : lsEventosFinanceiros) { - if (formaspagosDeposito.contains(eventosFinanceiros.getFormapagoId())) { - if (eventosFinanceiros.isCredito()) { - totalDeposito = MoneyHelper.somar(totalDeposito, eventosFinanceiros.getImpingreso()); - } else if (eventosFinanceiros.isDebito()) { - totalDeposito = MoneyHelper.subtrair(totalDeposito, eventosFinanceiros.getImpingreso().abs()); + for (FormaPagoEventosFinanceirosVO formaPagamento : eventosFinanceiros.getFormapagos()) { + if (formaspagosDeposito.contains(formaPagamento.getFormapagoId())) { + if (eventosFinanceiros.isCredito()) { + totalDeposito = MoneyHelper.somar(totalDeposito, formaPagamento.getImporte()); + } else if (eventosFinanceiros.isDebito()) { + totalDeposito = MoneyHelper.subtrair(totalDeposito, formaPagamento.getImporte().abs()); + } } } } @@ -630,7 +633,8 @@ public class ConferenciaComissaoServiceImpl implements ConferenciaComissaoServic } for (EventosFinanceirosVO eventosFinanceiros : lsEventosFinanceiros) { - FormapagoVO formapagoEventoFinanceiro = new FormapagoVO(eventosFinanceiros.getFormapagoId(), eventosFinanceiros.getDescpago(), null, BigDecimal.ZERO); + for(FormaPagoEventosFinanceirosVO formaPagoEventosFinanceirosVO: eventosFinanceiros.getFormapagos()) { + FormapagoVO formapagoEventoFinanceiro = new FormapagoVO(formaPagoEventosFinanceirosVO.getFormapagoId(), formaPagoEventosFinanceirosVO.getDescpago(), null, BigDecimal.ZERO); if (totalFormapagos.contains(formapagoEventoFinanceiro)) { formapagoEventoFinanceiro = totalFormapagos.get(totalFormapagos.indexOf(formapagoEventoFinanceiro)); } else { @@ -638,9 +642,10 @@ public class ConferenciaComissaoServiceImpl implements ConferenciaComissaoServic } if (eventosFinanceiros.isCredito()) { - formapagoEventoFinanceiro.add(eventosFinanceiros.getImpingreso()); + formapagoEventoFinanceiro.add(formaPagoEventosFinanceirosVO.getImporte()); } else if (eventosFinanceiros.isDebito()) { - formapagoEventoFinanceiro.subtract(eventosFinanceiros.getImpingreso().abs()); + formapagoEventoFinanceiro.subtract(formaPagoEventosFinanceirosVO.getImporte().abs()); + } } } diff --git a/src/com/rjconsultores/ventaboletos/service/impl/ImportacaoClientesServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/ImportacaoClientesServiceImpl.java index d8d8c1832..efbd2578d 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/ImportacaoClientesServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/ImportacaoClientesServiceImpl.java @@ -32,10 +32,12 @@ import com.rjconsultores.ventaboletos.entidad.ClienteFidelidad; import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.TarjetaFidelidad; import com.rjconsultores.ventaboletos.entidad.TipoIdentificacion; +import com.rjconsultores.ventaboletos.entidad.TipoOcupacion; import com.rjconsultores.ventaboletos.passageirofrequente.vo.ClienteExcelVo; import com.rjconsultores.ventaboletos.service.ClienteService; import com.rjconsultores.ventaboletos.service.ImportacaoClientesService; import com.rjconsultores.ventaboletos.service.TipoIdentificacionService; +import com.rjconsultores.ventaboletos.service.TipoOcupacionService; import com.rjconsultores.ventaboletos.utilerias.ApplicationProperties; import com.rjconsultores.ventaboletos.utilerias.CustomEnum; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; @@ -43,10 +45,15 @@ import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; @Service("importacaoClientesService") public class ImportacaoClientesServiceImpl implements ImportacaoClientesService { + @Autowired + private TipoOcupacionService tipoOcupacionService; + @Autowired TipoIdentificacionService tipoIdentificacionService; + @Autowired private ClienteService clienteService; + private static Logger log = Logger.getLogger(ImportacaoClientesServiceImpl.class); @Override @@ -165,7 +172,7 @@ public class ImportacaoClientesServiceImpl implements ImportacaoClientesService StringBuilder erros = new StringBuilder(); Integer inseridos = 0; Integer atualizados = 0; - Integer desconsiderados =0; + Integer desconsiderados = 0; InputStream isMExcel = media.getStreamData(); Sheet sheet = null; @@ -184,30 +191,30 @@ public class ImportacaoClientesServiceImpl implements ImportacaoClientesService wb = new XSSFWorkbook(isMExcel); sheet = wb.getSheetAt(0); } catch (IOException e) { - log.error("",e); + log.error("", e); } } int rows = sheet.getPhysicalNumberOfRows(); - - log.info(String.format("Quantidade cliente:%s",rows)); + + log.info(String.format("Quantidade cliente:%s", rows)); if (validaSheet(sheet)) { usaCPFComoFidelidade = ApplicationProperties.getInstance().isCustomHabilitado(CustomEnum.USA_CPF_COMO_FIDELIDADE.getDescricao()); - log.info(String.format("usaCPFComoFidelidade:%s",usaCPFComoFidelidade)); + log.info(String.format("usaCPFComoFidelidade:%s", usaCPFComoFidelidade)); try { for (index = 1; index < rows; index++) { - log.info(String.format("index cliente:%s",index)); - + log.info(String.format("index cliente:%s", index)); + Row row = sheet.getRow(index); - if (row == null){ + if (row == null) { log.info("index/row empty"); continue; } - + Iterator cellIterator = row.cellIterator(); ClienteExcelVo cliente = new ClienteExcelVo(); - + while (cellIterator.hasNext()) { Cell cell = cellIterator.next(); switch (cell.getColumnIndex()) { @@ -241,7 +248,7 @@ public class ImportacaoClientesServiceImpl implements ImportacaoClientesService cliente.setFax(cell.getStringCellValue()); break; case 7: - + String dt = null; if (cell.getCellType() == Cell.CELL_TYPE_STRING) { @@ -250,7 +257,7 @@ public class ImportacaoClientesServiceImpl implements ImportacaoClientesService dt = cell.getDateCellValue() != null ? new SimpleDateFormat("dd/MM/yyyy").format(cell.getDateCellValue()) : null; } cliente.setNascimento(dt); - + break; case 8: cell.setCellType(Cell.CELL_TYPE_STRING); @@ -275,17 +282,17 @@ public class ImportacaoClientesServiceImpl implements ImportacaoClientesService } } - log.info(String.format("cliente:%s cpf:%s",cliente.getNome(),cliente.getCpf())); - + log.info(String.format("cliente:%s cpf:%s", cliente.getNome(), cliente.getCpf())); + if (validaDadosPlanilha(cliente, erros)) { log.info("enviado para gravação..."); - try{ - Integer[] gravados = salvarClienteExcel(empresas, usaCPFComoFidelidade, cliente, tipoIdentificacionUno, tipoIdentificacionDoos); + try { + Integer[] gravados = salvarClienteExcel(empresas, usaCPFComoFidelidade, cliente, tipoIdentificacionUno, tipoIdentificacionDoos, false); inseridos = gravados[0] + inseridos; atualizados = gravados[1] + atualizados; desconsiderados = gravados[2] + desconsiderados; - }catch(Throwable e){ - log.error("Erro na gravação do registro. Favor revisar",e); + } catch (Throwable e) { + log.error("Erro na gravação do registro. Favor revisar", e); log.info("continuando importação"); } @@ -295,14 +302,14 @@ public class ImportacaoClientesServiceImpl implements ImportacaoClientesService erros.append(index + 1).append(" do arquivo."); } } - qtdeGravados.append("Gravados ").append(inseridos + atualizados).append(" clientes de ").append(index-1).append(" importados.\n"); + qtdeGravados.append("Gravados ").append(inseridos + atualizados).append(" clientes de ").append(index - 1).append(" importados.\n"); qtdeGravados.append("Desconsiderados ").append(desconsiderados).append(" clientes.\n"); qtdeGravados.append("Atualizados ").append(atualizados).append(" clientes.\n"); qtdeGravados.append("Inseridos ").append(inseridos).append(" novos clientes."); String[] resultado = { qtdeGravados.toString(), erros.toString() }; - + log.info("importação finalizada"); - + return resultado; } catch (ArrayIndexOutOfBoundsException e) { @@ -326,13 +333,20 @@ public class ImportacaoClientesServiceImpl implements ImportacaoClientesService } - private Integer[] salvarClienteExcel(List empresas, Boolean usaCPFComoFidelidade, ClienteExcelVo cliente, TipoIdentificacion tipoIdentificacionUno, TipoIdentificacion tipoIdentificacionDoos) throws ParseException { + private Integer[] salvarClienteExcel(List empresas, Boolean usaCPFComoFidelidade, ClienteExcelVo cliente, + TipoIdentificacion tipoIdentificacionUno, TipoIdentificacion tipoIdentificacionDoos, boolean isImportacaoPolicial) throws ParseException { Integer inseridos = new Integer(0); Integer atualizados = new Integer(0); Integer desconsiderados = new Integer(0); Integer[] gravados = { 0, 0, 0 }; Cliente clienteGravar = new Cliente(); - List lsCliente = clienteService.buscarPorDocumento(cliente.getCpf()); + + String docBusca = cliente.getCpf(); + if (isImportacaoPolicial) { + docBusca = cliente.getRg(); + } + + List lsCliente = clienteService.buscarPorDocumento(docBusca); if (lsCliente != null && !lsCliente.isEmpty()) { if (ApplicationProperties.getInstance().isCustomHabilitado(CustomEnum.IS_DESCONSIDERA_CLIENTE_NA_BASE.getDescricao())) { @@ -344,23 +358,45 @@ public class ImportacaoClientesServiceImpl implements ImportacaoClientesService } } - // if (true) { - criarFidelidadesTodasEmpresas(clienteGravar, empresas, cliente); - // } - clienteGravar.setFecnacimiento(StringUtils.isEmpty(cliente.getNascimento()) ? null : retornaDate(cliente.getNascimento())); - clienteGravar.setDesccorreo(cliente.getEmail()); + if (usaCPFComoFidelidade == null) + usaCPFComoFidelidade = false; + + criarFidelidadesTodasEmpresas(clienteGravar, empresas, cliente, usaCPFComoFidelidade); + clienteGravar.setNombcliente(cliente.getNome()); - clienteGravar.setNumfax(cliente.getFax()); - clienteGravar.setNumtelefono(cliente.getTelefone()); - clienteGravar.setNumtelefonodos(cliente.getCelular()); - clienteGravar.setIndsexo(cliente.getSexo()); - clienteGravar.setNumIdentificaUno(cliente.getCpf()); - clienteGravar.setTipoIdentificacionUno(tipoIdentificacionUno); - if (!StringUtils.isEmpty(cliente.getRg())) { - clienteGravar.setNumIdentificaDos(cliente.getRg()); - clienteGravar.setTipoIdentificacionDos(tipoIdentificacionDoos); + + if (isImportacaoPolicial) { + if (!StringUtils.isEmpty(cliente.getRg())) { + clienteGravar.setNumIdentificaUno(cliente.getRg()); + clienteGravar.setTipoIdentificacionUno(tipoIdentificacionUno); + } + + List ls = tipoOcupacionService.buscar("POLICIAL MILITAR", null); + if (ls == null || ls.isEmpty()) { + return null; + } else { + clienteGravar.setTipoocupacionId(ls != null && !ls.isEmpty() ? ls.get(0) : null); + } + + } else { + clienteGravar.setFecnacimiento(StringUtils.isEmpty(cliente.getNascimento()) ? null : retornaDate(cliente.getNascimento())); + clienteGravar.setDesccorreo(cliente.getEmail()); + + clienteGravar.setNumfax(cliente.getFax()); + clienteGravar.setNumtelefono(cliente.getTelefone()); + clienteGravar.setNumtelefonodos(cliente.getCelular()); + clienteGravar.setIndsexo(cliente.getSexo()); + clienteGravar.setNumIdentificaUno(cliente.getCpf()); + clienteGravar.setTipoIdentificacionUno(tipoIdentificacionUno); + + if (!StringUtils.isEmpty(cliente.getRg())) { + clienteGravar.setNumIdentificaDos(cliente.getRg()); + clienteGravar.setTipoIdentificacionDos(tipoIdentificacionDoos); + } + + setDirecion(clienteGravar, cliente); } - setDirecion(clienteGravar, cliente); + if (clienteGravar.getClienteId() == null) { clienteGravar.setFecCadastro(new Date()); clienteService.suscribir(clienteGravar); @@ -397,7 +433,7 @@ public class ImportacaoClientesServiceImpl implements ImportacaoClientesService } - private void criarFidelidadesTodasEmpresas(Cliente cliente, List empresas, ClienteExcelVo cExce) { + private void criarFidelidadesTodasEmpresas(Cliente cliente, List empresas, ClienteExcelVo cExce, Boolean usaCPFComoFidelidade) { Boolean achou = false; List fidelidades = null; @@ -405,7 +441,7 @@ public class ImportacaoClientesServiceImpl implements ImportacaoClientesService if (cliente.getClienteId() == null) { fidelidades = new ArrayList(); for (Empresa e : empresas) { - fidelidades.add(criarFidelidade(e, cExce)); + fidelidades.add(criarFidelidade(e, cExce, usaCPFComoFidelidade)); } cliente.setListClienteFidelidad(fidelidades); @@ -413,7 +449,7 @@ public class ImportacaoClientesServiceImpl implements ImportacaoClientesService fidelidades = cliente.getListClienteFidelidad(); if (fidelidades == null || fidelidades.isEmpty()) { for (Empresa e : empresas) { - fidelidades.add(criarFidelidade(e, cExce)); + fidelidades.add(criarFidelidade(e, cExce, usaCPFComoFidelidade)); } } else { for (Empresa e : empresas) { @@ -432,7 +468,7 @@ public class ImportacaoClientesServiceImpl implements ImportacaoClientesService } } if (!achou) { - fidelidades.add(criarFidelidade(e, cExce)); + fidelidades.add(criarFidelidade(e, cExce, usaCPFComoFidelidade)); } achou = false; } @@ -441,43 +477,10 @@ public class ImportacaoClientesServiceImpl implements ImportacaoClientesService } - // private List criarFidelidadesTodasEmpresas(List fidelidades, List empresas, ClienteExcelVo cExce) { - // - // List result = new ArrayList(); - // Boolean achou = false; - // if (fidelidades==null || fidelidades.isEmpty()) { - // for (Empresa e : empresas) { - // result.add(criarFidelidade(e, cExce)); - // } - // } else { - // for (Empresa e : empresas) { - // for (ClienteFidelidad f : fidelidades) { - // if (f.getEmpresa().equals(e)) { - // f.setActivo(true); - // f.setFecmodif(new Date()); - // TarjetaFidelidad tarjetaFidelidad = f.getTarjetaFidelidad(); - // if(tarjetaFidelidad!=null){ - // tarjetaFidelidad.setActivo(true); - // tarjetaFidelidad.setFecmodif(new Date()); - // } - // result.add(f); - // achou = true; - // break; - // } - // } - // if (!achou) { - // result.add(criarFidelidade(e, cExce)); - // } - // achou = false; - // } - // } - // return result; - // } - - private ClienteFidelidad criarFidelidade(Empresa e, ClienteExcelVo cExcel) { + private ClienteFidelidad criarFidelidade(Empresa e, ClienteExcelVo cExcel, Boolean usaCPFComoFidelidade) { ClienteFidelidad clienteFidelidad = new ClienteFidelidad(); TarjetaFidelidad tarjetaFidelidad = new TarjetaFidelidad(); - tarjetaFidelidad.setNumTarjeta(cExcel.getCpf()); + tarjetaFidelidad.setNumTarjeta(usaCPFComoFidelidade ? cExcel.getCpf() : cExcel.getRg()); tarjetaFidelidad.setActivo(true); tarjetaFidelidad.setFecmodif(Calendar.getInstance().getTime()); tarjetaFidelidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); @@ -624,6 +627,29 @@ public class ImportacaoClientesServiceImpl implements ImportacaoClientesService return true; } + private Boolean validaSheetImportacaoPolicial(Sheet sheet) { + + Row row = sheet.getRow(0); + Iterator cellIterator = row.cellIterator(); + + while (cellIterator.hasNext()) { + Cell cell = cellIterator.next(); + switch (cell.getColumnIndex()) { + case 0: + if (cell.getStringCellValue().equalsIgnoreCase(Labels.getLabel("importarClientesPolicialController.HEADERCOLUMN.nome"))) { + break; + } + return false; + case 1: + if (cell.getStringCellValue().equalsIgnoreCase(Labels.getLabel("importarClientesPolicialController.HEADERCOLUMN.rg"))) { + break; + } + return false; + } + } + return true; + } + private Date retornaDate(String date) throws ParseException { SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); @@ -655,4 +681,124 @@ public class ImportacaoClientesServiceImpl implements ImportacaoClientesService return true; } + @Override + public String[] lerArquivoPolicialExcel(Media media, List empresas) { + + List lsTipoIdentificacion = tipoIdentificacionService.obtenerTodos(); + TipoIdentificacion tipoIdentificacionUno = null; + + for (TipoIdentificacion t : lsTipoIdentificacion) { + + if (t.getDesctipo().equalsIgnoreCase("rg")) { + tipoIdentificacionUno = t; + } + if (tipoIdentificacionUno != null) + break; + } + + Integer index = 1; + StringBuilder qtdeGravados = new StringBuilder(); + StringBuilder erros = new StringBuilder(); + Integer inseridos = 0; + Integer atualizados = 0; + Integer desconsiderados = 0; + InputStream isMExcel = media.getStreamData(); + Sheet sheet = null; + + if (media.getFormat().equals("xls")) { + HSSFWorkbook wb; + try { + wb = new HSSFWorkbook(isMExcel); + sheet = wb.getSheetAt(0); + } catch (IOException e) { + e.printStackTrace(); + } + + } else if (media.getFormat().equals("xlsx")) { + XSSFWorkbook wb; + try { + wb = new XSSFWorkbook(isMExcel); + sheet = wb.getSheetAt(0); + } catch (IOException e) { + log.error("", e); + } + } + + int rows = sheet.getPhysicalNumberOfRows(); + + log.info(String.format("Quantidade cliente:%s", rows)); + + if (validaSheetImportacaoPolicial(sheet)) { + + try { + for (index = 1; index < rows; index++) { + log.info(String.format("index cliente:%s", index)); + + Row row = sheet.getRow(index); + if (row == null) { + log.info("index/row empty"); + continue; + } + + Iterator cellIterator = row.cellIterator(); + ClienteExcelVo cliente = new ClienteExcelVo(); + + while (cellIterator.hasNext()) { + Cell cell = cellIterator.next(); + switch (cell.getColumnIndex()) { + case 0: + cell.setCellType(Cell.CELL_TYPE_STRING); + cliente.setNome(cell.getStringCellValue()); + break; + case 1: + cell.setCellType(Cell.CELL_TYPE_STRING); + cliente.setRg(cell.getStringCellValue()); + break; + } + } + log.info(String.format("cliente:%s rg:%s", cliente.getNome(), cliente.getRg())); + + log.info("enviado para gravação..."); + try { + Integer[] gravados = salvarClienteExcel(empresas, false, cliente, tipoIdentificacionUno, null, true); + inseridos = gravados[0] + inseridos; + atualizados = gravados[1] + atualizados; + desconsiderados = gravados[2] + desconsiderados; + } catch (Throwable e) { + log.error("Erro na gravação do registro. Favor revisar", e); + log.info("continuando importação"); + } + + } + qtdeGravados.append("Gravados ").append(inseridos + atualizados).append(" clientes de ").append(index - 1).append(" importados.\n"); + qtdeGravados.append("Desconsiderados ").append(desconsiderados).append(" clientes.\n"); + qtdeGravados.append("Atualizados ").append(atualizados).append(" clientes.\n"); + qtdeGravados.append("Inseridos ").append(inseridos).append(" novos clientes."); + String[] resultado = { qtdeGravados.toString(), erros.toString() }; + + log.info("importação finalizada"); + + return resultado; + + } catch (ArrayIndexOutOfBoundsException e) { + e.printStackTrace(); + String msg = "Erro ao gravar cliente na linha " + (index + 1) + " do arquivo."; + erros.append(msg); + String[] resultado = { "Houve erro ao gravar os clientes, consulte o arquivo de erros.", erros.toString() }; + return resultado; + } catch (Exception e) { + e.printStackTrace(); + erros.append("Linha ").append(index).append(" do arquivo de clientes, erro: ").append(e.getCause().getCause()).append("\n"); + String[] resultado = { "Houve erro ao gravar os clientes, consulte o arquivo de erros.", erros.toString() }; + return resultado; + } + + } else { + erros.append("A estrutura do arquivo esta com erro ").append("\n"); + String[] resultado = { "Houve erro ao gravar os clientes, consulte o arquivo de erros.", erros.toString() }; + return resultado; + } + + } + } diff --git a/src/com/rjconsultores/ventaboletos/service/impl/ImportacaoRetornoBancarioServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/ImportacaoRetornoBancarioServiceImpl.java index a5241d8c7..1c7e0b86d 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/ImportacaoRetornoBancarioServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/ImportacaoRetornoBancarioServiceImpl.java @@ -4,6 +4,7 @@ import java.io.BufferedReader; import java.io.ByteArrayInputStream; import java.io.IOException; import java.io.InputStreamReader; +import java.math.BigDecimal; import java.sql.SQLException; import org.apache.log4j.Logger; @@ -24,6 +25,9 @@ import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; @Service("importacaoRetornoBancarioService") public class ImportacaoRetornoBancarioServiceImpl implements ImportacaoRetornoBancarioService { + private static final String LIQUIDACAO_NORMAL = "06"; + private static final String LIQUIDACAO_EM_CARTORIO = "08"; + @Autowired private RemessaCNABBancosDAO remessaCNABBancosDAO; @@ -55,7 +59,11 @@ public class ImportacaoRetornoBancarioServiceImpl implements ImportacaoRetornoBa for (DetalheRetorno detalhe : retornoBancario.getTitulos()) { try { - if( salvarRetornoBancario( detalhe, empresa.getEmpresaId(), usuarioId )) { + if( !detalhe.getCodigoOcorrencia().equals(LIQUIDACAO_NORMAL) + && !detalhe.getCodigoOcorrencia().equals(LIQUIDACAO_EM_CARTORIO) ) { + erros++; + detalhado.append("Registro sem ocorrencia de quitação: ").append(detalhe.getNossoNumero()).append(".\n"); + }else if( salvarRetornoBancario( detalhe, empresa.getEmpresaId(), usuarioId )) { atualizados++; detalhado.append("Quitado:").append(detalhe.getNossoNumero()).append(".\n"); }else { @@ -124,9 +132,12 @@ public class ImportacaoRetornoBancarioServiceImpl implements ImportacaoRetornoBa continue; } - if(linha.startsWith("1")) { //detalhe + if(linha.startsWith("1")) { //detalhe DetalheRetornoItau detalhe = new DetalheRetornoItau(); + detalhe.setCodigoOcorrencia(linha.substring(108, 110)); + detalhe.setValorJuros( new BigDecimal(linha.substring(266, 279)).divide(new BigDecimal(100)) ); detalhe.setNossoNumero(linha.substring(85, 93)+"-"+linha.substring(93, 94)); + detalhe.setDataBaixa(linha.substring(110, 116)); arquivo.addTitulo(detalhe); continue; } @@ -155,7 +166,7 @@ public class ImportacaoRetornoBancarioServiceImpl implements ImportacaoRetornoBa throw new RuntimeException("Boleto já quitado para a empresa com o nosso numero: "+detalhe.getNossoNumero()); } - return remessaCNABBancosDAO.quitarFechamentoBoleto( boleto.getFechamentoboletoId(), usuarioId ); + return remessaCNABBancosDAO.quitarFechamentoBoleto( boleto.getFechamentoboletoId(), usuarioId, detalhe ); } diff --git a/src/com/rjconsultores/ventaboletos/service/impl/ParadaServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/ParadaServiceImpl.java index 135b00701..9e19b748f 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/ParadaServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/ParadaServiceImpl.java @@ -26,6 +26,7 @@ import com.rjconsultores.ventaboletos.exception.BusinessException; import com.rjconsultores.ventaboletos.service.ParadaService; import com.rjconsultores.ventaboletos.utilerias.RegistroConDependenciaException; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; +import com.rjconsultores.ventaboletos.vo.parada.ParadaVO; /** * @@ -179,4 +180,9 @@ public class ParadaServiceImpl implements ParadaService { public List buscarPorAgrupamentoParadaId(AgrupamentoParada agrupamentoParada){ return paradaDAO.buscarPorAgrupamentoParadaId(agrupamentoParada); } + + @Override + public List buscarDestinosPorOrigem(Integer origemId) { + return paradaDAO.buscarDestinosPorOrigem(origemId); + } } diff --git a/src/com/rjconsultores/ventaboletos/service/impl/PtovtaExcecaoMultaCancServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/PtovtaExcecaoMultaCancServiceImpl.java new file mode 100644 index 000000000..c747ccc7c --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/service/impl/PtovtaExcecaoMultaCancServiceImpl.java @@ -0,0 +1,57 @@ +package com.rjconsultores.ventaboletos.service.impl; + +import java.util.Date; +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.PtovtaExcecaoMultaCancDAO; +import com.rjconsultores.ventaboletos.entidad.PtovtaExcecaoMultaCanc; +import com.rjconsultores.ventaboletos.service.PtovtaExcecaoMultaCancService; +import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; + +@Service("ptovtaExcecaoMultaCancService") +public class PtovtaExcecaoMultaCancServiceImpl implements PtovtaExcecaoMultaCancService { + + @Autowired + PtovtaExcecaoMultaCancDAO ptovtaExcecaoMultaCancDAO; + + @Override + public List obtenerTodos() { + return ptovtaExcecaoMultaCancDAO.obtenerTodos(); + } + + @Override + public PtovtaExcecaoMultaCanc obtenerID(Integer id) { + return ptovtaExcecaoMultaCancDAO.obtenerID(id); + } + + @Override + @Transactional + public PtovtaExcecaoMultaCanc suscribir(PtovtaExcecaoMultaCanc entidad) { + entidad.setActivo(true); + entidad.setFecmodif(new Date()); + entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + return ptovtaExcecaoMultaCancDAO.suscribir(entidad); + } + + @Override + @Transactional + public PtovtaExcecaoMultaCanc actualizacion(PtovtaExcecaoMultaCanc entidad) { + entidad.setFecmodif(new Date()); + entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + return ptovtaExcecaoMultaCancDAO.actualizacion(entidad); + } + + @Override + @Transactional + public void borrar(PtovtaExcecaoMultaCanc entidad) { + entidad.setActivo(false); + entidad.setFecmodif(new Date()); + entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + ptovtaExcecaoMultaCancDAO.actualizacion(entidad); + } + +} diff --git a/src/com/rjconsultores/ventaboletos/service/impl/PuntoVentaServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/PuntoVentaServiceImpl.java index 47dd51eb9..798b8b03a 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/PuntoVentaServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/PuntoVentaServiceImpl.java @@ -435,9 +435,11 @@ public class PuntoVentaServiceImpl implements PuntoVentaService { PuntoVenta originalClone = null; try { originalClone = entidad.getCloneObject(); - originalClone.setTitularId(entidad.getTitularId().getCloneObject()); + if(entidad.getTitularId()!=null) { + originalClone.setTitularId(entidad.getTitularId().getCloneObject()); + } } catch (Exception e) { - log.error("",e); + log.error("Erro ao clonar TitularId",e); } entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); entidad.setFecmodif(Calendar.getInstance().getTime()); diff --git a/src/com/rjconsultores/ventaboletos/service/impl/SapServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/SapServiceImpl.java index 24a35e7fe..f54a8e929 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/SapServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/SapServiceImpl.java @@ -14,6 +14,7 @@ import com.rjconsultores.ventaboletos.dao.SapDAO; import com.rjconsultores.ventaboletos.entidad.Constante; import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.FechamentoCntcorrente; +import com.rjconsultores.ventaboletos.entidad.PuntoVenta; import com.rjconsultores.ventaboletos.rest.IntegracaoSapRest; import com.rjconsultores.ventaboletos.service.SapService; import com.rjconsultores.ventaboletos.utilerias.DateUtil; @@ -65,7 +66,12 @@ public class SapServiceImpl implements SapService{ @Override public List obtenerTodosParaRemessa(Empresa empresa, Date dataDe, Date dataAte, Boolean reenviar) { - return sapDAO.obtenerTodosParaRemessa(empresa, dataDe, dataAte, reenviar); + return sapDAO.obtenerTodosParaRemessa(empresa, dataDe, dataAte, reenviar, null); + } + + @Override + public List obtenerTodosParaRemessa(Empresa empresa, Date dataDe, Date dataAte, Boolean reenviar, PuntoVenta puntoVenta) { + return sapDAO.obtenerTodosParaRemessa(empresa, dataDe, dataAte, reenviar, puntoVenta); } @Override diff --git a/src/com/rjconsultores/ventaboletos/service/impl/TipoOcupacionServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/TipoOcupacionServiceImpl.java index 4ce1ccad7..f53128fd6 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/TipoOcupacionServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/TipoOcupacionServiceImpl.java @@ -21,49 +21,53 @@ import org.springframework.transaction.annotation.Transactional; @Service("tipoOcupacionService") public class TipoOcupacionServiceImpl implements TipoOcupacionService { - @Autowired - private TipoOcupacionDAO tipoOcupacionDAO; + @Autowired + private TipoOcupacionDAO tipoOcupacionDAO; - public List obtenerTodos() { - return tipoOcupacionDAO.obtenerTodos(); - } + public List obtenerTodos() { + return tipoOcupacionDAO.obtenerTodos(); + } - public TipoOcupacion obtenerID(Integer id) { - return tipoOcupacionDAO.obtenerID(id); - } + public TipoOcupacion obtenerID(Integer id) { + return tipoOcupacionDAO.obtenerID(id); + } - @Transactional - public TipoOcupacion suscribir(TipoOcupacion entidad) { - entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - entidad.setFecmodif(Calendar.getInstance().getTime()); - entidad.setActivo(Boolean.TRUE); + @Transactional + public TipoOcupacion suscribir(TipoOcupacion entidad) { + entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + entidad.setFecmodif(Calendar.getInstance().getTime()); + entidad.setActivo(Boolean.TRUE); - return tipoOcupacionDAO.suscribir(entidad); - } + return tipoOcupacionDAO.suscribir(entidad); + } - @Transactional - public TipoOcupacion actualizacion(TipoOcupacion entidad) { - entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - entidad.setFecmodif(Calendar.getInstance().getTime()); - entidad.setActivo(Boolean.TRUE); + @Transactional + public TipoOcupacion actualizacion(TipoOcupacion entidad) { + entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + entidad.setFecmodif(Calendar.getInstance().getTime()); + entidad.setActivo(Boolean.TRUE); - return tipoOcupacionDAO.actualizacion(entidad); - } + return tipoOcupacionDAO.actualizacion(entidad); + } - @Transactional - public void borrar(TipoOcupacion entidad) { - entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); - entidad.setFecmodif(Calendar.getInstance().getTime()); - entidad.setActivo(Boolean.FALSE); + @Transactional + public void borrar(TipoOcupacion entidad) { + entidad.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId()); + entidad.setFecmodif(Calendar.getInstance().getTime()); + entidad.setActivo(Boolean.FALSE); - tipoOcupacionDAO.actualizacion(entidad); - } + tipoOcupacionDAO.actualizacion(entidad); + } - public List buscar(String desctipo, String cvetipoocupacion) { - return tipoOcupacionDAO.buscar(desctipo, cvetipoocupacion); - } + public List buscar(String desctipo) { + return buscar(desctipo, null); + } - public List buscarClave(String cvetipoocupacion) { - return tipoOcupacionDAO.buscarClave(cvetipoocupacion); - } + public List buscar(String desctipo, String cvetipoocupacion) { + return tipoOcupacionDAO.buscar(desctipo, cvetipoocupacion); + } + + public List buscarClave(String cvetipoocupacion) { + return tipoOcupacionDAO.buscarClave(cvetipoocupacion); + } } diff --git a/src/com/rjconsultores/ventaboletos/utilerias/ApplicationProperties.java b/src/com/rjconsultores/ventaboletos/utilerias/ApplicationProperties.java index 240d2ceb4..c29fbed64 100644 --- a/src/com/rjconsultores/ventaboletos/utilerias/ApplicationProperties.java +++ b/src/com/rjconsultores/ventaboletos/utilerias/ApplicationProperties.java @@ -136,7 +136,12 @@ public class ApplicationProperties { */ public boolean isCustomHabilitado(String key, String defaultValue) { String property = getValuefromCustom(key, defaultValue); - return property.equals("1"); + return property.equals("1") ; + } + + public boolean isCustomHabilitado(String key, Boolean defaultValue) { + String property = getValuefromCustom(key, defaultValue.toString()); + return property.equals("true") ; } private InputStream readImagefromCustom(String imagene) throws FileNotFoundException, IOException { diff --git a/src/com/rjconsultores/ventaboletos/utilerias/CustomEnum.java b/src/com/rjconsultores/ventaboletos/utilerias/CustomEnum.java index 73c152814..0821146a1 100644 --- a/src/com/rjconsultores/ventaboletos/utilerias/CustomEnum.java +++ b/src/com/rjconsultores/ventaboletos/utilerias/CustomEnum.java @@ -153,7 +153,9 @@ public enum CustomEnum { IS_DESABILITA_USUARIO_ADMINISTRADORES_PERFIL("dasabilitaUsuarioAdministradoresPerfil"), - INTEGRACION_SAFER("integracion.safer"); + INTEGRACION_SAFER("integracion.safer"), + + IS_VENDA_MACON("IsVendaMacon"); private String descricao; diff --git a/src/com/rjconsultores/ventaboletos/utilerias/DateUtil.java b/src/com/rjconsultores/ventaboletos/utilerias/DateUtil.java index 55d0e4b8c..5e31f3549 100644 --- a/src/com/rjconsultores/ventaboletos/utilerias/DateUtil.java +++ b/src/com/rjconsultores/ventaboletos/utilerias/DateUtil.java @@ -206,6 +206,16 @@ public final class DateUtil { d = df.parse(data); return d; } + + public static java.sql.Timestamp getTimestampFromString(String data, String formato) throws java.text.ParseException { + Date d = new Date(); + DateFormat df = new SimpleDateFormat(formato); + + d = df.parse(data); + return new java.sql.Timestamp(d.getTime()); + } + + public static int compareDate(java.util.Date d1) { return compareDate(d1, new java.util.Date()); diff --git a/src/com/rjconsultores/ventaboletos/vo/comissao/EventosFinanceirosVO.java b/src/com/rjconsultores/ventaboletos/vo/comissao/EventosFinanceirosVO.java index 77c314a5d..ed44d84e9 100644 --- a/src/com/rjconsultores/ventaboletos/vo/comissao/EventosFinanceirosVO.java +++ b/src/com/rjconsultores/ventaboletos/vo/comissao/EventosFinanceirosVO.java @@ -2,6 +2,7 @@ package com.rjconsultores.ventaboletos.vo.comissao; import java.math.BigDecimal; import java.util.Date; +import java.util.List; import org.apache.commons.lang.StringUtils; import org.zkoss.util.resource.Labels; @@ -49,7 +50,10 @@ public class EventosFinanceirosVO { private Long cajaDiversosId; private Integer usuarioId; private Integer turnoId; + private List formapagos; + + public EventosFinanceirosVO(Long eventoextraId, Long logconferenciaId) { this.eventoextraId = eventoextraId; this.logconferenciaId = logconferenciaId; @@ -334,6 +338,36 @@ public class EventosFinanceirosVO { public void setTurnoId(Integer turnoId) { this.turnoId = turnoId; } + + + + public List getFormapagos() { + return formapagos; + } + + public void setFormapagos(List formapagos) { + this.formapagos = formapagos; + } + + public String getDescFormapagos() { + StringBuilder sFormapagos = new StringBuilder(); + for (FormaPagoEventosFinanceirosVO formapago : formapagos) { + if (sFormapagos.length() > 0) { + sFormapagos.append(", "); + } + sFormapagos.append(formapago.getDescpago()); + } + return sFormapagos.toString(); + } + + public BigDecimal getTotal() { + BigDecimal total = BigDecimal.ZERO; + for (FormaPagoEventosFinanceirosVO formapagoVO : formapagos) { + total = total.add(formapagoVO.getImporte()); + } + return total; + } + @Override public int hashCode() { @@ -366,4 +400,7 @@ public class EventosFinanceirosVO { return true; } + + + } diff --git a/src/com/rjconsultores/ventaboletos/vo/comissao/FormaPagoEventosFinanceirosVO.java b/src/com/rjconsultores/ventaboletos/vo/comissao/FormaPagoEventosFinanceirosVO.java new file mode 100644 index 000000000..155554846 --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/vo/comissao/FormaPagoEventosFinanceirosVO.java @@ -0,0 +1,63 @@ +package com.rjconsultores.ventaboletos.vo.comissao; + +import java.math.BigDecimal; + +import com.rjconsultores.ventaboletos.utilerias.BigDecimalUtil; +import com.rjconsultores.ventaboletos.utilerias.LocaleUtil; +import com.rjconsultores.ventaboletos.utilerias.MoneyHelper; + +public class FormaPagoEventosFinanceirosVO { + + private Integer formapagoId; + private String descpago; + private BigDecimal importe; + + + + + public FormaPagoEventosFinanceirosVO(Integer formapagoId, String descpago, BigDecimal importe) { + super(); + this.formapagoId = formapagoId; + this.descpago = descpago; + this.importe = importe; + } + public Integer getFormapagoId() { + return formapagoId; + } + public void setFormapagoId(Integer formapagoId) { + this.formapagoId = formapagoId; + } + public String getDescpago() { + return descpago; + } + public void setDescpago(String descpago) { + this.descpago = descpago; + } + public BigDecimal getImporte() { + return importe; + } + public void setImporte(BigDecimal importe) { + this.importe = importe; + } + + + public String getImporteFormatado() { + return BigDecimalUtil.getBigDecimalToStringDouble2CasasDecimaisFormatado(getImporte(), LocaleUtil.getLocale()); + } + + public void add(BigDecimal importe) { + this.importe = MoneyHelper.somar(this.importe, (importe != null ? importe : BigDecimal.ZERO)); + } + + public void subtract(BigDecimal importe) { + this.importe = MoneyHelper.subtrair(this.importe,(importe != null ? importe : BigDecimal.ZERO)); + } + + + + + + + + +} diff --git a/src/com/rjconsultores/ventaboletos/vo/conftotem/ConfTotemVentaRapidaVO.java b/src/com/rjconsultores/ventaboletos/vo/conftotem/ConfTotemVentaRapidaVO.java new file mode 100644 index 000000000..e173d4f8e --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/vo/conftotem/ConfTotemVentaRapidaVO.java @@ -0,0 +1,67 @@ +package com.rjconsultores.ventaboletos.vo.conftotem; + +import com.rjconsultores.ventaboletos.entidad.Parada; + +public class ConfTotemVentaRapidaVO { + + private Parada origem; + private Parada destino; + + public Parada getOrigem() { + return origem; + } + + public void setOrigem(Parada origem) { + this.origem = origem; + } + + public Parada getDestino() { + return destino; + } + + public void setDestino(Parada destino) { + this.destino = destino; + } + public ConfTotemVentaRapidaVO() { + super(); + } + + public ConfTotemVentaRapidaVO(Parada origem ,Parada destino) { + super(); + this.origem = origem; + this.destino = destino; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((destino == null) ? 0 : destino.hashCode()); + result = prime * result + ((origem == null) ? 0 : origem.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + ConfTotemVentaRapidaVO other = (ConfTotemVentaRapidaVO) obj; + if (destino == null) { + if (other.destino != null) + return false; + } else if (!destino.equals(other.destino)) + return false; + if (origem == null) { + if (other.origem != null) + return false; + } else if (!origem.equals(other.origem)) + return false; + return true; + } + + +}