package ec.edu.espe.movilidad.MovilidadWS.Model;

import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;

import javax.persistence.*;

@Data
@Entity
@Table(name = "uzytavzona_detalle", schema = "UTIC1")
public class ModelUzyTavZonaDetalle {

    @Id
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "uzytavzona_detalle_seq")
    @SequenceGenerator(name = "uzytavzona_detalle_seq", sequenceName = "SEQ_UZYTAVZONA_DETALLE", allocationSize = 1)
    @Column(name = "uzytavzona_detalle_id")
    private Long uzytavzona_detalle_id;

    @Column(name = "uzytavzona_objetivos")
    private String uzytavzona_objetivos;

    //RELACIÓN CON PROVINCIA-TABLA PADRE
    @JsonIgnore
    @ManyToOne
    @JoinColumn(name = "uzytprovincia_id", referencedColumnName = "uzytprovincia_id")
    private ModelUzyTProvincia uzytprovincia;

    //RELACIOON CON CANTON-TABLA PADRE
    @JsonIgnore
    @ManyToOne
    @JoinColumn(name = "uzytcanton_id", referencedColumnName = "uzytcanton_id")
    private ModelUzyTCanton uzytcanton;

    //RELACIÓN CON PROGRAMA
    @JsonIgnore
    @ManyToOne
    @JoinColumn(name = "uzytavprograma_v_id", referencedColumnName = "uzytavprograma_v_id")
    private ModelUzyTavPrograma_V uzytavprograma_v;

    //RELACIÓN CON PARROQUIA
    @JsonIgnore
    @ManyToOne
    @JoinColumn(name = "uzytparroquia_id", referencedColumnName = "uzytparroquia_id")
    private ModelUzyTParroquia uzytparroquia;

    //RELACIÓN CON PROYECTO

    @JsonIgnore
    @ManyToOne
    @JoinColumn(name = "uzytavproyec_id", referencedColumnName = "uzytavproyec_id")
    private ModelUzyTavProyec uzytavproyec;


}