package com.jasamedika.medifirst2000.etl.pasien.constant;

import lombok.Getter;

/**
 * @author salmanoe
 * @version 1.0.0
 * @since 19/10/2023
 */
public enum LingkunganKerja {
    DALAM_RUANGAN(1, "Dalam ruangan"),
    LUAR_RUANGAN(2, "Luar ruangan"),
    BERHUBUNGAN_ZAT_KIMIA_BERBAHAYA(3, "Berhubungan dengan zat kimia berbahaya"),
    BERHUBUNGAN_ZAT_RADIASI(4, "Berhubungan dengan zat radiasi"),
    KERJA_SHIFT(5, "Kerja shift");

    private final long id;

    @Getter
    private final String name;

    LingkunganKerja(long id, String name) {
        this.id = id;
        this.name = name;
    }

    public long id() {
        return this.id;
    }

    @Override
    public String toString() {
        return Long.toString(id);
    }

    public static LingkunganKerja valueOf(long id) {
        for (LingkunganKerja lingkunganKerja : values()) {
            if (lingkunganKerja.id == id) {
                return lingkunganKerja;
            }
        }
        throw new IllegalArgumentException("No matching constant for [" + id + "]");
    }
}
