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 EstadoDocuEnum {

	PENDIENTE(1, "documentos.estado.pendiente"), //
	EDITABLE(2, "documentos.estado.editable"), //
	FINALIZADO(3, "documentos.estado.finalizado"), //
	PENDIENTE_FIRMA(4, "documentos.estado.pendienteFirma"), //
	PENDIENTE_LOCALIZADOR(5, "documentos.estado.pendienteLocalizador"), //
	CON_LOCALIZADOR(6, "documentos.estado.localizador"), //
	RECHAZO_FIRMA(7, "documentos.estado.rechazo"), //
	GENERADO(8, "documentos.estado.generado"), //
	APORTADO(9, "documentos.estado.aportado");

	/**
	 * Constructor privado.
	 * 
	 * idtaskId Long
	 *
	 * @param idtaskId the id tipo doc
	 */
	private EstadoDocuEnum(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 String getLabelDesc(int id) {
		String desc = "";
		for (EstadoDocuEnum estado : EstadoDocuEnum.values()) {
			if (estado.getId() == id) {
				desc = Utilidades.getLabelFromResource(Constantes.BASENAME_RESOURCE_AD74A_I18N, estado.getLabelDesc(),
						LocaleContextHolder.getLocale());
			}
		}
		return desc;
	}

}
