package it.integry.integrywmsnative.core.data_store.db.entity;

import androidx.room.ColumnInfo;
import androidx.room.Entity;
import androidx.room.ForeignKey;
import androidx.room.Index;
import androidx.room.PrimaryKey;

import java.math.BigDecimal;
import java.util.Date;

@Entity(
        tableName = "mtb_colr",
        indices = {
                @Index(value = {"data_collo", "ser_collo", "num_collo", "gestione","riga"}, unique = true),
                @Index(value = {"id_collo"})
        },
        foreignKeys = {
                @ForeignKey(
                        entity = SqlMtbColt.class,
                        parentColumns = "id",
                        childColumns = "id_collo",
                        onDelete = ForeignKey.CASCADE
                )
        }
)

public class SqlMtbColr {

    @PrimaryKey(autoGenerate = true)
    @ColumnInfo(name = "id")
    private int id;

    @ColumnInfo(name = "id_collo")
    private int idCollo;


    @ColumnInfo(name = "data_collo")
    private Date dataCollo;

    @ColumnInfo(name = "gestione")
    private String gestione;

    @ColumnInfo(name = "ser_collo")
    private String serCollo;

    @ColumnInfo(name = "descrizione")
    private String descrizione;

    @ColumnInfo(name = "num_collo")
    private Integer numCollo;


    @ColumnInfo(name = "riga")
    private Integer riga;

    @ColumnInfo(name = "riga_ord")
    private Integer rigaOrd;

    @ColumnInfo(name = "cod_mart")
    private String codMart;

    @ColumnInfo(name = "cod_barre")
    private String codBarre;

    @ColumnInfo(name = "cod_col")
    private String codCol;

    @ColumnInfo(name = "cod_tagl")
    private String codTagl;

    @ColumnInfo(name = "partita_mag")
    private String partitaMag;

    @ColumnInfo(name = "gestione_rif")
    private String gestioneRif;

    @ColumnInfo(name = "ser_collo_rif")
    private String serColloRif;

    @ColumnInfo(name = "note")
    private String note;

    @ColumnInfo(name = "data_ord")
    private Date dataOrd;

    @ColumnInfo(name = "data_collo_rif")
    private Date dataColloRif;

    @ColumnInfo(name = "qta_cnf")
    private Float qtaCnf;

    @ColumnInfo(name = "qta_col")
    private Float qtaCol;

    @ColumnInfo(name = "num_ord")
    private Integer numOrd;

    @ColumnInfo(name = "num_etich")
    private Integer numEtich;

    @ColumnInfo(name = "num_collo_rif")
    private Integer numColloRif;

    @ColumnInfo(name = "datetime_row")
    private Date datetimeRow;

    @ColumnInfo(name = "cod_jcom")
    private String codJcom;

    @ColumnInfo(name = "num_cnf")
    private Float numCnf;

    @ColumnInfo(name = "causale")
    private String causale;

    @ColumnInfo(name = "utente")
    private String utente;

    @ColumnInfo(name = "cod_anag_doc")
    private String codAnagDoc;

    @ColumnInfo(name = "cod_dtip_doc")
    private String codDtipDoc;

    @ColumnInfo(name = "data_doc")
    private Date dataDoc;

    @ColumnInfo(name = "ser_doc")
    private String serDoc;

    @ColumnInfo(name = "num_doc")
    private Integer numDoc;

    @ColumnInfo(name = "id_riga_doc")
    private Integer idRigaDoc;

    @ColumnInfo(name = "unt_mis")
    private String untMis;
    @ColumnInfo(name = "data_scad")
    private Date dataScad;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public int getIdCollo() {
        return idCollo;
    }

    public void setIdCollo(int idCollo) {
        this.idCollo = idCollo;
    }

    public Date getDataCollo() {
        return dataCollo;
    }

    public void setDataCollo(Date dataCollo) {
        this.dataCollo = dataCollo;
    }

    public String getGestione() {
        return gestione;
    }

    public void setGestione(String gestione) {
        this.gestione = gestione;
    }

    public String getSerCollo() {
        return serCollo;
    }

    public void setSerCollo(String serCollo) {
        this.serCollo = serCollo;
    }

    public Integer getNumCollo() {
        return numCollo;
    }

    public void setNumCollo(Integer numCollo) {
        this.numCollo = numCollo;
    }

    public Integer getRiga() {
        return riga;
    }

    public void setRiga(Integer riga) {
        this.riga = riga;
    }

    public Integer getRigaOrd() {
        return rigaOrd;
    }

    public void setRigaOrd(Integer rigaOrd) {
        this.rigaOrd = rigaOrd;
    }

    public String getCodMart() {
        return codMart;
    }

    public void setCodMart(String codMart) {
        this.codMart = codMart;
    }

    public String getCodBarre() {
        return codBarre;
    }

    public void setCodBarre(String codBarre) {
        this.codBarre = codBarre;
    }

    public String getCodCol() {
        return codCol;
    }

    public void setCodCol(String codCol) {
        this.codCol = codCol;
    }

    public String getCodTagl() {
        return codTagl;
    }

    public void setCodTagl(String codTagl) {
        this.codTagl = codTagl;
    }

    public String getPartitaMag() {
        return partitaMag;
    }

    public void setPartitaMag(String partitaMag) {
        this.partitaMag = partitaMag;
    }

    public String getGestioneRif() {
        return gestioneRif;
    }

    public void setGestioneRif(String gestioneRif) {
        this.gestioneRif = gestioneRif;
    }

    public String getSerColloRif() {
        return serColloRif;
    }

    public void setSerColloRif(String serColloRif) {
        this.serColloRif = serColloRif;
    }

    public String getNote() {
        return note;
    }

    public void setNote(String note) {
        this.note = note;
    }

    public Date getDataOrd() {
        return dataOrd;
    }

    public void setDataOrd(Date dataOrd) {
        this.dataOrd = dataOrd;
    }

    public Date getDataColloRif() {
        return dataColloRif;
    }

    public void setDataColloRif(Date dataColloRif) {
        this.dataColloRif = dataColloRif;
    }

    public Float getQtaCnf() {
        return qtaCnf;
    }

    public void setQtaCnf(Float qtaCnf) {
        this.qtaCnf = qtaCnf;
    }

    public Float getQtaCol() {
        return qtaCol;
    }

    public void setQtaCol(Float qtaCol) {
        this.qtaCol = qtaCol;
    }

    public Integer getNumOrd() {
        return numOrd;
    }

    public void setNumOrd(Integer numOrd) {
        this.numOrd = numOrd;
    }

    public Integer getNumEtich() {
        return numEtich;
    }

    public void setNumEtich(Integer numEtich) {
        this.numEtich = numEtich;
    }

    public Integer getNumColloRif() {
        return numColloRif;
    }

    public void setNumColloRif(Integer numColloRif) {
        this.numColloRif = numColloRif;
    }

    public Date getDatetimeRow() {
        return datetimeRow;
    }

    public void setDatetimeRow(Date datetimeRow) {
        this.datetimeRow = datetimeRow;
    }

    public String getCodJcom() {
        return codJcom;
    }

    public void setCodJcom(String codJcom) {
        this.codJcom = codJcom;
    }

    public Float getNumCnf() {
        return numCnf;
    }

    public void setNumCnf(Float numCnf) {
        this.numCnf = numCnf;
    }

    public String getCausale() {
        return causale;
    }

    public void setCausale(String causale) {
        this.causale = causale;
    }

    public String getUtente() {
        return utente;
    }

    public void setUtente(String utente) {
        this.utente = utente;
    }

    public String getCodAnagDoc() {
        return codAnagDoc;
    }

    public void setCodAnagDoc(String codAnagDoc) {
        this.codAnagDoc = codAnagDoc;
    }

    public String getCodDtipDoc() {
        return codDtipDoc;
    }

    public void setCodDtipDoc(String codDtipDoc) {
        this.codDtipDoc = codDtipDoc;
    }

    public Date getDataDoc() {
        return dataDoc;
    }

    public void setDataDoc(Date dataDoc) {
        this.dataDoc = dataDoc;
    }

    public String getSerDoc() {
        return serDoc;
    }

    public void setSerDoc(String serDoc) {
        this.serDoc = serDoc;
    }

    public Integer getNumDoc() {
        return numDoc;
    }

    public void setNumDoc(Integer numDoc) {
        this.numDoc = numDoc;
    }

    public Integer getIdRigaDoc() {
        return idRigaDoc;
    }

    public void setIdRigaDoc(Integer idRigaDoc) {
        this.idRigaDoc = idRigaDoc;
    }

    public String getUntMis() {
        return untMis;
    }

    public void setUntMis(String untMis) {
        this.untMis = untMis;
    }

    public String getDescrizione() {
        return descrizione;
    }

    public void setDescrizione(String descrizione) {
        this.descrizione = descrizione;
    }

    public Date getDataScad() {
        return dataScad;
    }

    public void setDataScad(Date dataScad) {
        this.dataScad = dataScad;
    }
}
