using System; using System.Collections.Generic; using System.Globalization; using System.Linq; using System.Windows.Data; using System.Windows.Markup; using Gestor.Model.Common; namespace Gestor.Application.Converters; public class EnviadoTooTipConverter : MarkupExtension, IValueConverter { public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { if (value == null || !(value is List)) { return ""; } List source = (List)value; int num = source.Count((StatusDocumentoAssinado x) => (int)x.Status == 1 || (int)x.Status == 4); int num2 = source.Count((StatusDocumentoAssinado x) => (int)x.Status == 0); int num3 = source.Count((StatusDocumentoAssinado x) => (int)x.Status == 2); if (source.All((StatusDocumentoAssinado x) => (int)x.Status == 3)) { return "ASSINAR SELECIONADOS"; } if (num3 > 0) { return "HÁ ASSINATURAS REJEITADAS PARA ESSE DOCUMENTO"; } if (num > 0 && num2 == 0 && num3 == 0) { return "DOCUMENTO ASSINADO"; } if (num == 0 && num2 > 0 && num3 == 0) { return "ASSINATURA PENDENTE"; } if (num > 0 && num2 > 0 && num3 == 0) { return "CLIQUE PARA VERIFICAR O STATUS DAS ASSINATURAS"; } return "ASSINAR DOCUMENTOS"; } public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { return null; } public override object ProvideValue(IServiceProvider serviceProvider) { return this; } }