package it.integry.integrywmsnative.core.model;

import it.integry.integrywmsnative.core.utility.UtilityLogger;
import it.integry.integrywmsnative.core.utility.UtilityString;

public class MtbDepoPosizione {

    private String codMdep;
    private String posizione;
    private String descrizione;
    private String flagMonoCollo;
    private String flagLineaProduzione;
    private Integer priorita;

    private String tipoMagazAutomatico;



    public MtbDepoPosizione clone() {
        try {
            return (MtbDepoPosizione) super.clone();
        } catch (CloneNotSupportedException e) {
            e.printStackTrace();
            UtilityLogger.error(e);
        }

        return null;
    }

    public String getCodMdep() {
        return codMdep;
    }

    public MtbDepoPosizione setCodMdep(String codMdep) {
        this.codMdep = codMdep;
        return this;
    }

    public String getPosizione() {
        return posizione;
    }

    public MtbDepoPosizione setPosizione(String posizione) {
        this.posizione = posizione;
        return this;
    }

    public String getDescrizione() {
        return descrizione;
    }

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

    public String getFlagMonoCollo() {
        return flagMonoCollo;
    }

    public MtbDepoPosizione setFlagMonoCollo(String flagMonoCollo) {
        this.flagMonoCollo = flagMonoCollo;
        return this;
    }

    public boolean isFlagMonoCollo() {
        return "S".equalsIgnoreCase(flagMonoCollo);
    }

    public String getFlagLineaProduzione() {
        return flagLineaProduzione;
    }

    public MtbDepoPosizione setFlagLineaProduzione(String flagLineaProduzione) {
        this.flagLineaProduzione = flagLineaProduzione;
        return this;
    }

    public boolean isFlagLineaProduzione() {
        return "S".equalsIgnoreCase(flagLineaProduzione);
    }

    public Integer getPriorita() {
        return priorita;
    }

    public MtbDepoPosizione setPriorita(Integer priorita) {
        this.priorita = priorita;
        return this;
    }

    public String getTipoMagazAutomatico() {
        return tipoMagazAutomatico;
    }

    public MtbDepoPosizione setTipoMagazAutomatico(String tipoMagazAutomatico) {
        this.tipoMagazAutomatico = tipoMagazAutomatico;
        return this;
    }

    public boolean isMagazzinoAutomatico() {
        return !UtilityString.isNullOrEmpty(getTipoMagazAutomatico());
    }
}
