package com.rjconsultores.ventaboletos.enums;

import java.util.Arrays;
import java.util.List;

import org.zkoss.util.resource.Labels;

public enum TipoClasseServicoBPe {
	
	CONVENCIONAL_COM_SANITARIO(1, Labels.getLabel("editarClaseServicioController.tipoServicoBPe.1")),
	CONVENCIONAL_SEMM_SANITARIO(2, Labels.getLabel("editarClaseServicioController.tipoServicoBPe.2")),
	SEMILEITO(3, Labels.getLabel("editarClaseServicioController.tipoServicoBPe.3")),
	LEITO_COM_AR_CONDICIONADO(4, Labels.getLabel("editarClaseServicioController.tipoServicoBPe.4")),
	LEITO_SEM_AR_CONDICIONADO(5, Labels.getLabel("editarClaseServicioController.tipoServicoBPe.5")),
	EXECUTIVO(6, Labels.getLabel("editarClaseServicioController.tipoServicoBPe.6")),
	SEMIURBANO(7, Labels.getLabel("editarClaseServicioController.tipoServicoBPe.7")),
	LONGITUDINAL(8, Labels.getLabel("editarClaseServicioController.tipoServicoBPe.8")),
	TRAVESSIA(9, Labels.getLabel("editarClaseServicioController.tipoServicoBPe.9")),
	CAMA(10, Labels.getLabel("editarClaseServicioController.tipoServicoBPe.10")),
	MICRO_ONIBUS(11, Labels.getLabel("editarClaseServicioController.tipoServicoBPe.11"));
	
	private Integer codigo;
	private String descricao;
	
	private TipoClasseServicoBPe(Integer codigo, String descricao) {
		this.codigo = codigo;
		this.descricao = descricao;
	}

	public Integer getCodigo() {
		return codigo;
	}

	public String getDescricao() {
		return descricao;
	}

	@Override
	public String toString() {
		return getDescricao();
	}
	
	public static List<TipoClasseServicoBPe> getList() {
		return Arrays.asList(TipoClasseServicoBPe.values());
	}
	
	public static TipoClasseServicoBPe getTipo(Integer codigo) {
		for (TipoClasseServicoBPe tipoClasseServicoBPe : TipoClasseServicoBPe.values()) {
			if(tipoClasseServicoBPe.getCodigo().equals(codigo)) {
				return tipoClasseServicoBPe;
			}
		}
		return TipoClasseServicoBPe.CONVENCIONAL_COM_SANITARIO;
	}
	
}
