/** * */ package net.conselldemallorca.helium.v3.core.api.dto; /** * DTO amb informaciĆ³ d'un termini. * * @author Limit Tecnologies <limit@limit.es> */ public class TerminiDto { private Long id; private String codi; private String nom; private String descripcio; private boolean duradaPredefinida; private int anys; private int mesos; private Integer dies; private boolean laborable; private boolean manual = true; private Integer diesPrevisAvis; private boolean alertaPrevia; private boolean alertaFinal; private boolean alertaCompletat; public TerminiDto() { super(); this.dies = 0; } public TerminiDto(String valor) { super(); if (valor != null) { String[] dades = ((String)valor).split("/"); if (dades.length >= 3) { this.anys = Integer.parseInt(dades[0]); this.mesos = Integer.parseInt(dades[1]); this.dies = Integer.parseInt(dades[2]); } } } public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getCodi() { return codi; } public void setCodi(String codi) { this.codi = codi; } public String getNom() { return nom; } public void setNom(String nom) { this.nom = nom; } public String getDescripcio() { return descripcio; } public void setDescripcio(String descripcio) { this.descripcio = descripcio; } public boolean isDuradaPredefinida() { return duradaPredefinida; } public void setDuradaPredefinida(boolean duradaPredefinida) { this.duradaPredefinida = duradaPredefinida; } public int getAnys() { return anys; } public void setAnys(int anys) { this.anys = anys; } public int getMesos() { return mesos; } public void setMesos(int mesos) { this.mesos = mesos; } public Integer getDies() { return dies; } public void setDies(Integer dies) { this.dies = dies; } public boolean isLaborable() { return laborable; } public void setLaborable(boolean laborable) { this.laborable = laborable; } public boolean isManual() { return manual; } public void setManual(boolean manual) { this.manual = manual; } public Integer getDiesPrevisAvis() { return diesPrevisAvis; } public void setDiesPrevisAvis(Integer diesPrevisAvis) { this.diesPrevisAvis = diesPrevisAvis; } public boolean isAlertaPrevia() { return alertaPrevia; } public void setAlertaPrevia(boolean alertaPrevia) { this.alertaPrevia = alertaPrevia; } public boolean isAlertaFinal() { return alertaFinal; } public void setAlertaFinal(boolean alertaFinal) { this.alertaFinal = alertaFinal; } public boolean isAlertaCompletat() { return alertaCompletat; } public void setAlertaCompletat(boolean alertaCompletat) { this.alertaCompletat = alertaCompletat; } public String getDurada() { return toString() + ((dies > 0) ? ((laborable) ? " laborables" : " naturals") : ""); } public String toString() { StringBuffer sb = new StringBuffer(); boolean plural = false; if (anys > 0) { sb.append(anys); plural = anys > 1; sb.append((plural) ? " anys": " any"); if (mesos > 0 && dies > 0) sb.append(", "); else if (mesos > 0 || dies > 0) sb.append(" i "); } if (mesos > 0) { sb.append(mesos); plural = mesos > 1; sb.append((plural) ? " mesos": " mes"); if (dies > 0) sb.append(" i "); } if (dies != null && dies > 0) { sb.append(dies); plural = dies > 1; sb.append((plural) ? " dies": " dia"); } return sb.toString(); } public String toSavinString() { if (isEmpty()) return null; return anys + "/" + mesos + "/" + (dies == null ? 0 : dies); } public boolean isEmpty() { return (anys == 0 && mesos == 0 && dies == null); } }