package hr.com.port.ips.eracun.provider.mer.enums;

public enum MerEreportingStatus {
    SUCCESS(0, "success", "Uspjeh"),
    ERROR(1, "error", "Neuspjeh"),
    UNKNOWN(-1, "unknown", "Nepoznato");

    private final int id;
    private final String code;
    private final String naziv;

    MerEreportingStatus(int id, String code, String naziv) {
        this.id = id;
        this.code = code;
        this.naziv = naziv;
    }

    public int getId() { return id; }
    public String getCode() { return code; }
    public String getNaziv() { return naziv; }

    public static MerEreportingStatus fromId(Integer id) {
        if (id == null) return UNKNOWN;
        for (MerEreportingStatus s : values()) {
            if (s.id == id) return s;
        }
        return UNKNOWN;
    }

    public static MerEreportingStatus fromCode(String code) {
        if (code == null) return UNKNOWN;
        String c = code.trim().toLowerCase();
        for (MerEreportingStatus s : values()) {
            if (s.code.equalsIgnoreCase(c)) return s;
        }
        return UNKNOWN;
    }
}