/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package com.pepe.jpa.entities; import java.io.Serializable; 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.JoinTable; import javax.persistence.Lob; import javax.persistence.ManyToMany; import javax.persistence.ManyToOne; import javax.persistence.NamedQueries; import javax.persistence.NamedQuery; import javax.persistence.OneToMany; import javax.persistence.Table; import javax.validation.constraints.NotNull; import javax.validation.constraints.Size; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.XmlTransient; /** * * @author Junior Cabal */ @Entity @Table(name = "actividad_aprendizaje") @XmlRootElement @NamedQueries({ @NamedQuery(name = "ActividadAprendizaje.findAll", query = "SELECT a FROM ActividadAprendizaje a"), @NamedQuery(name = "ActividadAprendizaje.findByConsultaActividad", query = "SELECT a FROM ActividadAprendizaje a WHERE a.idActividad = :idActividad"), @NamedQuery(name = "ActividadAprendizaje.findByFase", query = "SELECT a FROM ActividadAprendizaje a WHERE a.idActividad.idProyecto = :idProyecto AND a.idActividad.idFase = :idFase"), @NamedQuery(name = "ActividadAprendizaje.findByIdActividadAprendizaje", query = "SELECT a FROM ActividadAprendizaje a WHERE a.idActividadAprendizaje = :idActividadAprendizaje"), @NamedQuery(name = "ActividadAprendizaje.findByDuracionActividadAprendizaje", query = "SELECT a FROM ActividadAprendizaje a WHERE a.duracionActividadAprendizaje = :duracionActividadAprendizaje")}) public class ActividadAprendizaje implements Serializable { private static final long serialVersionUID = 1L; @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Basic(optional = false) @Column(name = "id_actividad_aprendizaje") private Integer idActividadAprendizaje; @Basic(optional = false) @NotNull @Lob @Size(min = 1, max = 65535) @Column(name = "nombre_actividad_aprendizaje") private String nombreActividadAprendizaje; @Basic(optional = false) @NotNull @Column(name = "duracion_actividad_aprendizaje") private int duracionActividadAprendizaje; @Lob @Size( max = 65535) @Column(name = "observaciones") private String observaciones; @Lob @Size( max = 65535) @Column(name = "descripcion") private String descripcion; @JoinTable(name = "actividad_aprendizaje_has_recurso", joinColumns = { @JoinColumn(name = "id_actividad_aprendizaje", referencedColumnName = "id_actividad_aprendizaje")}, inverseJoinColumns = { @JoinColumn(name = "id_recurso", referencedColumnName = "id_recurso")}) @ManyToMany private List<Recurso> recursoList; @JoinTable(name = "actividad_aprendizaje_has_tecnica_didactica", joinColumns = { @JoinColumn(name = "id_actividad_aprendizaje", referencedColumnName = "id_actividad_aprendizaje")}, inverseJoinColumns = { @JoinColumn(name = "id_tecnica_didactica", referencedColumnName = "id_tecnica_didactica")}) @ManyToMany private List<TecnicaDidactica> tecnicaDidacticaList; @JoinTable(name = "actividad_aprendizaje_has_resultado_aprendizaje", joinColumns = { @JoinColumn(name = "id_actividad_aprendizaje", referencedColumnName = "id_actividad_aprendizaje")}, inverseJoinColumns = { @JoinColumn(name = "id_resultado_aprendizaje", referencedColumnName = "id_resultado_aprendizaje")}) @ManyToMany private List<ResultadoAprendizaje> resultadoAprendizajeList; @JoinTable(name = "actividad_aprendizaje_has_usuario", joinColumns = { @JoinColumn(name = "id_actividad_aprendizaje", referencedColumnName = "id_actividad_aprendizaje")}, inverseJoinColumns = { @JoinColumn(name = "id_usuario", referencedColumnName = "id_usuario")}) @ManyToMany private List<Usuario> usuarioList; @JoinColumn(name = "id_tipo_actividad_aprendizaje", referencedColumnName = "id_tipo_actividad_aprendizaje") @ManyToOne(optional = false) private TipoActividadAprendizaje idTipoActividadAprendizaje; @JoinColumn(name = "id_actividad", referencedColumnName = "id_actividad") @ManyToOne(optional = false) private Actividad idActividad; @OneToMany(cascade = CascadeType.ALL, mappedBy = "actividadAprendizaje") private List<ActividadAprendizajeHasGuiaAprendizaje> actividadAprendizajeHasGuiaAprendizajeList; @OneToMany(cascade = CascadeType.ALL, mappedBy = "idActividadAprendizaje") private List<Evidencia> evidenciaList; public ActividadAprendizaje() { } public ActividadAprendizaje(Integer idActividadAprendizaje) { this.idActividadAprendizaje = idActividadAprendizaje; } public ActividadAprendizaje(Integer idActividadAprendizaje, String nombreActividadAprendizaje, int duracionActividadAprendizaje, String observaciones, String descripcion) { this.idActividadAprendizaje = idActividadAprendizaje; this.nombreActividadAprendizaje = nombreActividadAprendizaje; this.duracionActividadAprendizaje = duracionActividadAprendizaje; this.observaciones = observaciones; this.descripcion = descripcion; } public Integer getIdActividadAprendizaje() { return idActividadAprendizaje; } public void setIdActividadAprendizaje(Integer idActividadAprendizaje) { this.idActividadAprendizaje = idActividadAprendizaje; } public String getNombreActividadAprendizaje() { return nombreActividadAprendizaje; } public void setNombreActividadAprendizaje(String nombreActividadAprendizaje) { this.nombreActividadAprendizaje = nombreActividadAprendizaje; } public int getDuracionActividadAprendizaje() { return duracionActividadAprendizaje; } public void setDuracionActividadAprendizaje(int duracionActividadAprendizaje) { this.duracionActividadAprendizaje = duracionActividadAprendizaje; } public String getObservaciones() { return observaciones; } public void setObservaciones(String observaciones) { this.observaciones = observaciones; } public String getDescripcion() { return descripcion; } public void setDescripcion(String descripcion) { this.descripcion = descripcion; } @XmlTransient public List<Recurso> getRecursoList() { return recursoList; } public void setRecursoList(List<Recurso> recursoList) { this.recursoList = recursoList; } @XmlTransient public List<TecnicaDidactica> getTecnicaDidacticaList() { return tecnicaDidacticaList; } public void setTecnicaDidacticaList(List<TecnicaDidactica> tecnicaDidacticaList) { this.tecnicaDidacticaList = tecnicaDidacticaList; } @XmlTransient public List<ResultadoAprendizaje> getResultadoAprendizajeList() { return resultadoAprendizajeList; } public void setResultadoAprendizajeList(List<ResultadoAprendizaje> resultadoAprendizajeList) { this.resultadoAprendizajeList = resultadoAprendizajeList; } @XmlTransient public List<Usuario> getUsuarioList() { return usuarioList; } public void setUsuarioList(List<Usuario> usuarioList) { this.usuarioList = usuarioList; } public TipoActividadAprendizaje getIdTipoActividadAprendizaje() { return idTipoActividadAprendizaje; } public void setIdTipoActividadAprendizaje(TipoActividadAprendizaje idTipoActividadAprendizaje) { this.idTipoActividadAprendizaje = idTipoActividadAprendizaje; } public Actividad getIdActividad() { return idActividad; } public void setIdActividad(Actividad idActividad) { this.idActividad = idActividad; } @XmlTransient public List<ActividadAprendizajeHasGuiaAprendizaje> getActividadAprendizajeHasGuiaAprendizajeList() { return actividadAprendizajeHasGuiaAprendizajeList; } public void setActividadAprendizajeHasGuiaAprendizajeList(List<ActividadAprendizajeHasGuiaAprendizaje> actividadAprendizajeHasGuiaAprendizajeList) { this.actividadAprendizajeHasGuiaAprendizajeList = actividadAprendizajeHasGuiaAprendizajeList; } @XmlTransient public List<Evidencia> getEvidenciaList() { return evidenciaList; } public void setEvidenciaList(List<Evidencia> evidenciaList) { this.evidenciaList = evidenciaList; } @Override public int hashCode() { int hash = 0; hash += (idActividadAprendizaje != null ? idActividadAprendizaje.hashCode() : 0); return hash; } @Override public boolean equals(Object object) { // TODO: Warning - this method won't work in the case the id fields are not set if (!(object instanceof ActividadAprendizaje)) { return false; } ActividadAprendizaje other = (ActividadAprendizaje) object; if ((this.idActividadAprendizaje == null && other.idActividadAprendizaje != null) || (this.idActividadAprendizaje != null && !this.idActividadAprendizaje.equals(other.idActividadAprendizaje))) { return false; } return true; } @Override public String toString() { return getNombreActividadAprendizaje(); } }