package com.ejie.ad74a.util.constantes;

import org.springframework.context.i18n.LocaleContextHolder;

import com.ejie.ad74a.util.comun.Utilidades;

/**
 * enum que contiene todas las tareas que se pueden realizar en los trámites de
 * la app
 * 
 * Formato: nombre_tarea(id de base de datos de situacion, Descripcion)
 *
 */

public enum EstadoNotificacionEnum {

	PENDIENTE(1, "requerimiento.estado.pendiente"), //
	PENDIENTE_FIRMA(2, "requerimiento.estado.pendienteFirma"), //
	PENDIENTE_NOTIFICAR(3, "requerimiento.estado.pendienteNotificar"), //
	PENDIENTE_ACUSE(4, "requerimiento.estado.pendienteAcuse"), //
	ACUSADO(5, "requerimiento.estado.acusado"), //
	EXPIRADO(7, "requerimiento.estado.expirado");

	public static final String ID_DELIVERYSTATUS_ACUSADO = "2";
	public static final String ID_DELIVERYSTATUS_EXPIRADO = "3";

	/**
	 * Constructor privado.
	 * 
	 * idtaskId Long
	 *
	 * @param idtaskId the id tipo doc
	 */
	private EstadoNotificacionEnum(int id, String labelDesc) {
		this.id = id;
		this.labelDesc = labelDesc;
	}

	private int id;
	private String labelDesc;

	public int getId() {
		return this.id;
	}

	public String getLabelDesc() {
		return Utilidades.getLabelFromResource(Constantes.BASENAME_RESOURCE_AD74A_I18N, this.labelDesc,
				LocaleContextHolder.getLocale());
	}

	public static String getLabelDesc(int id) {
		String desc = "";
		for (EstadoNotificacionEnum estado : EstadoNotificacionEnum.values()) {
			if (estado.getId() == id) {
				desc = estado.getLabelDesc();
			}
		}
		return desc;
	}

}
