using SKMC.Api.Common;
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Data;
namespace SKMC.Api.Client.Access
{
///
/// 权限码 -> 是否可见的转换器
///
public class ClientAccessConverter : IMultiValueConverter
{
private readonly IClientRoleAccesser clientRoleAccesser;
public ClientAccessConverter()
{
clientRoleAccesser = ObjectFactory.Resolve();
}
public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
{
if (values[0] is string accessCode)
{
return clientRoleAccesser.HasAccess(accessCode)
? Visibility.Visible
: Visibility.Collapsed;
}
return Visibility.Collapsed;
}
public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)
{
throw new NotSupportedException();
}
}
}