package es.uv.saic.dto;

import java.text.SimpleDateFormat;
import java.util.Date;

import es.uv.saic.domain.Tasca;

public class TascaDTO {
    private Integer idTasca;
    private String codiEvidencia;
    private String dataLim;
    private String descripcioCas;
    private String descripcioVal;
    private Integer idTascaSeg;
    private Integer idTascaSeg2;
    private Integer idTascap;
    private Integer idTipus;
    private String nomTipus;
    private String nomEvidenciaCas;
    private String nomEvidenciaVal;
    private String titolCas;
    private String titolVal;
    private String opcions;
    private Integer idRol;
    private String nomRol;
    private Boolean informe;

    public TascaDTO() {
    }

    public TascaDTO(Integer idTasca, String codiEvidencia, String dataLim, String descripcioCas, String descripcioVal,
            Integer idTascaSeg, Integer idTascaSeg2, Integer idTascap, Integer idTipus, String nomTipus,
            String nomEvidenciaCas, String nomEvidenciaVal, String titolCas, String titolVal, String opcions,
            Integer idRol, String nomRol, Boolean informe) {
        this.idTasca = idTasca;
        this.codiEvidencia = codiEvidencia;
        this.dataLim = dataLim;
        this.descripcioCas = descripcioCas;
        this.descripcioVal = descripcioVal;
        this.idTascaSeg = idTascaSeg;
        this.idTascaSeg2 = idTascaSeg2;
        this.idTascap = idTascap;
        this.idTipus = idTipus;
        this.nomTipus = nomTipus;
        this.nomEvidenciaCas = nomEvidenciaCas;
        this.nomEvidenciaVal = nomEvidenciaVal;
        this.titolCas = titolCas;
        this.titolVal = titolVal;
        this.opcions = opcions;
        this.idRol = idRol;
        this.nomRol = nomRol;
        this.informe = informe;
    }

    public TascaDTO(Tasca tasca) {
        this.idTasca = tasca.getIdTasca();
        this.codiEvidencia = tasca.getCodiEvidencia();
        this.dataLim = formatDate(tasca.getDataLim());
        this.descripcioCas = tasca.getDescripcioCas();
        this.descripcioVal = tasca.getDescripcioVal();
        this.idTascaSeg = tasca.getIdTascaSeg();
        this.idTascaSeg2 = tasca.getIdTascaSeg2();
        this.idTascap = tasca.getIdTascap();
        this.idTipus = tasca.getTipus().getTipus();
        this.nomTipus = tasca.getTipus().getDescripcio();
        this.nomEvidenciaCas = tasca.getNomEvidenciaCas();
        this.nomEvidenciaVal = tasca.getNomEvidenciaVal();
        this.titolCas = tasca.getTitolCas();
        this.titolVal = tasca.getTitolVal();
        this.opcions = tasca.getOpcions();
        this.idRol = tasca.getRol().getIdRol();
        this.nomRol = tasca.getRol().getNomRol();
        this.informe = tasca.getInforme();
    }

    public Integer getIdTasca() {
        return idTasca;
    }

    public void setIdTasca(Integer idTasca) {
        this.idTasca = idTasca;
    }

    public String getCodiEvidencia() {
        return codiEvidencia;
    }

    public void setCodiEvidencia(String codiEvidencia) {
        this.codiEvidencia = codiEvidencia;
    }

    public Integer getIdTipus() {
        return idTipus;
    }

    public void setIdTipus(Integer tipus) {
        this.idTipus = tipus;
    }

    public String getNomEvidenciaCas() {
        return nomEvidenciaCas;
    }

    public void setNomEvidenciaCas(String nomEvidenciaCas) {
        this.nomEvidenciaCas = nomEvidenciaCas;
    }

    public String getOpcions() {
        return opcions;
    }

    public void setOpcions(String opcions) {
        this.opcions = opcions;
    }

    public String getNomRol() {
        return nomRol;
    }

    public void setNomRol(String nomRol) {
        this.nomRol = nomRol;
    }

    public String getDataLim() {
        return dataLim;
    }

    public void setDataLim(String dataLim) {
        this.dataLim = dataLim;
    }

    public String getDescripcioCas() {
        return descripcioCas;
    }

    public void setDescripcioCas(String descripcioCas) {
        this.descripcioCas = descripcioCas;
    }

    public String getDescripcioVal() {
        return descripcioVal;
    }

    public void setDescripcioVal(String descripcioVal) {
        this.descripcioVal = descripcioVal;
    }

    public Integer getIdTascaSeg() {
        return idTascaSeg;
    }

    public void setIdTascaSeg(Integer idTascaSeg) {
        this.idTascaSeg = idTascaSeg;
    }

    public Integer getIdTascaSeg2() {
        return idTascaSeg2;
    }

    public void setIdTascaSeg2(Integer idTascaSeg2) {
        this.idTascaSeg2 = idTascaSeg2;
    }

    public Integer getIdTascap() {
        return idTascap;
    }

    public void setIdTascap(Integer idTascap) {
        this.idTascap = idTascap;
    }

    public String getNomEvidenciaVal() {
        return nomEvidenciaVal;
    }

    public void setNomEvidenciaVal(String nomEvidenciaVal) {
        this.nomEvidenciaVal = nomEvidenciaVal;
    }

    public String getTitolCas() {
        return titolCas;
    }

    public void setTitolCas(String titolCas) {
        this.titolCas = titolCas;
    }

    public String getTitolVal() {
        return titolVal;
    }

    public void setTitolVal(String titolVal) {
        this.titolVal = titolVal;
    }

    

    private String formatDate(Date date) {
        if (date == null)
            return "";
        SimpleDateFormat formatter = new SimpleDateFormat("dd-MM-yyyy");
        return formatter.format(date);
    }

    public Integer getIdRol() {
        return idRol;
    }

    public void setIdRol(Integer idRol) {
        this.idRol = idRol;
    }

    public String getNomTipus() {
        return nomTipus;
    }

    public void setNomTipus(String nomTipus) {
        this.nomTipus = nomTipus;
    }

    public Boolean getInforme() {
        return informe;
    }

    public void setInforme(Boolean informe) {
        this.informe = informe;
    }
    
}
