package com.ejie.ad74a.util.constantes;

import java.util.Locale;

import org.springframework.context.i18n.LocaleContextHolder;

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

public class TipoTramiteExpediente {

	private TipoTramiteExpediente() {

	}

	public enum Estado10 {

		INICIADO("1", "Iniciado", "Hasita"), //
		FINALIZADO("2", "Finalizado", "Bukatua"), //
		CANCELADO("3", "Cancelado", "Ezeztatua"), //
		ANULADO("4", "Anulado", "Anulatuta"); //

		private Estado10(String value, String descES, String descEU) {
			this.descEU = descEU;
			this.descES = descES;
			this.value = value;
		}

		private String value;
		private String descEU;
		private String descES;

		public String getValue() {
			return value;
		}

		public String getDescEU() {
			return descEU;
		}

		public String getDescES() {
			return descES;
		}

		public String getDescripcion() {
			Locale locale = LocaleContextHolder.getLocale();
			if (locale.equals(Constantes.LOCALE_ES)) {
				return this.descES;
			} else {
				return this.descEU;
			}
		}
	}

	public enum tipoEstudioDoc10 {

		ESTUDIO_DOCUMENTACION(0l, "tipoEstudioDoc10.estudio.documentacion"), //
		ESTUDIO_DOCUMENTACION_APORTACION_SUBSANACION(1l,
				"tipoEstudioDoc10.estudio.documentacion.aportacion.subsanacion"), //
		ESTUDIO_DOCUMENTACION_DESISTIMIENTO(2l, "tipoEstudioDoc10.estudio.documentacion.desistimiento"), //
		ESTUDIO_DOCUMENTACION_AUDIENCIA(3l, "tipoEstudioDoc10.estudio.documentacion.audiencia"); //

		private tipoEstudioDoc10(Long id, String labelDesc) {
			this.id = id;
			this.labelDesc = labelDesc;
		}

		private Long id;
		private String labelDesc;

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

		public String getLabelDesc() {
			return Utilidades.getLabelFromResource(
					com.ejie.ad74a.util.constantes.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(
							com.ejie.ad74a.util.constantes.Constantes.BASENAME_RESOURCE_AD74A_I18N,
							estado.getLabelDesc(), LocaleContextHolder.getLocale());
				}
			}
			return desc;
		}
	}
}
