using System.Runtime.CompilerServices;

namespace Pgo.Backend.Models;

public enum StelselNodeProviderType
{
    Unknown,
    Zorgaanbieder, // "ZA"
    Basiszorgaanbieder, // "BAZB"
    AanbiederPersoonsdomein // "APD"
}

public static class DvaTypeExtensions
{
    public static StelselNodeProviderType AsDvaType(this string dvaType)
    {
        return dvaType switch
        {
            "ZA" => StelselNodeProviderType.Zorgaanbieder,
            "BAZB" => StelselNodeProviderType.Basiszorgaanbieder,
            "APD" => StelselNodeProviderType.AanbiederPersoonsdomein,
            _ => StelselNodeProviderType.Unknown
        };
    }

    public static string ToString(this StelselNodeProviderType dvaType)
    {
        return dvaType switch
        {
            StelselNodeProviderType.Zorgaanbieder => "ZA",
            StelselNodeProviderType.Basiszorgaanbieder => "BAZB",
            StelselNodeProviderType.AanbiederPersoonsdomein => "APD",
            _ => "Unknown"
        };
    }
}
