package com.rjconsultores.ventaboletos.enums;

import org.zkoss.util.resource.Labels;

public enum SituacaoVoucher {
	
	EMITIDO(0,Labels.getLabel("label.situacaoVoucher.emitido")),
	LEGALIZADO(1,Labels.getLabel("label.situacaoVoucher.legalizado")),
	FATURADO(2,Labels.getLabel("label.situacaoVoucher.faturado")),
	CANCELADO(3,Labels.getLabel("label.situacaoVoucher.cancelado")),	
	;
	
	private Integer valor;
	private String descricao;
	
	private SituacaoVoucher(Integer valor, String descricao) {
		this.valor = valor;
		this.descricao = descricao;
	}
	
	public String getDescricao() {
		return descricao;
	}

	@Override
	public String toString() {
		return getDescricao();
	}

	public Integer getValor() {
		return valor;
	}
	
	public static SituacaoVoucher buscarPeloValor(Integer valor) {

		for (SituacaoVoucher tipo : SituacaoVoucher.values()) {
			if (tipo.getValor().equals(valor)) {
				return tipo;
			}
		}
		return null;
	}
	
	public static SituacaoVoucher buscarPeloValor(String valor) {
		return buscarPeloValor( Integer.valueOf(valor));
	}
}
