package it.integry.integrywmsnative.gest.accettazione.dto;

import java.util.Date;

import it.integry.integrywmsnative.core.di.BindableBoolean;
import it.integry.integrywmsnative.core.model.secondary.GestioneEnum;
import it.integry.integrywmsnative.core.utility.UtilityDate;

/**
 * Created by GiuseppeS on 06/03/2018.
 */

public class OrdineAccettazioneInevasoDTO {

    private String data;
    private int numero;
    private String  termCons;
    private String  codAuto;
    private String  descrizioneAuto;
    private String  rifOrd;
    private String  codVvet;
    private String  descrizioneVettore;
    private String  dataInizTrasp;
    private String  codJcom = "";
    private String  descrizioneCom = "";
    private String  codAnagOrd = "";
    private String  ragSocOrd = "";
    private String  ragSocCom = "";
    private Float pesoTotale;
    private Integer numCnf;
    private String  dataCons;
    private String  barcode;
    private String  gestione;
    private boolean ordTrasf;

    public BindableBoolean selected;

    public OrdineAccettazioneInevasoDTO() {
        this.selected = new BindableBoolean(false);
    }


    public String getData() {
        return data;
    }

    public Date getDataD(){
        try {
            return UtilityDate.recognizeDate(data);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }

    public OrdineAccettazioneInevasoDTO setData(String data) {
        this.data = data;
        return this;
    }

    public Integer getNumero() {
        return numero;
    }

    public OrdineAccettazioneInevasoDTO setNumero(int numero) {
        this.numero = numero;
        return this;
    }

    public String getTermCons() {
        return termCons;
    }

    public OrdineAccettazioneInevasoDTO setTermCons(String termCons) {
        this.termCons = termCons;
        return this;
    }

    public String getCodAuto() {
        return codAuto;
    }

    public OrdineAccettazioneInevasoDTO setCodAuto(String codAuto) {
        this.codAuto = codAuto;
        return this;
    }

    public String getDescrizioneAuto() {
        return descrizioneAuto;
    }

    public OrdineAccettazioneInevasoDTO setDescrizioneAuto(String descrizioneAuto) {
        this.descrizioneAuto = descrizioneAuto;
        return this;
    }

    public String getRifOrd() {
        return rifOrd;
    }

    public OrdineAccettazioneInevasoDTO setRifOrd(String rifOrd) {
        this.rifOrd = rifOrd;
        return this;
    }

    public String getCodVvet() {
        return codVvet;
    }

    public OrdineAccettazioneInevasoDTO setCodVvet(String codVvet) {
        this.codVvet = codVvet;
        return this;
    }

    public String getDescrizioneVettore() {
        return descrizioneVettore;
    }

    public OrdineAccettazioneInevasoDTO setDescrizioneVettore(String descrizioneVettore) {
        this.descrizioneVettore = descrizioneVettore;
        return this;
    }

    public String getDataInizTrasp() {
        return dataInizTrasp;
    }

    public OrdineAccettazioneInevasoDTO setDataInizTrasp(String dataInizTrasp) {
        this.dataInizTrasp = dataInizTrasp;
        return this;
    }

    public String getCodJcom() {
        return codJcom;
    }

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

    public String getDescrizioneCom() {
        return descrizioneCom;
    }

    public OrdineAccettazioneInevasoDTO setDescrizioneCom(String descrizioneCom) {
        this.descrizioneCom = descrizioneCom;
        return this;
    }

    public String getCodAnagOrd() {
        return codAnagOrd;
    }

    public OrdineAccettazioneInevasoDTO setCodAnagOrd(String codAnagOrd) {
        this.codAnagOrd = codAnagOrd;
        return this;
    }

    public String getRagSocOrd() {
        return ragSocOrd;
    }

    public OrdineAccettazioneInevasoDTO setRagSocOrd(String ragSocOrd) {
        this.ragSocOrd = ragSocOrd;
        return this;
    }

    public String getRagSocCom() {
        return ragSocCom;
    }

    public OrdineAccettazioneInevasoDTO setRagSocCom(String ragSocCom) {
        this.ragSocCom = ragSocCom;
        return this;
    }

    public Float getPesoTotale() {
        return pesoTotale;
    }

    public OrdineAccettazioneInevasoDTO setPesoTotale(Float pesoTotale) {
        this.pesoTotale = pesoTotale;
        return this;
    }

    public Integer getNumCnf() {
        return numCnf;
    }

    public OrdineAccettazioneInevasoDTO setNumCnf(Integer numCnf) {
        this.numCnf = numCnf;
        return this;
    }

    public String getDataConsS() {
        return dataCons;
    }

    public Date getDataConsD(){
        try {
            return UtilityDate.recognizeDate(dataCons);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }

    public OrdineAccettazioneInevasoDTO setDataCons(String dataCons) {
        this.dataCons = dataCons;
        return this;
    }

    public String getBarcode() {
        return barcode;
    }

    public OrdineAccettazioneInevasoDTO setBarcode(String barcode) {
        this.barcode = barcode;
        return this;
    }

    public String getGestione() {
        return gestione;
    }

    public GestioneEnum getGestioneEnum() {
        return GestioneEnum.fromString(gestione);
    }

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

    public boolean isOrdTrasf() {
        return ordTrasf;
    }

    public OrdineAccettazioneInevasoDTO setOrdTrasf(boolean ordTrasf) {
        this.ordTrasf = ordTrasf;
        return this;
    }

    public boolean isSelected() {
        return selected.get();
    }

    public OrdineAccettazioneInevasoDTO setSelected(boolean selected) {
        this.selected.set(selected);
        return this;
    }

}
