AdmMono/src/com/rjconsultores/ventaboletos/entidad/OrgaoConcedente.java

460 lines
13 KiB
Java

package com.rjconsultores.ventaboletos.entidad;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.persistence.Basic;
import javax.persistence.CascadeType;
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.OneToMany;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;
import org.apache.commons.lang.BooleanUtils;
import org.hibernate.annotations.Where;
import br.com.rjconsultores.auditador.annotations.AuditarAtributo;
import br.com.rjconsultores.auditador.annotations.AuditarClasse;
import br.com.rjconsultores.auditador.annotations.AuditarID;
import br.com.rjconsultores.auditador.annotations.AuditarLista;
import br.com.rjconsultores.auditador.annotations.NaoAuditar;
import br.com.rjconsultores.auditador.interfaces.Auditavel;
@AuditarClasse(nome = "OrgaoConcedente", tela = "auditarClasse.OrgaoConcedente")
@Entity
@SequenceGenerator(name = "ORGAO_CONCEDENTE_SEQ", sequenceName = "ORGAO_CONCEDENTE_SEQ", allocationSize = 1)
@Table(name = "ORGAO_CONCEDENTE")
public class OrgaoConcedente implements Serializable, Auditavel<OrgaoConcedente> {
private static final long serialVersionUID = 1L;
public final static Integer CODIGO_ARTESP = 21;
public final static Integer CODIGO_ANTT = 3;
@AuditarID
@Id
@Basic(optional = false)
@GeneratedValue(strategy = GenerationType.AUTO, generator = "ORGAO_CONCEDENTE_SEQ")
@Column(name = "ORGAOCONCEDENTE_ID")
private Integer orgaoConcedenteId;
@AuditarAtributo(nome = "DESC ORGAO")
@Column(name = "DESCORGAO")
private String descOrgao;
@Column(name = "INDDEFAULTSEGURO")
private Boolean indDefaultSeguro;
@Column(name = "INDSUBSEGURO")
private Boolean indSubSeguro;
@Column(name = "ACTIVO")
private Boolean activo;
@Column(name = "FECMODIF")
@Temporal(TemporalType.TIMESTAMP)
private Date fecmodif;
@Column(name = "USUARIO_ID")
private Integer usuarioId;
@AuditarLista(auditarEntidades = true, nome = "CategoriaOrgao")
@OneToMany(mappedBy = "orgao")
private List<CategoriaOrgao> categoriaOrgaoList;
@Column(name = "INDNOMDOCOBLIGATORIO")
private Boolean indNomDocObligatorio;
@AuditarLista(auditarEntidades = true, nome = "OrgaoCancelacion")
@OneToMany(mappedBy = "orgao")
private List<OrgaoCancelacion> orgaoCancelacionList;
@AuditarAtributo(nome = "INDICE PEDADIO")
@Column(name = "INDICEPEAJE")
private BigDecimal indicePeaje;
@AuditarAtributo(nome = "Idade Idoso")
@Column(name = "IDADE_IDOSO")
private Integer idadeIdoso;
@Column(name = "IDADE_MINIMA")
private Integer idadeMinima;
@JoinColumn(name = "CATEGORIA_ID", referencedColumnName = "CATEGORIA_ID")
@ManyToOne()
private Categoria categoria;
@Column(name = "INDUTILIZAICMS")
private Boolean indUtilizaICMS;
@Column(name = "INDMULTATODASREMARCACOES")
private Boolean indmultatodasremarcacoes;
@Column(name = "INDVALDOCOBLIGATORIOMONITRIP")
private Boolean indValDocObligatorioMonitrip;
@Column(name = "INDVALDOCOBLIGATORIOEMBARCADA")
private Boolean indValDocObligatorioEmbarcada;
@Column(name = "TAXACONVENIENCIAPORC")
private BigDecimal taxaConvenienciaPorc;
@Column(name = "MAXTAXACONVENIENCIAPORTARIFA")
private BigDecimal maximoTaxaConvenienciaPorTarifa;
@Column(name = "MENSAGEMRECIBOTXCONVENIENCIA")
private String mensagemReciboTaxaDeConveniencia;
@OneToMany(mappedBy = "orgaoConcedente", cascade = CascadeType.ALL)
@NaoAuditar
private List<ClasseIndicePeaje> classesIndicePeaje;
@AuditarLista(auditarEntidades = true, nome = "OrgaoEmpParam")
@OneToMany(mappedBy = "orgaoConcedente", cascade = CascadeType.ALL)
@Where(clause = "activo=1")
private List<OrgaoEmpParam> orgaoEmpParams;
@Column(name = "COEFICIENTETARIFA")
private BigDecimal coeficiente;
@Column(name = "MENSAGEM_INTRANSFERIVEL")
private String mensagemPassagemIntrasferivel;
@Column(name = "INDNAOIMPPOLCONSUMIDOR")
private Boolean indNaoImprimirPoliticasConsumidor;
@Column(name = "TAXA_CONVENIENCIA_SVI")
private BigDecimal taxaConvenienciaSVI;
@Transient
@NaoAuditar
private OrgaoConcedente orgaoConcedenteClone;
@AuditarAtributo(nome = "Idade Minima Jovem")
@Column(name = "IDADE_MIN_JOVEM")
private Integer idadeMinimaJovem;
@AuditarAtributo(nome = "Idade Maxima Jovem")
@Column(name = "IDADE_MAX_JOVEM")
private Integer idadeMaximaJovem;
@Column(name = "CUSTOMIZARODAPECUPOMEMBARQUE")
@NaoAuditar
private String customizacaoRodapeCupomDeEmbarque;
public void addParametro(OrgaoCancelacion param) {
this.orgaoCancelacionList.add(param);
}
public void removeParametro(OrgaoCancelacion param) {
this.orgaoCancelacionList.remove(param);
}
public Integer getOrgaoConcedenteId() {
return orgaoConcedenteId;
}
public void setOrgaoConcedenteId(Integer orgaoConcedenteId) {
this.orgaoConcedenteId = orgaoConcedenteId;
}
public String getDescOrgao() {
return descOrgao;
}
public void setDescOrgao(String descOrgao) {
this.descOrgao = descOrgao;
}
public Boolean getIndSubSeguro() {
return indSubSeguro;
}
public void setIndSubSeguro(Boolean indSubSeguro) {
this.indSubSeguro = indSubSeguro;
}
public Boolean getIndDefaultSeguro() {
return indDefaultSeguro;
}
public void setIndDefaultSeguro(Boolean indDefaultSeguro) {
this.indDefaultSeguro = indDefaultSeguro;
}
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 List<CategoriaOrgao> getCategoriaOrgaoList() {
return categoriaOrgaoList;
}
public void setCategoriaOrgaoList(List<CategoriaOrgao> categoriaOrgaoList) {
this.categoriaOrgaoList = categoriaOrgaoList;
}
public Boolean getIndNomDocObligatorio() {
return BooleanUtils.isTrue(indNomDocObligatorio);
}
public void setIndNomDocObligatorio(Boolean indNomDocObligatorio) {
this.indNomDocObligatorio = indNomDocObligatorio;
}
public List<OrgaoCancelacion> getOrgaoCancelacionList() {
return orgaoCancelacionList;
}
public void setOrgaoCancelacionList(List<OrgaoCancelacion> orgaoCancelacionList) {
this.orgaoCancelacionList = orgaoCancelacionList;
}
public BigDecimal getIndicePeaje() {
return indicePeaje;
}
public void setIndicePeaje(BigDecimal indicePeaje) {
this.indicePeaje = indicePeaje;
}
public Integer getIdadeIdoso() {
return idadeIdoso;
}
public void setIdadeIdoso(Integer idadeIdoso) {
this.idadeIdoso = idadeIdoso;
}
public List<ClasseIndicePeaje> getClassesIndicePeaje() {
List<ClasseIndicePeaje> lsClasseIndicePeaje = new ArrayList<ClasseIndicePeaje>();
for (ClasseIndicePeaje classeIndicePeaje : this.classesIndicePeaje) {
if (classeIndicePeaje.getActivo()) {
lsClasseIndicePeaje.add(classeIndicePeaje);
}
}
return this.classesIndicePeaje = lsClasseIndicePeaje;
}
public void setClassesIndicePeaje(List<ClasseIndicePeaje> classesIndicePeaje) {
this.classesIndicePeaje = classesIndicePeaje;
}
public Integer getIdadeMinima() {
return idadeMinima;
}
public void setIdadeMinima(Integer idadeMinima) {
this.idadeMinima = idadeMinima;
}
public Categoria getCategoria() {
return categoria;
}
public void setCategoria(Categoria categoria) {
this.categoria = categoria;
}
@Override
public String toString() {
return descOrgao;
}
public Boolean getIndUtilizaICMS() {
return indUtilizaICMS;
}
public void setIndUtilizaICMS(Boolean indUtilizaICMS) {
this.indUtilizaICMS = indUtilizaICMS;
}
public List<OrgaoEmpParam> getOrgaoEmpParams() {
return orgaoEmpParams;
}
public void setOrgaoEmpParams(List<OrgaoEmpParam> orgaoEmpParams) {
this.orgaoEmpParams = orgaoEmpParams;
}
public Boolean getIndmultatodasremarcacoes() {
return indmultatodasremarcacoes;
}
public void setIndmultatodasremarcacoes(Boolean indmultatodasremarcacoes) {
this.indmultatodasremarcacoes = indmultatodasremarcacoes;
}
public Boolean getIndValDocObligatorioMonitrip() {
return BooleanUtils.toBoolean(indValDocObligatorioMonitrip);
}
public void setIndValDocObligatorioMonitrip(Boolean indValDocObligatorioMonitrip) {
this.indValDocObligatorioMonitrip = indValDocObligatorioMonitrip;
}
public BigDecimal getCoeficiente() {
return coeficiente;
}
public void setCoeficiente(BigDecimal coeficiente) {
this.coeficiente = coeficiente;
}
public String getMensagemPassagemIntrasferivel() {
return mensagemPassagemIntrasferivel;
}
public void setMensagemPassagemIntrasferivel(String mensagemPassagemIntrasferivel) {
this.mensagemPassagemIntrasferivel = mensagemPassagemIntrasferivel;
}
public Boolean getIndValDocObligatorioEmbarcada() {
return indValDocObligatorioEmbarcada;
}
public void setIndValDocObligatorioEmbarcada(Boolean indValDocObligatorioEmbarcada) {
this.indValDocObligatorioEmbarcada = indValDocObligatorioEmbarcada;
}
public BigDecimal getTaxaConvenienciaPorc() {
return taxaConvenienciaPorc;
}
public void setTaxaConvenienciaPorc(BigDecimal taxaConvenienciaPorc) {
this.taxaConvenienciaPorc = taxaConvenienciaPorc;
}
public BigDecimal getMaximoTaxaConvenienciaPorTarifa() {
return maximoTaxaConvenienciaPorTarifa;
}
public void setMaximoTaxaConvenienciaPorTarifa(BigDecimal maximoTaxaConvenienciaPorTarifa) {
this.maximoTaxaConvenienciaPorTarifa = maximoTaxaConvenienciaPorTarifa;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((orgaoConcedenteId == null) ? 0 : orgaoConcedenteId.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;
OrgaoConcedente other = (OrgaoConcedente) obj;
if (orgaoConcedenteId == null) {
if (other.orgaoConcedenteId != null)
return false;
} else if (!orgaoConcedenteId.equals(other.orgaoConcedenteId))
return false;
return true;
}
public Boolean getIndNaoImprimirPoliticasConsumidor() {
return indNaoImprimirPoliticasConsumidor;
}
public void setIndNaoImprimirPoliticasConsumidor(Boolean indNaoImprimirPoliticasConsumidor) {
this.indNaoImprimirPoliticasConsumidor = indNaoImprimirPoliticasConsumidor;
}
public BigDecimal getTaxaConvenienciaSVI() {
return taxaConvenienciaSVI;
}
public void setTaxaConvenienciaSVI(BigDecimal taxaConvenienciaSVI) {
this.taxaConvenienciaSVI = taxaConvenienciaSVI;
}
public String getMensagemReciboTaxaDeConveniencia() {
return mensagemReciboTaxaDeConveniencia;
}
public void setMensagemReciboTaxaDeConveniencia(String mensagemReciboTaxaDeConveniencia) {
this.mensagemReciboTaxaDeConveniencia = mensagemReciboTaxaDeConveniencia;
}
@Override
public void clonar() throws CloneNotSupportedException {
orgaoConcedenteClone = new OrgaoConcedente();
orgaoConcedenteClone = (OrgaoConcedente) this.clone();
if(this.getCategoriaOrgaoList() != null) {
List<CategoriaOrgao> lsClones = new ArrayList<CategoriaOrgao>();
for (CategoriaOrgao categoriaOrgao : this.getCategoriaOrgaoList()) {
if(BooleanUtils.isTrue(categoriaOrgao.getActivo())) {
categoriaOrgao.clonar();
lsClones.add(categoriaOrgao.getCloneObject());
}
}
orgaoConcedenteClone.setCategoriaOrgaoList(lsClones);
}
if(this.getOrgaoCancelacionList() != null) {
List<OrgaoCancelacion> lsClones = new ArrayList<OrgaoCancelacion>();
for (OrgaoCancelacion orgaoCancelacion : this.getOrgaoCancelacionList()) {
if(BooleanUtils.isTrue(orgaoCancelacion.getActivo())) {
orgaoCancelacion.clonar();
lsClones.add(orgaoCancelacion.getCloneObject());
}
}
orgaoConcedenteClone.setOrgaoCancelacionList(lsClones);
}
}
@Override
public OrgaoConcedente getCloneObject() throws CloneNotSupportedException {
return orgaoConcedenteClone;
}
@Override
public String getTextoInclusaoExclusao() {
return String.format("ID [%s]", getOrgaoConcedenteId());
}
public Integer getIdadeMinimaJovem() {
return idadeMinimaJovem;
}
public void setIdadeMinimaJovem(Integer idadeMinimaJovem) {
this.idadeMinimaJovem = idadeMinimaJovem;
}
public Integer getIdadeMaximaJovem() {
return idadeMaximaJovem;
}
public void setIdadeMaximaJovem(Integer idadeMaximaJovem) {
this.idadeMaximaJovem = idadeMaximaJovem;
}
public String getCustomizacaoRodapeCupomDeEmbarque() {
return customizacaoRodapeCupomDeEmbarque;
}
public void setCustomizacaoRodapeCupomDeEmbarque(String customizacaoRodapeCupomDeEmbarque) {
this.customizacaoRodapeCupomDeEmbarque = customizacaoRodapeCupomDeEmbarque;
}
}