using System; using System.CodeDom.Compiler; using System.Collections.Generic; using System.ComponentModel; using System.Diagnostics; using System.Threading; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Controls.Primitives; using System.Windows.Markup; using System.Windows.Threading; using Gestor.Application.Helpers; using Gestor.Application.ViewModels.Drawer; using Gestor.Model.Common; using Gestor.Model.Domain.Generic; using MaterialDesignThemes.Wpf; namespace Gestor.Application.Drawers; public class ImpostoDrawer : UserControl, IComponentConnector { private readonly int _tipo; private readonly long _id; internal ProgressBar ProgressBar; internal TextBlock TitleBox; internal ComboBox SeguradoraBox; internal ComboBox SeguradoraAlternativaBox; internal ComboBox RamoBox; internal DataGrid ArquivoGrid; internal Snackbar SnackbarImposto; private bool _contentLoaded; public ImpostoViewModel ViewModel { get; set; } public ImpostoDrawer(int tipo, long id) { _tipo = tipo; _id = id; ViewModel = new ImpostoViewModel(); ((FrameworkElement)this).DataContext = ViewModel; InitializeComponent(); Dispatcher dispatcher = ((DispatcherObject)this).Dispatcher; if (dispatcher != null) { dispatcher.BeginInvoke((DispatcherPriority)7, (Delegate)new Action(ContentLoad)); } } private async void ContentLoad() { ViewModel.Carregando = true; await ViewModel.Carregar(_tipo, _id); ((Selector)SeguradoraBox).SelectionChanged += new SelectionChangedEventHandler(Indice_OnSelectionChanged); ((Selector)SeguradoraAlternativaBox).SelectionChanged += new SelectionChangedEventHandler(Indice_OnSelectionChanged); ((Selector)RamoBox).SelectionChanged += new SelectionChangedEventHandler(Indice_OnSelectionChanged); ViewModel.Carregando = false; } private void SnackbarMessage_ActionClick(object sender, RoutedEventArgs e) { SnackbarImposto.IsActive = false; } public void Toggle(string message, bool active = true) { ((ContentControl)SnackbarImposto.Message).Content = message; SnackbarImposto.IsActive = active; if (active) { Task.Factory.StartNew(CloseSlackBar); } } private void CloseSlackBar() { Thread.Sleep(5000); Dispatcher dispatcher = ((DispatcherObject)App.ProgressRing).Dispatcher; if (dispatcher != null) { dispatcher.BeginInvoke((DispatcherPriority)4, (Delegate)(Action)delegate { Toggle("", active: false); }); } } private async void Status_OnSelectionChanged(object sender, SelectionChangedEventArgs e) { ListBox val = (ListBox)sender; if (((Selector)val).SelectedItem != null) { ViewModel.Ativo = ((((Selector)val).SelectedIndex == 0) ? new bool?(true) : ((((Selector)val).SelectedIndex == 1) ? new bool?(false) : null)); TitleBox.Text = ((((Selector)val).SelectedIndex == 0) ? "IMPOSTOS ATIVOS" : ((((Selector)val).SelectedIndex == 1) ? "IMPOSTOS INATIVOS" : "TODOS IMPOSTOS")); await ViewModel.Carregar(0L); } } private void Fechar_OnClick(object sender, RoutedEventArgs e) { ViewModel.CloseDrawer(); } private void Incluir_OnClick(object sender, RoutedEventArgs e) { ViewModel.Incluir(); } private void Alterar_OnClick(object sender, RoutedEventArgs e) { ViewModel.AlterarImposto(); } private async void Salvar_OnClick(object sender, RoutedEventArgs e) { ViewModel.Carregando = true; List> list = await ViewModel.Salvar(); ((DependencyObject)(object)this).ValidateFields(list); bool num = list == null || list.Count == 0; ViewModel.Carregando = false; if (num) { Toggle("PARÂMETRO SALVO COM SUCESSO."); } else { await ViewModel.ShowMessage(list, ViewModel.ErroCamposInvalidos, "OK"); } } private async void Cancelar_OnClick(object sender, RoutedEventArgs e) { await ViewModel.Cancelar(); } private void Log_OnClick(object sender, RoutedEventArgs e) { ViewModel.AbrirLog((TipoTela)56, ((DomainBase)ViewModel.SelectedImposto).Id); } private async void Indice_OnSelectionChanged(object sender, SelectionChangedEventArgs e) { if (!ViewModel.Carregando) { ViewModel.Carregando = true; await ViewModel.Carregar(0L); ViewModel.Carregando = false; } } [DebuggerNonUserCode] [GeneratedCode("PresentationBuildTasks", "4.0.0.0")] public void InitializeComponent() { if (!_contentLoaded) { _contentLoaded = true; Uri uri = new Uri("/Gestor.Application;component/drawers/impostodrawer.xaml", UriKind.Relative); Application.LoadComponent((object)this, uri); } } [DebuggerNonUserCode] [GeneratedCode("PresentationBuildTasks", "4.0.0.0")] internal Delegate _CreateDelegate(Type delegateType, string handler) { return Delegate.CreateDelegate(delegateType, this, handler); } [DebuggerNonUserCode] [GeneratedCode("PresentationBuildTasks", "4.0.0.0")] [EditorBrowsable(EditorBrowsableState.Never)] void IComponentConnector.Connect(int connectionId, object target) { //IL_004b: Unknown result type (might be due to invalid IL or missing references) //IL_0055: Expected O, but got Unknown //IL_0057: Unknown result type (might be due to invalid IL or missing references) //IL_0063: Unknown result type (might be due to invalid IL or missing references) //IL_006d: Expected O, but got Unknown //IL_006f: Unknown result type (might be due to invalid IL or missing references) //IL_007b: Unknown result type (might be due to invalid IL or missing references) //IL_0085: Expected O, but got Unknown //IL_0088: Unknown result type (might be due to invalid IL or missing references) //IL_0092: Expected O, but got Unknown //IL_0095: Unknown result type (might be due to invalid IL or missing references) //IL_009f: Expected O, but got Unknown //IL_00a2: Unknown result type (might be due to invalid IL or missing references) //IL_00ac: Expected O, but got Unknown //IL_00af: Unknown result type (might be due to invalid IL or missing references) //IL_00b9: Expected O, but got Unknown //IL_00bb: Unknown result type (might be due to invalid IL or missing references) //IL_00c7: Unknown result type (might be due to invalid IL or missing references) //IL_00d1: Expected O, but got Unknown //IL_00d3: Unknown result type (might be due to invalid IL or missing references) //IL_00df: Unknown result type (might be due to invalid IL or missing references) //IL_00e9: Expected O, but got Unknown //IL_00eb: Unknown result type (might be due to invalid IL or missing references) //IL_00f7: Unknown result type (might be due to invalid IL or missing references) //IL_0101: Expected O, but got Unknown //IL_0103: Unknown result type (might be due to invalid IL or missing references) //IL_010f: Unknown result type (might be due to invalid IL or missing references) //IL_0119: Expected O, but got Unknown //IL_011b: Unknown result type (might be due to invalid IL or missing references) //IL_0127: Unknown result type (might be due to invalid IL or missing references) //IL_0131: Expected O, but got Unknown //IL_0134: Unknown result type (might be due to invalid IL or missing references) //IL_013e: Expected O, but got Unknown //IL_0141: Unknown result type (might be due to invalid IL or missing references) //IL_014b: Expected O, but got Unknown //IL_014d: Unknown result type (might be due to invalid IL or missing references) //IL_0159: Unknown result type (might be due to invalid IL or missing references) //IL_0163: Expected O, but got Unknown switch (connectionId) { case 1: ProgressBar = (ProgressBar)target; break; case 2: ((Selector)(ListBox)target).SelectionChanged += new SelectionChangedEventHandler(Status_OnSelectionChanged); break; case 3: ((ButtonBase)(Button)target).Click += new RoutedEventHandler(Fechar_OnClick); break; case 4: TitleBox = (TextBlock)target; break; case 5: SeguradoraBox = (ComboBox)target; break; case 6: SeguradoraAlternativaBox = (ComboBox)target; break; case 7: RamoBox = (ComboBox)target; break; case 8: ((MenuItem)target).Click += new RoutedEventHandler(Incluir_OnClick); break; case 9: ((MenuItem)target).Click += new RoutedEventHandler(Alterar_OnClick); break; case 10: ((MenuItem)target).Click += new RoutedEventHandler(Salvar_OnClick); break; case 11: ((MenuItem)target).Click += new RoutedEventHandler(Cancelar_OnClick); break; case 12: ((MenuItem)target).Click += new RoutedEventHandler(Log_OnClick); break; case 13: ArquivoGrid = (DataGrid)target; break; case 14: SnackbarImposto = (Snackbar)target; break; case 15: ((SnackbarMessage)target).ActionClick += new RoutedEventHandler(SnackbarMessage_ActionClick); break; default: _contentLoaded = true; break; } } }