package hr.com.port.ips.eracun.provider.mer.enums;

public enum MerProcessStatus {
	APPROVED(0, "Approved", "Odobren"),
    REJECTED(1, "Rejected", "Odbijen"),
    PAYMENT_FULFILLED(2, "Payment fulfilled", "Potpuno plaćen"),
    PAYMENT_PARTIALLY_FULFILLED(3, "Payment partially fulfilled", "Djelomično plaćen"),
    RECEIVING_CONFIRMED(4, "Receiving confirmed", "Potvrđen prijem"),
    RECEIVED(99, "Received", "Primljen"),
    UNKNOWN(-1, "Unknown", "Nepoznato");

    private final int id;
	private final String code;
    private final String name;

    MerProcessStatus(int id, String code, String name) {
        this.id = id;
		this.code = code;
        this.name = name;
    }

    public int getId() { return id; }
	public String getCode() { return code; }
    public String getName() { return name; }

    public static MerProcessStatus fromId(Integer id) {
        if (id == null) return UNKNOWN;
        for (MerProcessStatus s : values()) {
            if (id.equals(s.id)) return s;
        }
        return UNKNOWN;
    }
}