summaryrefslogtreecommitdiff
path: root/Codemerx/Gestor.Application/Drawers
diff options
context:
space:
mode:
Diffstat (limited to 'Codemerx/Gestor.Application/Drawers')
-rw-r--r--Codemerx/Gestor.Application/Drawers/AdiantamentoDrawerView.cs243
-rw-r--r--Codemerx/Gestor.Application/Drawers/AgendaDrawer.cs563
-rw-r--r--Codemerx/Gestor.Application/Drawers/Ajuda/BoletosNotasDrawerView.cs174
-rw-r--r--Codemerx/Gestor.Application/Drawers/Ajuda/ContratosDrawerView.cs69
-rw-r--r--Codemerx/Gestor.Application/Drawers/Ajuda/InstalacaoDrawerView.cs181
-rw-r--r--Codemerx/Gestor.Application/Drawers/ArquivoDigitalDrawer.cs835
-rw-r--r--Codemerx/Gestor.Application/Drawers/Configuracoes/ConfiguracoesDrawer.cs159
-rw-r--r--Codemerx/Gestor.Application/Drawers/ExpedicaoDrawer.cs265
-rw-r--r--Codemerx/Gestor.Application/Drawers/ExtratosDrawer.cs281
-rw-r--r--Codemerx/Gestor.Application/Drawers/ImpostoDrawer.cs296
-rw-r--r--Codemerx/Gestor.Application/Drawers/InclusaoArquivoDigitalDrawer.cs186
-rw-r--r--Codemerx/Gestor.Application/Drawers/InfoDrawer.cs219
-rw-r--r--Codemerx/Gestor.Application/Drawers/LogDrawer.cs90
-rw-r--r--Codemerx/Gestor.Application/Drawers/LogEmailDrawer.cs75
-rw-r--r--Codemerx/Gestor.Application/Drawers/LogSistemaAntigo.cs67
-rw-r--r--Codemerx/Gestor.Application/Drawers/LogUtilizacaoDrawer.cs65
-rw-r--r--Codemerx/Gestor.Application/Drawers/MetaSeguradoraView.cs224
-rw-r--r--Codemerx/Gestor.Application/Drawers/MetaVendedorView.cs226
-rw-r--r--Codemerx/Gestor.Application/Drawers/ObservacoesDrawer.cs265
-rw-r--r--Codemerx/Gestor.Application/Drawers/PermissaoUsuarioDrawer.cs672
-rw-r--r--Codemerx/Gestor.Application/Drawers/Relatorios/ConfiguracaoRelatorio.cs421
-rw-r--r--Codemerx/Gestor.Application/Drawers/Relatorios/FiltroRelatorio.cs152
-rw-r--r--Codemerx/Gestor.Application/Drawers/TarefaDrawer.cs631
-rw-r--r--Codemerx/Gestor.Application/Drawers/ValoresApoliceDrawer.cs63
-rw-r--r--Codemerx/Gestor.Application/Drawers/ValoresParcelaDrawer.cs70
-rw-r--r--Codemerx/Gestor.Application/Drawers/VinculoVendedorDrawer.cs124
26 files changed, 6616 insertions, 0 deletions
diff --git a/Codemerx/Gestor.Application/Drawers/AdiantamentoDrawerView.cs b/Codemerx/Gestor.Application/Drawers/AdiantamentoDrawerView.cs
new file mode 100644
index 0000000..46e4dde
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/AdiantamentoDrawerView.cs
@@ -0,0 +1,243 @@
+using CurrencyTextBoxControl;
+using Gestor.Application.Helpers;
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Generic;
+using Gestor.Model.Domain.Generic;
+using Gestor.Model.Domain.Seguros;
+using MaterialDesignThemes.Wpf;
+using System;
+using System.CodeDom.Compiler;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Threading;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Controls.Primitives;
+using System.Windows.Data;
+using System.Windows.Input;
+using System.Windows.Markup;
+using System.Windows.Threading;
+
+namespace Gestor.Application.Drawers
+{
+ public class AdiantamentoDrawerView : BaseUserControl, IComponentConnector
+ {
+ internal System.Windows.Controls.ProgressBar ProgressBar;
+
+ internal DataGrid AdiantamentoGrid;
+
+ internal CurrencyTextBox RendaMensalBox;
+
+ internal MaterialDesignThemes.Wpf.Snackbar Snackbar;
+
+ private bool _contentLoaded;
+
+ public AdiantamentoViewModel ViewModel
+ {
+ get;
+ set;
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ internal Delegate _CreateDelegate(Type delegateType, string handler)
+ {
+ return Delegate.CreateDelegate(delegateType, this, handler);
+ }
+
+ public AdiantamentoDrawerView(Vendedor vendedor)
+ {
+ this.ViewModel = new AdiantamentoViewModel(vendedor);
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ }
+
+ private void AbrirLog_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.AbrirLog(36, this.ViewModel.SelectedAdiantamento.get_Id());
+ }
+
+ private void Alterar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Alterar(true);
+ }
+
+ private void Cancelar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CancelarAlteracao();
+ }
+
+ private void CloseSlackBar()
+ {
+ Thread.Sleep(5000);
+ System.Windows.Threading.Dispatcher dispatcher = this.ProgressBar.Dispatcher;
+ if (dispatcher == null)
+ {
+ return;
+ }
+ dispatcher.BeginInvoke(DispatcherPriority.Background, new Action(() => this.ToggleSnackBar("", false)));
+ }
+
+ private async void Excluir_OnClick(object sender, RoutedEventArgs e)
+ {
+ if (await this.ViewModel.Excluir())
+ {
+ this.ToggleSnackBar("ADIANTAMENTO EXCLUÍDO COM SUCESSO", true);
+ }
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ private void Incluir_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Incluir();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/adiantamentodrawerview.xaml", UriKind.Relative));
+ }
+
+ private async void MenuList_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
+ {
+ ListBox listBox = (ListBox)sender;
+ if (listBox.SelectedItem != null)
+ {
+ await this.ViewModel.CarregarAdiantamento(listBox.SelectedIndex);
+ }
+ }
+
+ private async void Salvar_OnClick(object sender, RoutedEventArgs e)
+ {
+ bool flag;
+ this.ViewModel.Carregando = true;
+ List<KeyValuePair<string, string>> keyValuePairs = await this.ViewModel.Salvar();
+ this.ValidateFields(keyValuePairs, true);
+ flag = (keyValuePairs == null ? true : keyValuePairs.Count == 0);
+ this.AdiantamentoGrid.Items.Refresh();
+ this.ViewModel.Carregando = false;
+ this.ViewModel.Loading(false);
+ if (!flag)
+ {
+ await this.ViewModel.ShowMessage(keyValuePairs, this.ViewModel.ErroCamposInvalidos, "OK", "");
+ }
+ else
+ {
+ this.ToggleSnackBar("ADIANTAMENTO SALVO COM SUCESSO", true);
+ }
+ }
+
+ private void SnackbarMessage_ActionClick(object sender, RoutedEventArgs e)
+ {
+ this.Snackbar.set_IsActive(false);
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ this.ProgressBar = (System.Windows.Controls.ProgressBar)target;
+ return;
+ }
+ case 2:
+ {
+ ((ListBox)target).SelectionChanged += new SelectionChangedEventHandler(this.MenuList_OnSelectionChanged);
+ return;
+ }
+ case 3:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 4:
+ {
+ this.AdiantamentoGrid = (DataGrid)target;
+ return;
+ }
+ case 5:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Incluir_OnClick);
+ return;
+ }
+ case 6:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Alterar_OnClick);
+ return;
+ }
+ case 7:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Salvar_OnClick);
+ return;
+ }
+ case 8:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Cancelar_OnClick);
+ return;
+ }
+ case 9:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Excluir_OnClick);
+ return;
+ }
+ case 10:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.AbrirLog_OnClick);
+ return;
+ }
+ case 11:
+ {
+ ((DatePicker)target).LostKeyboardFocus += new KeyboardFocusChangedEventHandler(this.DatePicker_OnLostKeyboardFocus);
+ ((DatePicker)target).MouseDoubleClick += new MouseButtonEventHandler(this.DataAtual_OnDoubleClick);
+ ((DatePicker)target).PreviewKeyDown += new KeyEventHandler(this.DatePicker_PreviewKeyDown);
+ return;
+ }
+ case 12:
+ {
+ this.RendaMensalBox = (CurrencyTextBox)target;
+ return;
+ }
+ case 13:
+ {
+ this.Snackbar = (MaterialDesignThemes.Wpf.Snackbar)target;
+ return;
+ }
+ case 14:
+ {
+ ((SnackbarMessage)target).add_ActionClick(new RoutedEventHandler(this.SnackbarMessage_ActionClick));
+ return;
+ }
+ }
+ this._contentLoaded = true;
+ }
+
+ public void ToggleSnackBar(string message, bool active = true)
+ {
+ this.Snackbar.get_Message().Content = message;
+ this.Snackbar.set_IsActive(active);
+ if (!active)
+ {
+ return;
+ }
+ Task.Factory.StartNew(new Action(this.CloseSlackBar));
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/AgendaDrawer.cs b/Codemerx/Gestor.Application/Drawers/AgendaDrawer.cs
new file mode 100644
index 0000000..d60001d
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/AgendaDrawer.cs
@@ -0,0 +1,563 @@
+using Gestor.Application.Componentes;
+using Gestor.Application.Helpers;
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Generic;
+using Gestor.Common.Helpers;
+using Gestor.Common.Validation;
+using Gestor.Model.Common;
+using Gestor.Model.Domain.Ferramentas;
+using Gestor.Model.Domain.Generic;
+using MaterialDesignThemes.Wpf;
+using System;
+using System.CodeDom.Compiler;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Linq;
+using System.Runtime.CompilerServices;
+using System.Threading;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Controls.Primitives;
+using System.Windows.Input;
+using System.Windows.Markup;
+using System.Windows.Threading;
+using Xceed.Wpf.AvalonDock.Controls;
+
+namespace Gestor.Application.Drawers
+{
+ public class AgendaDrawer : BaseUserControl, IComponentConnector, IStyleConnector
+ {
+ internal System.Windows.Controls.ProgressBar ProgressBar;
+
+ internal DataGrid AgendaGrid;
+
+ internal MenuItem MaisOpcoesButton;
+
+ internal TextBox NomeBox;
+
+ internal TextBox CepBox;
+
+ internal System.Windows.Controls.ProgressBar ProgressCep;
+
+ internal TextBox EnderecoBox;
+
+ internal TextBox BairroBox;
+
+ internal TextBox CidadeBox;
+
+ internal TextBox EstadoBox;
+
+ internal TextBox ObsBox;
+
+ internal ListBox TelefoneListBox;
+
+ internal ListBox EmailListBox;
+
+ internal MaterialDesignThemes.Wpf.Snackbar Snackbar;
+
+ private bool _contentLoaded;
+
+ private AgendaViewModel ViewModel
+ {
+ get;
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ internal Delegate _CreateDelegate(Type delegateType, string handler)
+ {
+ return Delegate.CreateDelegate(delegateType, this, handler);
+ }
+
+ public AgendaDrawer()
+ {
+ this.ViewModel = new AgendaViewModel();
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ System.Windows.Threading.Dispatcher dispatcher = base.Dispatcher;
+ if (dispatcher == null)
+ {
+ return;
+ }
+ dispatcher.BeginInvoke(DispatcherPriority.Render, new Action(this.ContentLoad));
+ }
+
+ private void AbrirLog_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.AbrirLog(34, this.ViewModel.SelectedAgenda.get_Id());
+ }
+
+ private async void AgendaGrid_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
+ {
+ object obj;
+ DataGrid dataGrid = (DataGrid)sender;
+ if (dataGrid == null || dataGrid.SelectedIndex >= 0)
+ {
+ AgendaViewModel viewModel = this.ViewModel;
+ obj = (dataGrid != null ? dataGrid.Items[dataGrid.SelectedIndex] : null);
+ await viewModel.SelecionaAgenda((Agenda)obj);
+ }
+ }
+
+ private void Alterar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CancelAgenda = (Agenda)this.ViewModel.SelectedAgenda.Clone();
+ this.ViewModel.Alterar(true);
+ }
+
+ private void AutoCompleteBox_OnTextChanged(object sender, RoutedEventArgs e)
+ {
+ if (!string.IsNullOrWhiteSpace(((AutoCompleteBox)sender).get_Text()))
+ {
+ return;
+ }
+ this.ViewModel.FiltrarAgenda("");
+ }
+
+ private void AutoCompleteBox_Populating(object sender, PopulatingEventArgs e)
+ {
+ if (e.get_Parameter().Length < 3)
+ {
+ return;
+ }
+ e.set_Cancel(true);
+ this.ViewModel.Filtrar(ValidationHelper.RemoveDiacritics(e.get_Parameter().Trim())).ContinueWith((Task<List<Agenda>> searchResult) => {
+ if (searchResult.Result == null)
+ {
+ return;
+ }
+ AutoCompleteBox autoCompleteBox = (AutoCompleteBox)sender;
+ autoCompleteBox.set_ItemsSource(searchResult.Result);
+ autoCompleteBox.PopulateComplete();
+ }, TaskScheduler.FromCurrentSynchronizationContext());
+ }
+
+ private void Cancelar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CancelarAlteracao();
+ }
+
+ private void CloseSlackBar()
+ {
+ Thread.Sleep(5000);
+ System.Windows.Threading.Dispatcher dispatcher = this.ProgressBar.Dispatcher;
+ if (dispatcher == null)
+ {
+ return;
+ }
+ dispatcher.BeginInvoke(DispatcherPriority.Background, new Action(() => this.ToggleSnackBar("", false)));
+ }
+
+ private void ContentLoad()
+ {
+ this.AgendaGrid.SelectedIndex = 0;
+ this.AgendaGrid.SelectionChanged += new SelectionChangedEventHandler(this.AgendaGrid_OnSelectionChanged);
+ this.AgendaGrid.MouseDoubleClick += new MouseButtonEventHandler((object sender, MouseButtonEventArgs args) => {
+ });
+ this.ViewModel.PermissaoWhatsapp = this.ViewModel.Restricao(32);
+ }
+
+ private void CopyEmailToClipBoard_Click(object sender, RoutedEventArgs e)
+ {
+ Button button = (Button)sender;
+ ListBox listBox = Extentions.FindVisualAncestor<ListBox>(button);
+ EmailBase item = (EmailBase)listBox.Items[listBox.Items.IndexOf(button.DataContext)];
+ item.get_Email().CopyToClipboard();
+ this.ToggleSnackBar(string.Concat("COPIADO - ", item.get_Email()), true);
+ }
+
+ private void CopyTelefoneToClipBoard_Click(object sender, RoutedEventArgs e)
+ {
+ Button button = (Button)sender;
+ ListBox listBox = Extentions.FindVisualAncestor<ListBox>(button);
+ TelefoneBase item = (TelefoneBase)listBox.Items[listBox.Items.IndexOf(button.DataContext)];
+ string.Concat(item.get_Prefixo(), ValidationHelper.OnlyNumber(item.get_Numero())).CopyToClipboard();
+ this.ToggleSnackBar(string.Concat("COPIADO - ", item.get_Prefixo(), ValidationHelper.OnlyNumber(item.get_Numero())), true);
+ }
+
+ private async void Excluir_OnClick(object sender, RoutedEventArgs e)
+ {
+ if (await this.ViewModel.Excluir())
+ {
+ this.ToggleSnackBar("AGENDA EXCLUÍDA COM SUCESSO", true);
+ }
+ }
+
+ private void ExcluirEmail_OnClick(object sender, RoutedEventArgs e)
+ {
+ Button button = sender as Button;
+ if (button == null)
+ {
+ return;
+ }
+ ListBox listBox = Extentions.FindVisualAncestor<ListBox>(button);
+ AgendaEmail item = (AgendaEmail)listBox.Items[listBox.Items.IndexOf(button.DataContext)];
+ this.ViewModel.ExcluirEmail(item);
+ }
+
+ private void ExcluirTelefone_OnClick(object sender, RoutedEventArgs e)
+ {
+ Button button = sender as Button;
+ if (button == null)
+ {
+ return;
+ }
+ ListBox listBox = Extentions.FindVisualAncestor<ListBox>(button);
+ AgendaTelefone item = (AgendaTelefone)listBox.Items[listBox.Items.IndexOf(button.DataContext)];
+ this.ViewModel.ExcluirTelefone(item);
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ private void Incluir_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Incluir();
+ List<KeyValuePair<string, string>> keyValuePairs = this.ViewModel.SelectedAgenda.Validate();
+ this.ValidateFields(keyValuePairs, true);
+ }
+
+ private void IncluirEmail_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.IncluirEmail();
+ }
+
+ private void IncluirTelefone_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.IncluirTelefone();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/agendadrawer.xaml", UriKind.Relative));
+ }
+
+ private async void PostcodeBox_OnLostFocus(object sender, RoutedEventArgs e)
+ {
+ string str = ValidationHelper.FormatPostCode(((TextBox)sender).Text);
+ this.CepBox.Text = str;
+ if (ValidationHelper.ValidatePostCode(str))
+ {
+ EnderecoBase enderecoBase = await this.ViewModel.BuscaCep(str);
+ if (enderecoBase != null)
+ {
+ this.EnderecoBox.Text = enderecoBase.get_Endereco();
+ this.CidadeBox.Text = enderecoBase.get_Cidade();
+ this.EstadoBox.Text = enderecoBase.get_Estado();
+ this.BairroBox.Text = enderecoBase.get_Bairro();
+ }
+ }
+ }
+
+ private async void Salvar_OnClick(object sender, RoutedEventArgs e)
+ {
+ bool flag;
+ this.ViewModel.Carregando = true;
+ List<KeyValuePair<string, string>> keyValuePairs = await this.ViewModel.Salvar();
+ this.ValidateFields(keyValuePairs, true);
+ flag = (keyValuePairs == null ? true : keyValuePairs.Count == 0);
+ this.ViewModel.Carregando = false;
+ if (!flag)
+ {
+ await this.ViewModel.ShowMessage(keyValuePairs, this.ViewModel.ErroCamposInvalidos, "OK", "");
+ }
+ else
+ {
+ this.ToggleSnackBar("AGENDA SALVA COM SUCESSO", true);
+ }
+ }
+
+ private void SnackbarMessage_ActionClick(object sender, RoutedEventArgs e)
+ {
+ this.Snackbar.set_IsActive(false);
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ this.ProgressBar = (System.Windows.Controls.ProgressBar)target;
+ return;
+ }
+ case 2:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 3:
+ {
+ ((AutoCompleteBox)target).add_Populating(new PopulatingEventHandler(this, AgendaDrawer.AutoCompleteBox_Populating));
+ ((AutoCompleteBox)target).add_TextChanged(new RoutedEventHandler(this.AutoCompleteBox_OnTextChanged));
+ return;
+ }
+ case 4:
+ {
+ this.AgendaGrid = (DataGrid)target;
+ return;
+ }
+ case 5:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Incluir_OnClick);
+ return;
+ }
+ case 6:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Alterar_OnClick);
+ return;
+ }
+ case 7:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Salvar_OnClick);
+ return;
+ }
+ case 8:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Cancelar_OnClick);
+ return;
+ }
+ case 9:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Excluir_OnClick);
+ return;
+ }
+ case 10:
+ {
+ this.MaisOpcoesButton = (MenuItem)target;
+ return;
+ }
+ case 11:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.AbrirLog_OnClick);
+ return;
+ }
+ case 12:
+ {
+ this.NomeBox = (TextBox)target;
+ return;
+ }
+ case 13:
+ {
+ this.CepBox = (TextBox)target;
+ this.CepBox.LostFocus += new RoutedEventHandler(this.PostcodeBox_OnLostFocus);
+ AgendaDrawer agendaDrawer = this;
+ this.CepBox.PreviewTextInput += new TextCompositionEventHandler(agendaDrawer.SomenteNumeros);
+ return;
+ }
+ case 14:
+ {
+ this.ProgressCep = (System.Windows.Controls.ProgressBar)target;
+ return;
+ }
+ case 15:
+ {
+ this.EnderecoBox = (TextBox)target;
+ return;
+ }
+ case 16:
+ {
+ this.BairroBox = (TextBox)target;
+ return;
+ }
+ case 17:
+ {
+ this.CidadeBox = (TextBox)target;
+ return;
+ }
+ case 18:
+ {
+ this.EstadoBox = (TextBox)target;
+ return;
+ }
+ case 19:
+ {
+ this.ObsBox = (TextBox)target;
+ return;
+ }
+ case 20:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.IncluirTelefone_OnClick);
+ return;
+ }
+ case 21:
+ {
+ this.TelefoneListBox = (ListBox)target;
+ return;
+ }
+ case 22:
+ case 23:
+ case 24:
+ case 25:
+ case 26:
+ case 27:
+ case 30:
+ case 31:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ case 28:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.IncluirEmail_OnClick);
+ return;
+ }
+ case 29:
+ {
+ this.EmailListBox = (ListBox)target;
+ return;
+ }
+ case 32:
+ {
+ this.Snackbar = (MaterialDesignThemes.Wpf.Snackbar)target;
+ return;
+ }
+ case 33:
+ {
+ ((SnackbarMessage)target).add_ActionClick(new RoutedEventHandler(this.SnackbarMessage_ActionClick));
+ return;
+ }
+ default:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ }
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IStyleConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 22:
+ {
+ ((ComboBox)target).SelectionChanged += new SelectionChangedEventHandler(this.TipoComboBox_OnSelectionChanged);
+ return;
+ }
+ case 23:
+ {
+ AgendaDrawer agendaDrawer = this;
+ ((TextBox)target).PreviewTextInput += new TextCompositionEventHandler(agendaDrawer.SomenteNumeros);
+ return;
+ }
+ case 24:
+ {
+ AgendaDrawer agendaDrawer1 = this;
+ ((TextBox)target).LostFocus += new RoutedEventHandler(agendaDrawer1.FormatarTelefone);
+ AgendaDrawer agendaDrawer2 = this;
+ ((TextBox)target).PreviewTextInput += new TextCompositionEventHandler(agendaDrawer2.SomenteNumeros);
+ return;
+ }
+ case 25:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.ExcluirTelefone_OnClick);
+ return;
+ }
+ case 26:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.CopyTelefoneToClipBoard_Click);
+ return;
+ }
+ case 27:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.WhatsAppMessage_Click);
+ return;
+ }
+ case 28:
+ case 29:
+ {
+ return;
+ }
+ case 30:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.ExcluirEmail_OnClick);
+ return;
+ }
+ case 31:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.CopyEmailToClipBoard_Click);
+ return;
+ }
+ default:
+ {
+ return;
+ }
+ }
+ }
+
+ private void TipoComboBox_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
+ {
+ int num;
+ ComboBox comboBox = (ComboBox)sender;
+ CustomIsReadOnlyControl customIsReadOnlyControl = Extentions.FindVisualAncestor<CustomIsReadOnlyControl>(comboBox);
+ if (customIsReadOnlyControl == null)
+ {
+ return;
+ }
+ WrapPanel wrapPanel = Extentions.FindVisualAncestor<WrapPanel>(customIsReadOnlyControl);
+ ListBox listBox = Extentions.FindVisualAncestor<ListBox>(wrapPanel);
+ ContentPresenter contentPresenter = FindVisualChild.Find<ContentPresenter>((ListBoxItem)listBox.ItemContainerGenerator.ContainerFromIndex(listBox.Items.IndexOf(wrapPanel.DataContext)));
+ DataTemplate contentTemplate = contentPresenter.ContentTemplate;
+ CustomItemValidation customItemValidation = (CustomItemValidation)contentTemplate.FindName("Prefixo", contentPresenter);
+ CustomItemValidation customItemValidation1 = (CustomItemValidation)contentTemplate.FindName("Telefone", contentPresenter);
+ TextBox textBox = ViewHelper.FindChildren<TextBox>(customItemValidation).FirstOrDefault<TextBox>();
+ TextBox textBox1 = ViewHelper.FindChildren<TextBox>(customItemValidation1).FirstOrDefault<TextBox>();
+ if (textBox == null || textBox1 == null)
+ {
+ return;
+ }
+ if ((TipoTelefone)comboBox.SelectedValue == 8)
+ {
+ customItemValidation.Visibility = System.Windows.Visibility.Collapsed;
+ textBox1.MaxLength = 20;
+ return;
+ }
+ customItemValidation.Visibility = System.Windows.Visibility.Visible;
+ textBox1.MaxLength = 10;
+ num = (textBox1.Text.Length >= 10 ? 10 : textBox1.Text.Length);
+ textBox1.Text = textBox1.Text.Substring(0, num);
+ }
+
+ public void ToggleSnackBar(string message, bool active = true)
+ {
+ this.Snackbar.get_Message().Content = message;
+ this.Snackbar.set_IsActive(active);
+ if (!active)
+ {
+ return;
+ }
+ Task.Factory.StartNew(new Action(this.CloseSlackBar));
+ }
+
+ private async void WhatsAppMessage_Click(object sender, RoutedEventArgs e)
+ {
+ string str;
+ Button button = (Button)sender;
+ ListBox listBox = Extentions.FindVisualAncestor<ListBox>(button);
+ TelefoneBase item = (TelefoneBase)listBox.Items[listBox.Items.IndexOf(button.DataContext)];
+ str = (!item.get_Tipo().HasValue || item.get_Tipo().GetValueOrDefault() != 8 ? string.Concat("55", item.get_Prefixo(), item.get_Numero().Clear()) : string.Concat(item.get_Prefixo(), item.get_Numero()).Clear());
+ if (!str.EnviarWhatsapp(null))
+ {
+ await this.ViewModel.ShowMessage("HOUVE UM PROBLEMA AO ABRIR LINK DO WHATSAPP, O LINK FOI COPIADO EM SUA MAQUINA, BASTA ABRIR O NAVEGADOR DE INTERNET E COLAR NA BARRA DE ENDEREÇOS", "OK", "", false);
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/Ajuda/BoletosNotasDrawerView.cs b/Codemerx/Gestor.Application/Drawers/Ajuda/BoletosNotasDrawerView.cs
new file mode 100644
index 0000000..5426bb0
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/Ajuda/BoletosNotasDrawerView.cs
@@ -0,0 +1,174 @@
+using Agger.Registro;
+using Gestor.Application.Helpers;
+using Gestor.Application.Model.Ajuda;
+using Gestor.Application.ViewModels.Drawer.Ajuda;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Generic;
+using System;
+using System.CodeDom.Compiler;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Controls.Primitives;
+using System.Windows.Markup;
+
+namespace Gestor.Application.Drawers.Ajuda
+{
+ public class BoletosNotasDrawerView : BaseUserControl, IComponentConnector, IStyleConnector
+ {
+ internal System.Windows.Controls.ProgressBar ProgressBar;
+
+ internal ComboBox StatusCbo;
+
+ internal DataGrid BoletosGrid;
+
+ internal DataGridTemplateColumn BaixarBoletoColumn;
+
+ internal DataGridTextColumn PagamentoColumn;
+
+ internal ItemsControl BoletoDisponivel;
+
+ internal TextBlock TxtBoletoDisponivel;
+
+ private bool _contentLoaded;
+
+ public BoletosNotasViewModel ViewModel
+ {
+ get;
+ set;
+ }
+
+ public BoletosNotasDrawerView()
+ {
+ this.ViewModel = new BoletosNotasViewModel();
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ this.StatusCbo.SelectedIndex = 0;
+ }
+
+ private void ExibirBoleto_OnClick(object sender, RoutedEventArgs e)
+ {
+ Boleto selectedItem = (Boleto)this.BoletosGrid.SelectedItem;
+ if ((selectedItem.Vencimento - Funcoes.GetNetworkTime()).TotalDays > 10)
+ {
+ return;
+ }
+ Process.Start(string.Format("{0}billet/id/{1}", Address.get_ApiBoletoAgger(), selectedItem.IdBoleto));
+ }
+
+ private void ExibirNota_OnClick(object sender, RoutedEventArgs e)
+ {
+ Process.Start(((Boleto)this.BoletosGrid.SelectedItem).Nota ?? "");
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/ajuda/boletosnotasdrawerview.xaml", UriKind.Relative));
+ }
+
+ private void SelectedStatus_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
+ {
+ if (this.StatusCbo.SelectedItem == null)
+ {
+ return;
+ }
+ this.ViewModel.WorkOnSelectedStatus(this.StatusCbo.SelectedItem.ToString());
+ this.PagamentoColumn.Visibility = (this.StatusCbo.SelectedItem.ToString() == "PENDENTES" ? System.Windows.Visibility.Collapsed : System.Windows.Visibility.Visible);
+ this.BaixarBoletoColumn.Visibility = (this.StatusCbo.SelectedItem.ToString() == "PENDENTES" ? System.Windows.Visibility.Visible : System.Windows.Visibility.Collapsed);
+ this.BoletoDisponivel.Visibility = (this.StatusCbo.SelectedItem.ToString() == "PENDENTES" ? System.Windows.Visibility.Visible : System.Windows.Visibility.Collapsed);
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ this.ProgressBar = (System.Windows.Controls.ProgressBar)target;
+ return;
+ }
+ case 2:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 3:
+ {
+ this.StatusCbo = (ComboBox)target;
+ this.StatusCbo.SelectionChanged += new SelectionChangedEventHandler(this.SelectedStatus_OnSelectionChanged);
+ return;
+ }
+ case 4:
+ {
+ this.BoletosGrid = (DataGrid)target;
+ return;
+ }
+ case 5:
+ {
+ this.BaixarBoletoColumn = (DataGridTemplateColumn)target;
+ return;
+ }
+ case 6:
+ case 7:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ case 8:
+ {
+ this.PagamentoColumn = (DataGridTextColumn)target;
+ return;
+ }
+ case 9:
+ {
+ this.BoletoDisponivel = (ItemsControl)target;
+ return;
+ }
+ case 10:
+ {
+ this.TxtBoletoDisponivel = (TextBlock)target;
+ return;
+ }
+ default:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ }
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IStyleConnector.Connect(int connectionId, object target)
+ {
+ if (connectionId == 6)
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.ExibirBoleto_OnClick);
+ return;
+ }
+ if (connectionId != 7)
+ {
+ return;
+ }
+ ((Button)target).Click += new RoutedEventHandler(this.ExibirNota_OnClick);
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/Ajuda/ContratosDrawerView.cs b/Codemerx/Gestor.Application/Drawers/Ajuda/ContratosDrawerView.cs
new file mode 100644
index 0000000..3a3c153
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/Ajuda/ContratosDrawerView.cs
@@ -0,0 +1,69 @@
+using Gestor.Application.ViewModels.Drawer.Ajuda;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Generic;
+using System;
+using System.CodeDom.Compiler;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Markup;
+
+namespace Gestor.Application.Drawers.Ajuda
+{
+ public class ContratosDrawerView : BaseUserControl, IComponentConnector
+ {
+ internal DataGrid ContratosGrid;
+
+ private bool _contentLoaded;
+
+ public ContratosViewModel ViewModel
+ {
+ get;
+ set;
+ }
+
+ public ContratosDrawerView()
+ {
+ this.ViewModel = new ContratosViewModel();
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/ajuda/contratosdrawerview.xaml", UriKind.Relative));
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ if (connectionId == 1)
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ if (connectionId != 2)
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ this.ContratosGrid = (DataGrid)target;
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/Ajuda/InstalacaoDrawerView.cs b/Codemerx/Gestor.Application/Drawers/Ajuda/InstalacaoDrawerView.cs
new file mode 100644
index 0000000..9721288
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/Ajuda/InstalacaoDrawerView.cs
@@ -0,0 +1,181 @@
+using Gestor.Application.Model.Ajuda;
+using Gestor.Application.ViewModels.Drawer.Ajuda;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Generic;
+using Gestor.Common.Validation;
+using System;
+using System.CodeDom.Compiler;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Controls.Primitives;
+using System.Windows.Markup;
+
+namespace Gestor.Application.Drawers.Ajuda
+{
+ public class InstalacaoDrawerView : BaseUserControl, IComponentConnector, IStyleConnector
+ {
+ internal System.Windows.Controls.ProgressBar ProgressBar;
+
+ internal DataGrid GestorGrid;
+
+ internal DataGrid AggilizadorGrid;
+
+ private bool _contentLoaded;
+
+ public InstalacaoViewModel ViewModel
+ {
+ get;
+ set;
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ internal Delegate _CreateDelegate(Type delegateType, string handler)
+ {
+ return Delegate.CreateDelegate(delegateType, this, handler);
+ }
+
+ public InstalacaoDrawerView()
+ {
+ this.ViewModel = new InstalacaoViewModel();
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ }
+
+ private void AutoCompleteBox_OnTextChanged(object sender, RoutedEventArgs e)
+ {
+ if (!string.IsNullOrWhiteSpace(((AutoCompleteBox)sender).get_Text()))
+ {
+ return;
+ }
+ this.ViewModel.FiltrarInstalacao("");
+ }
+
+ private void AutoCompleteBox_Populating(object sender, PopulatingEventArgs e)
+ {
+ e.set_Cancel(true);
+ this.ViewModel.Filtrar(ValidationHelper.RemoveDiacritics(e.get_Parameter().Trim())).ContinueWith((Task<List<Instalacao>> searchResult) => {
+ if (searchResult.Result == null)
+ {
+ return;
+ }
+ AutoCompleteBox autoCompleteBox = (AutoCompleteBox)sender;
+ autoCompleteBox.set_ItemsSource(searchResult.Result);
+ autoCompleteBox.PopulateComplete();
+ }, TaskScheduler.FromCurrentSynchronizationContext());
+ }
+
+ private async void ExcluirInstalacaoAggilizadorGrid_OnClick(object sender, RoutedEventArgs e)
+ {
+ Instalacao selectedItem;
+ if (this.AggilizadorGrid.SelectedItem != null)
+ {
+ selectedItem = (Instalacao)this.AggilizadorGrid.SelectedItem;
+ if (await this.ViewModel.ShowMessage(string.Concat("DESEJA REALMENTE EXCLUIR A INSTALAÇÃO DA MÁQUINA ", selectedItem.Maquina.ToUpper()), "SIM", "NÃO", false))
+ {
+ this.ViewModel.Excluir(selectedItem.Id);
+ }
+ }
+ selectedItem = null;
+ }
+
+ private async void ExcluirInstalacaoGestorGrid_OnClick(object sender, RoutedEventArgs e)
+ {
+ Instalacao selectedItem;
+ if (this.GestorGrid.SelectedItem != null)
+ {
+ selectedItem = (Instalacao)this.GestorGrid.SelectedItem;
+ if (await this.ViewModel.ShowMessage(string.Concat("DESEJA REALMENTE EXCLUIR A INSTALAÇÃO DA MÁQUINA ", selectedItem.Maquina.ToUpper()), "SIM", "NÃO", false))
+ {
+ this.ViewModel.Excluir(selectedItem.Id);
+ }
+ }
+ selectedItem = null;
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/ajuda/instalacaodrawerview.xaml", UriKind.Relative));
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ this.ProgressBar = (System.Windows.Controls.ProgressBar)target;
+ return;
+ }
+ case 2:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 3:
+ {
+ ((AutoCompleteBox)target).add_Populating(new PopulatingEventHandler(this, InstalacaoDrawerView.AutoCompleteBox_Populating));
+ ((AutoCompleteBox)target).add_TextChanged(new RoutedEventHandler(this.AutoCompleteBox_OnTextChanged));
+ return;
+ }
+ case 4:
+ {
+ this.GestorGrid = (DataGrid)target;
+ return;
+ }
+ case 5:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ case 6:
+ {
+ this.AggilizadorGrid = (DataGrid)target;
+ return;
+ }
+ default:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ }
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IStyleConnector.Connect(int connectionId, object target)
+ {
+ if (connectionId == 5)
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.ExcluirInstalacaoGestorGrid_OnClick);
+ return;
+ }
+ if (connectionId != 7)
+ {
+ return;
+ }
+ ((Button)target).Click += new RoutedEventHandler(this.ExcluirInstalacaoAggilizadorGrid_OnClick);
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/ArquivoDigitalDrawer.cs b/Codemerx/Gestor.Application/Drawers/ArquivoDigitalDrawer.cs
new file mode 100644
index 0000000..04ffb9a
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/ArquivoDigitalDrawer.cs
@@ -0,0 +1,835 @@
+using Gestor.Application;
+using Gestor.Application.Helpers;
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Ferramentas;
+using Gestor.Application.Views.Generic;
+using Gestor.Common.Security;
+using Gestor.Common.Validation;
+using Gestor.Model.API;
+using Gestor.Model.Common;
+using Gestor.Model.Domain.Common;
+using Gestor.Model.Domain.Generic;
+using Gestor.Model.Domain.MalaDireta;
+using Gestor.Model.Domain.Seguros;
+using Gestor.Model.License;
+using MaterialDesignThemes.Wpf;
+using System;
+using System.CodeDom.Compiler;
+using System.Collections;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Linq;
+using System.Runtime.CompilerServices;
+using System.Text;
+using System.Text.RegularExpressions;
+using System.Threading;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Data;
+using System.Windows.Input;
+using System.Windows.Markup;
+using System.Windows.Threading;
+using Xceed.Wpf.AvalonDock.Controls;
+
+namespace Gestor.Application.Drawers
+{
+ public class ArquivoDigitalDrawer : UserControl, IComponentConnector, IStyleConnector
+ {
+ internal System.Windows.Controls.ProgressBar ProgressBar;
+
+ internal TextBlock TitleBox;
+
+ internal DataGrid ArquivoGrid;
+
+ internal TextBox DocumentoBox;
+
+ internal Snackbar SnackbarArquivoDigital;
+
+ private bool _contentLoaded;
+
+ private FiltroArquivoDigital Filtro
+ {
+ get;
+ }
+
+ public ArquivoDigitalViewModel ViewModel
+ {
+ get;
+ set;
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ internal Delegate _CreateDelegate(Type delegateType, string handler)
+ {
+ return Delegate.CreateDelegate(delegateType, this, handler);
+ }
+
+ public ArquivoDigitalDrawer(FiltroArquivoDigital filtro)
+ {
+ long? nullable;
+ long? nullable1;
+ string description;
+ string str;
+ long? nullable2;
+ string description1;
+ string str1;
+ long num;
+ this.ViewModel = new ArquivoDigitalViewModel(filtro);
+ this.Filtro = filtro;
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ System.Windows.Threading.Dispatcher dispatcher = base.Dispatcher;
+ if (dispatcher != null)
+ {
+ dispatcher.BeginInvoke(DispatcherPriority.Render, new Action(this.ContentLoad));
+ }
+ else
+ {
+ }
+ ArquivoDigitalViewModel viewModel = this.ViewModel;
+ if (filtro != null)
+ {
+ description = ValidationHelper.GetDescription(filtro.get_Tipo());
+ }
+ else
+ {
+ description = null;
+ }
+ if ((filtro != null ? filtro.get_Id() != (long)0 : true))
+ {
+ if (filtro != null)
+ {
+ nullable1 = new long?(filtro.get_Id());
+ }
+ else
+ {
+ nullable = null;
+ nullable1 = nullable;
+ }
+ str = string.Format(" DO DOCUMENTO DE ID \"{0}\"", nullable1);
+ }
+ else
+ {
+ str = "";
+ }
+ string str2 = string.Concat("ACESSOU ARQUIVO DIGITAL DE ", description, str);
+ num = (filtro != null ? filtro.get_Id() : (long)0);
+ TipoTela? nullable3 = new TipoTela?(6);
+ if (filtro != null)
+ {
+ description1 = ValidationHelper.GetDescription(filtro.get_Tipo());
+ }
+ else
+ {
+ description1 = null;
+ }
+ if ((filtro != null ? filtro.get_Id() != (long)0 : true))
+ {
+ if (filtro != null)
+ {
+ nullable2 = new long?(filtro.get_Id());
+ }
+ else
+ {
+ nullable = null;
+ nullable2 = nullable;
+ }
+ str1 = string.Format("\nID APÓLICE: {0}", nullable2);
+ }
+ else
+ {
+ str1 = "";
+ }
+ viewModel.RegistrarAcao(str2, num, nullable3, string.Concat("TIPO: ", description1, str1));
+ }
+
+ private void Abrir_OnClick(object sender, RoutedEventArgs e)
+ {
+ Button button = sender as Button;
+ if (button == null)
+ {
+ return;
+ }
+ this.ViewModel.Activated = false;
+ DataGrid dataGrid = Extentions.FindVisualAncestor<DataGrid>(button);
+ IndiceArquivoDigital item = (IndiceArquivoDigital)dataGrid.Items[dataGrid.Items.IndexOf(button.DataContext)];
+ this.ViewModel.Baixar(item, true);
+ this.ViewModel.Activated = true;
+ }
+
+ private void AlteraEventoAssinarOnClick(Button assinarButton, bool adiciona = true)
+ {
+ if (adiciona)
+ {
+ assinarButton.Click += new RoutedEventHandler(this.Assinar_OnClick);
+ return;
+ }
+ assinarButton.Click -= new RoutedEventHandler(this.Assinar_OnClick);
+ }
+
+ private void AlteraEventoEnviarOnClick(MenuItem enviarMenu, bool adiciona = true)
+ {
+ if (adiciona)
+ {
+ enviarMenu.Click += new RoutedEventHandler(this.Enviar_OnClick);
+ return;
+ }
+ enviarMenu.Click -= new RoutedEventHandler(this.Enviar_OnClick);
+ }
+
+ private void AnexarArquivos_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Anexar();
+ }
+
+ private void ArquivoGrid_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e)
+ {
+ string path;
+ if (e.EditAction != DataGridEditAction.Commit)
+ {
+ return;
+ }
+ DataGridBoundColumn column = e.Column as DataGridBoundColumn;
+ if (column == null)
+ {
+ return;
+ }
+ Binding binding = column.Binding as Binding;
+ if (binding != null)
+ {
+ path = binding.Path.Path;
+ }
+ else
+ {
+ path = null;
+ }
+ if (path != "Descricao")
+ {
+ return;
+ }
+ int index = e.Row.GetIndex();
+ TextBox editingElement = e.EditingElement as TextBox;
+ if (editingElement == null)
+ {
+ return;
+ }
+ editingElement.Text = editingElement.Text.ToUpper();
+ IndiceArquivoDigital item = (IndiceArquivoDigital)this.ArquivoGrid.Items[index];
+ if (item.get_Descricao() == editingElement.Text)
+ {
+ return;
+ }
+ item.Initialize();
+ item.set_Descricao(editingElement.Text);
+ this.ViewModel.Editar(item);
+ }
+
+ private async void Assinar_OnClick(object sender, RoutedEventArgs e)
+ {
+ object obj;
+ Button button = (Button)sender;
+ this.AlteraEventoAssinarOnClick(button, false);
+ if (!this.ViewModel.Restricao(60))
+ {
+ List<Licenca> produtos = LicenseHelper.Produtos;
+ if (!produtos.All<Licenca>((Licenca x) => x.get_Produto() != 86))
+ {
+ await this.ViewModel.EnviarParaAssinatura();
+ this.AlteraEventoAssinarOnClick(button, true);
+ }
+ else
+ {
+ Token token = new Token();
+ object[] numeroSerial = new object[] { ApplicationHelper.NumeroSerial, ApplicationHelper.IdFornecedor, Recursos.Usuario.get_Id(), null };
+ obj = (ApplicationHelper.Beta ? "1" : "0");
+ numeroSerial[3] = obj;
+ string str = token.Encrypt(string.Format("{0}:{1}:{2}:{3}", numeroSerial));
+ Parameters parameter = new Parameters();
+ parameter.set_Beta(ApplicationHelper.Beta);
+ parameter.set_Type(8);
+ parameter.set_Application("Assinador.Application.exe");
+ parameter.set_Directory("Assinador.Application");
+ parameter.set_Arguments(str);
+ parameter.set_Run(true);
+ (new DownloadWindow(parameter)).Show();
+ this.AlteraEventoAssinarOnClick(button, true);
+ }
+ }
+ else
+ {
+ await this.ViewModel.ShowMessage("VOCÊ NÃO POSSUI PERMISSÃO PARA ASSINATURA.", "OK", "", false);
+ this.AlteraEventoAssinarOnClick(button, true);
+ }
+ button = null;
+ }
+
+ private void Baixar_OnClick(object sender, RoutedEventArgs e)
+ {
+ Button button = sender as Button;
+ if (button == null)
+ {
+ return;
+ }
+ DataGrid dataGrid = Extentions.FindVisualAncestor<DataGrid>(button);
+ IndiceArquivoDigital item = (IndiceArquivoDigital)dataGrid.Items[dataGrid.Items.IndexOf(button.DataContext)];
+ this.ViewModel.Baixar(item, false);
+ }
+
+ private async void BaixarTodos_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Activated = false;
+ if (await this.ViewModel.BaixarTodos())
+ {
+ await this.ViewModel.ShowMessage("ARQUIVOS BAIXADOS COM SUCESSO!", "OK", "", false);
+ }
+ this.ViewModel.Activated = true;
+ }
+
+ private void CloseSlackBar()
+ {
+ Thread.Sleep(5000);
+ System.Windows.Threading.Dispatcher dispatcher = App.ProgressRing.Dispatcher;
+ if (dispatcher == null)
+ {
+ return;
+ }
+ dispatcher.BeginInvoke(DispatcherPriority.Background, new Action(() => this.Toggle("", false)));
+ }
+
+ private void ContentLoad()
+ {
+ this.ArquivoGrid.CellEditEnding += new EventHandler<DataGridCellEditEndingEventArgs>(this.ArquivoGrid_CellEditEnding);
+ this.DocumentoBox.LostFocus += new RoutedEventHandler(ArquivoDigitalDrawer.DocumentBox_OnLostFocus);
+ this.DocumentoBox.PreviewTextInput += new TextCompositionEventHandler(ArquivoDigitalDrawer.SomenteNumeros);
+ }
+
+ private void CopiarLinkAssinatura_OnClick(object sender, RoutedEventArgs e)
+ {
+ IndiceArquivoDigital dataContext = (IndiceArquivoDigital)((Button)sender).DataContext;
+ if (dataContext == null || string.IsNullOrWhiteSpace(dataContext.get_UrlAssinatura()))
+ {
+ return;
+ }
+ dataContext.get_UrlAssinatura().CopyToClipboard();
+ this.Toggle(string.Concat("LINK COPIADO - ", dataContext.get_UrlAssinatura()), true);
+ }
+
+ private void CopyTelefoneToClipBoard_Click(object sender, RoutedEventArgs e)
+ {
+ Button button = (Button)sender;
+ ListBox listBox = Extentions.FindVisualAncestor<ListBox>(button);
+ ClienteTelefone item = (ClienteTelefone)listBox.Items[listBox.Items.IndexOf(button.DataContext)];
+ string.Concat(item.get_Prefixo(), item.get_Numero()).CopyToClipboard();
+ this.Toggle(string.Concat("COPIADO - ", item.get_Prefixo(), ValidationHelper.OnlyNumber(item.get_Numero())), true);
+ }
+
+ private async Task<string> CreateWhatsappMessage(IndiceArquivoDigital indice)
+ {
+ string str;
+ string str1;
+ Uri uri = await this.ViewModel.CreateLink(indice);
+ StringBuilder stringBuilder = new StringBuilder(uri.ToString());
+ if (indice.get_Assinado())
+ {
+ str = "";
+ }
+ else if (indice.get_EnviadoAssinatura())
+ {
+ string[] newLine = new string[] { "LINK PARA ASSINATURA", Environment.NewLine, indice.get_UrlAssinatura(), Environment.NewLine, Environment.NewLine };
+ str = string.Concat(newLine);
+ }
+ else
+ {
+ str = "";
+ }
+ StringBuilder stringBuilder1 = new StringBuilder(str);
+ foreach (IndiceArquivoDigital arquivo in this.ViewModel.Arquivos)
+ {
+ if (arquivo.get_Selecionado() && arquivo.get_IdArquivoDigital() != indice.get_IdArquivoDigital())
+ {
+ if (stringBuilder.Length > 0)
+ {
+ stringBuilder.AppendLine("\r\n");
+ stringBuilder1.AppendLine();
+ }
+ StringBuilder stringBuilder2 = stringBuilder;
+ uri = await this.ViewModel.CreateLink(arquivo);
+ stringBuilder2.AppendLine(uri.ToString());
+ stringBuilder2 = null;
+ StringBuilder stringBuilder3 = stringBuilder1;
+ if (arquivo.get_Assinado())
+ {
+ str1 = "";
+ }
+ else if (arquivo.get_EnviadoAssinatura())
+ {
+ string[] strArrays = new string[] { "LINK PARA ASSINATURA", Environment.NewLine, arquivo.get_UrlAssinatura(), Environment.NewLine, Environment.NewLine };
+ str1 = string.Concat(strArrays);
+ }
+ else
+ {
+ str1 = "";
+ }
+ stringBuilder3.AppendLine(str1);
+ }
+ }
+ string str2 = this.ViewModel.CarregarMensagem().Replace("[*LINK*]", string.Format("LINK(S) PARA BAIXAR O(S) DOCUMENTO(S) (VÁLIDO(S) POR 7 DIAS){0}{1}", Environment.NewLine, stringBuilder)).Replace("<|LINKASSINATURA|>", stringBuilder1.ToString());
+ stringBuilder = null;
+ stringBuilder1 = null;
+ return str2;
+ }
+
+ private void DeleteArquivo_OnDeleteClick(object sender, RoutedEventArgs e)
+ {
+ Chip chip = sender as Chip;
+ if (chip == null)
+ {
+ return;
+ }
+ ListBox listBox = Extentions.FindVisualAncestor<ListBox>(chip);
+ Gestor.Model.Domain.Common.ArquivoDigital item = (Gestor.Model.Domain.Common.ArquivoDigital)listBox.Items[listBox.Items.IndexOf(chip.DataContext)];
+ if (item == null)
+ {
+ return;
+ }
+ this.ViewModel.Delete(item);
+ }
+
+ private static void DocumentBox_OnLostFocus(object sender, RoutedEventArgs e)
+ {
+ TextBox textBox = (TextBox)sender;
+ if (textBox.Text == string.Empty)
+ {
+ return;
+ }
+ textBox.Text = ValidationHelper.FormatDocument(textBox.Text);
+ }
+
+ private async void Enviar_OnClick(object sender, RoutedEventArgs e)
+ {
+ object obj;
+ MenuItem menuItem = (MenuItem)sender;
+ this.AlteraEventoEnviarOnClick(menuItem, false);
+ if (!this.ViewModel.Restricao(60))
+ {
+ ObservableCollection<IndiceArquivoDigital> arquivosTela = this.ViewModel.ArquivosTela;
+ if (arquivosTela.Any<IndiceArquivoDigital>((IndiceArquivoDigital x) => x.get_Assinar()))
+ {
+ List<Licenca> produtos = LicenseHelper.Produtos;
+ if (produtos.All<Licenca>((Licenca x) => x.get_Produto() != 86))
+ {
+ Token token = new Token();
+ object[] numeroSerial = new object[] { ApplicationHelper.NumeroSerial, ApplicationHelper.IdFornecedor, Recursos.Usuario.get_Id(), null };
+ obj = (ApplicationHelper.Beta ? "1" : "0");
+ numeroSerial[3] = obj;
+ string str = token.Encrypt(string.Format("{0}:{1}:{2}:{3}", numeroSerial));
+ Parameters parameter = new Parameters();
+ parameter.set_Beta(ApplicationHelper.Beta);
+ parameter.set_Type(8);
+ parameter.set_Application("Assinador.Application.exe");
+ parameter.set_Directory("Assinador.Application");
+ parameter.set_Arguments(str);
+ parameter.set_Run(true);
+ (new DownloadWindow(parameter)).Show();
+ this.AlteraEventoEnviarOnClick(menuItem, true);
+ menuItem = null;
+ return;
+ }
+ else if (!await this.ViewModel.EnviarParaAssinatura())
+ {
+ this.AlteraEventoEnviarOnClick(menuItem, true);
+ menuItem = null;
+ return;
+ }
+ }
+ }
+ else
+ {
+ await this.ViewModel.ShowMessage("VOCÊ NÃO POSSUI PERMISSÃO PARA ASSINATURA.\nCONTINUANDO COM O ENVIO APENAS.", "OK", "", false);
+ }
+ MalaDireta malaDiretum = await this.ViewModel.PrepararEnvio();
+ if (malaDiretum != null)
+ {
+ if (Funcoes.IsWindowOpen<HosterWindow>("ENVIO DE E-MAIL"))
+ {
+ Funcoes.Destroy<HosterWindow>("ENVIO DE E-MAIL");
+ }
+ List<MalaDireta> malaDiretas = new List<MalaDireta>()
+ {
+ malaDiretum
+ };
+ (new HosterWindow(new MalaDiretaView(malaDiretas, this.ViewModel.Assunto, this.ViewModel.Corpo, this.Filtro), "ENVIO DE E-MAIL", new double?((double)1200), new double?((double)600), true)).Show();
+ this.AlteraEventoEnviarOnClick(menuItem, true);
+ }
+ else
+ {
+ this.AlteraEventoEnviarOnClick(menuItem, true);
+ }
+ menuItem = null;
+ }
+
+ private async void EnviarPorWhatsApp_OnClick(object sender, RoutedEventArgs e)
+ {
+ string str;
+ if (!this.ViewModel.Restricao(32))
+ {
+ Button button = (Button)sender;
+ if (button.DataContext != null)
+ {
+ ClienteTelefone dataContext = button.DataContext as ClienteTelefone;
+ if (dataContext != null)
+ {
+ str = (!dataContext.get_Tipo().HasValue || dataContext.get_Tipo().GetValueOrDefault() != 8 ? string.Concat("55", dataContext.get_Prefixo(), dataContext.get_Numero().Clear()) : string.Concat(dataContext.get_Prefixo(), dataContext.get_Numero()).Clear());
+ if (!str.EnviarWhatsapp(this.ViewModel.Anotacoes))
+ {
+ await this.ViewModel.ShowMessage("HOUVE UM PROBLEMA AO ABRIR LINK DO WHATSAPP, O LINK FOI COPIADO EM SUA MAQUINA, BASTA ABRIR O NAVEGADOR DE INTERNET E COLAR NA BARRA DE ENDEREÇOS", "OK", "", false);
+ }
+ return;
+ }
+ }
+ }
+ else
+ {
+ await this.ViewModel.ShowMessage("VOCÊ NÃO POSSUI PERMISSÃO PARA ACESSAR O WHATSAPP", "OK", "", false);
+ }
+ }
+
+ private async void Excluir_OnClick(object sender, RoutedEventArgs e)
+ {
+ IndiceArquivoDigital item;
+ Button button = sender as Button;
+ if (button != null)
+ {
+ DataGrid dataGrid = Extentions.FindVisualAncestor<DataGrid>(button);
+ item = (IndiceArquivoDigital)dataGrid.Items[dataGrid.Items.IndexOf(button.DataContext)];
+ if (item != null)
+ {
+ this.ViewModel.VerificarEnables(new long?(item.get_Id()));
+ if (!this.ViewModel.EnableExcluir)
+ {
+ await this.ViewModel.ShowMessage(string.Concat("VOCÊ NÃO TEM PERMISSÃO PARA EXCLUIR ARQUIVO DIGITAL DO TIPO ", ValidationHelper.GetDescription(this.Filtro.get_Tipo()), "!"), "OK", "", false);
+ }
+ else if (item.get_NaoExcluir())
+ {
+ await this.ViewModel.ShowMessage(string.Concat("O ARQUIVO ", item.get_Descricao(), " NÃO PODE SER EXCLUÍDO!"), "OK", "", false);
+ }
+ else if (await this.ViewModel.ShowMessage(string.Concat("DESEJA REALMENTE EXCLUIR O ARQUIVO ", item.get_Descricao()), "SIM", "NÃO", false))
+ {
+ await this.ViewModel.Excluir(item);
+ }
+ }
+ }
+ item = null;
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/arquivodigitaldrawer.xaml", UriKind.Relative));
+ }
+
+ private void LimparLista_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.LimparAnexos();
+ }
+
+ private void Log_OnClick(object sender, RoutedEventArgs e)
+ {
+ Button button = sender as Button;
+ if (button == null)
+ {
+ return;
+ }
+ IndiceArquivoDigital dataContext = (IndiceArquivoDigital)button.DataContext;
+ if (dataContext != null && dataContext.get_Id() != 0)
+ {
+ this.ViewModel.AbrirLog(6, dataContext.get_Id());
+ }
+ }
+
+ private async void PopupBox_OnOpened(object sender, RoutedEventArgs e)
+ {
+ if (this.ViewModel.Telefones.Count == 0)
+ {
+ ObservableCollection<ClienteTelefone> telefones = this.ViewModel.Telefones;
+ ClienteTelefone clienteTelefone = new ClienteTelefone();
+ clienteTelefone.set_Prefixo(Recursos.Empresa.get_PrimeiroPrefixo());
+ clienteTelefone.set_Numero(Recursos.Empresa.get_PrimeiroTelefone());
+ telefones.Add(clienteTelefone);
+ }
+ IndiceArquivoDigital dataContext = (IndiceArquivoDigital)((PopupBox)sender).DataContext;
+ ArquivoDigitalViewModel viewModel = this.ViewModel;
+ viewModel.Anotacoes = await this.CreateWhatsappMessage(dataContext);
+ viewModel = null;
+ }
+
+ private async void SalvarAnexos_OnClick(object sender, RoutedEventArgs e)
+ {
+ await this.ViewModel.SalvarAnexos();
+ }
+
+ public void ScrollViewer_PreviewMouseWheel(object sender, MouseWheelEventArgs e)
+ {
+ ScrollViewer scrollViewer = (ScrollViewer)sender;
+ scrollViewer.ScrollToVerticalOffset(scrollViewer.VerticalOffset - (double)e.Delta);
+ e.Handled = true;
+ }
+
+ private void SnackbarMessage_ActionClick(object sender, RoutedEventArgs e)
+ {
+ this.SnackbarArquivoDigital.set_IsActive(false);
+ }
+
+ private static void SomenteNumeros(object sender, TextCompositionEventArgs e)
+ {
+ Regex regex = new Regex("[^0-9]+");
+ e.Handled = regex.IsMatch(e.Text);
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ ((ScrollViewer)target).PreviewMouseWheel += new MouseWheelEventHandler(this.ScrollViewer_PreviewMouseWheel);
+ return;
+ }
+ case 2:
+ {
+ this.ProgressBar = (System.Windows.Controls.ProgressBar)target;
+ return;
+ }
+ case 3:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 4:
+ {
+ this.TitleBox = (TextBlock)target;
+ return;
+ }
+ case 5:
+ case 6:
+ case 9:
+ case 10:
+ case 11:
+ case 12:
+ case 13:
+ case 14:
+ case 15:
+ case 21:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ case 7:
+ {
+ ((TextBox)target).TextChanged += new TextChangedEventHandler(this.TextBoxBase_OnTextChanged);
+ return;
+ }
+ case 8:
+ {
+ this.ArquivoGrid = (DataGrid)target;
+ return;
+ }
+ case 16:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.AnexarArquivos_OnClick);
+ return;
+ }
+ case 17:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.BaixarTodos_OnClick);
+ return;
+ }
+ case 18:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Enviar_OnClick);
+ return;
+ }
+ case 19:
+ {
+ this.DocumentoBox = (TextBox)target;
+ return;
+ }
+ case 20:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Assinar_OnClick);
+ return;
+ }
+ case 22:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.SalvarAnexos_OnClick);
+ return;
+ }
+ case 23:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.LimparLista_OnClick);
+ return;
+ }
+ case 24:
+ {
+ this.SnackbarArquivoDigital = (Snackbar)target;
+ return;
+ }
+ case 25:
+ {
+ ((SnackbarMessage)target).add_ActionClick(new RoutedEventHandler(this.SnackbarMessage_ActionClick));
+ return;
+ }
+ default:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ }
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IStyleConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 5:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.CopyTelefoneToClipBoard_Click);
+ return;
+ }
+ case 6:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.WhatsAppMessage_Click);
+ return;
+ }
+ case 7:
+ case 8:
+ case 16:
+ case 17:
+ case 18:
+ case 19:
+ case 20:
+ {
+ return;
+ }
+ case 9:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.CopiarLinkAssinatura_OnClick);
+ return;
+ }
+ case 10:
+ {
+ ((PopupBox)target).add_Opened(new RoutedEventHandler(this.PopupBox_OnOpened));
+ return;
+ }
+ case 11:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.EnviarPorWhatsApp_OnClick);
+ return;
+ }
+ case 12:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Abrir_OnClick);
+ return;
+ }
+ case 13:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Baixar_OnClick);
+ return;
+ }
+ case 14:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Log_OnClick);
+ return;
+ }
+ case 15:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Excluir_OnClick);
+ return;
+ }
+ case 21:
+ {
+ ((Chip)target).add_DeleteClick(new RoutedEventHandler(this.DeleteArquivo_OnDeleteClick));
+ return;
+ }
+ default:
+ {
+ return;
+ }
+ }
+ }
+
+ private void TextBoxBase_OnTextChanged(object sender, TextChangedEventArgs e)
+ {
+ string text = ((TextBox)sender).Text;
+ if (text.Length < 3)
+ {
+ this.ViewModel.ArquivosTela = this.ViewModel.Arquivos;
+ return;
+ }
+ List<IndiceArquivoDigital> list = (
+ from x in this.ViewModel.Arquivos
+ where x.get_Descricao().Contains(text)
+ select x).ToList<IndiceArquivoDigital>();
+ if (list.Count <= 0)
+ {
+ this.ViewModel.ArquivosTela = new ObservableCollection<IndiceArquivoDigital>();
+ return;
+ }
+ this.ViewModel.ArquivosTela = new ObservableCollection<IndiceArquivoDigital>();
+ list.ForEach((IndiceArquivoDigital x) => this.ViewModel.ArquivosTela.Add(x));
+ }
+
+ public void Toggle(string message, bool active = true)
+ {
+ this.SnackbarArquivoDigital.get_Message().Content = message;
+ this.SnackbarArquivoDigital.set_IsActive(active);
+ if (!active)
+ {
+ return;
+ }
+ Task.Factory.StartNew(new Action(this.CloseSlackBar));
+ }
+
+ private async void WhatsAppMessage_Click(object sender, RoutedEventArgs e)
+ {
+ string str;
+ if (!this.ViewModel.Restricao(32))
+ {
+ Button button = (Button)sender;
+ ListBox listBox = Extentions.FindVisualAncestor<ListBox>(button);
+ ClienteTelefone item = (ClienteTelefone)listBox.Items[listBox.Items.IndexOf(button.DataContext)];
+ str = (!item.get_Tipo().HasValue || item.get_Tipo().GetValueOrDefault() != 8 ? string.Concat("55", item.get_Prefixo(), item.get_Numero().Clear()) : string.Concat(item.get_Prefixo(), item.get_Numero()).Clear());
+ if (!str.EnviarWhatsapp(null))
+ {
+ await this.ViewModel.ShowMessage("HOUVE UM PROBLEMA AO ABRIR LINK DO WHATSAPP, O LINK FOI COPIADO EM SUA MAQUINA, BASTA ABRIR O NAVEGADOR DE INTERNET E COLAR NA BARRA DE ENDEREÇOS", "OK", "", false);
+ }
+ }
+ else
+ {
+ await this.ViewModel.ShowMessage("VOCÊ NÃO POSSUI PERMISSÃO PARA ESSE MENU.", "OK", "", false);
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/Configuracoes/ConfiguracoesDrawer.cs b/Codemerx/Gestor.Application/Drawers/Configuracoes/ConfiguracoesDrawer.cs
new file mode 100644
index 0000000..84a2223
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/Configuracoes/ConfiguracoesDrawer.cs
@@ -0,0 +1,159 @@
+using Gestor.Application.ViewModels.Configuracoes;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Model.Domain.Configuracoes;
+using System;
+using System.CodeDom.Compiler;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Markup;
+using System.Windows.Threading;
+
+namespace Gestor.Application.Drawers.Configuracoes
+{
+ public class ConfiguracoesDrawer : UserControl, IComponentConnector, IStyleConnector
+ {
+ internal System.Windows.Controls.ProgressBar ProgressBar;
+
+ internal DataGrid VendedorGrid;
+
+ private bool _contentLoaded;
+
+ private ConfiguracoesViewModel ViewModel
+ {
+ get;
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ internal Delegate _CreateDelegate(Type delegateType, string handler)
+ {
+ return Delegate.CreateDelegate(delegateType, this, handler);
+ }
+
+ public ConfiguracoesDrawer()
+ {
+ this.ViewModel = new ConfiguracoesViewModel();
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ System.Windows.Threading.Dispatcher dispatcher = base.Dispatcher;
+ if (dispatcher == null)
+ {
+ return;
+ }
+ dispatcher.BeginInvoke(DispatcherPriority.Render, new Action(this.ContentLoad));
+ }
+
+ private void AbrirLog_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.AbrirLog(50, (long)0);
+ }
+
+ private async void AdicionarConfiguracao_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Carregando = true;
+ if (this.ViewModel.SelectedConfiguracao == 15 || this.ViewModel.SelectedConfiguracao == 26 || this.ViewModel.SelectedConfiguracao == 34 || this.ViewModel.SelectedConfiguracao == 53)
+ {
+ bool? nullable = await this.ViewModel.ShowSenha("OPÇÃO RESTRITA A ADMINISTRADORES DO SISTEMA, PREENCHA A SENHA ADM PARA PROSSEGUIR.");
+ if (!nullable.HasValue)
+ {
+ this.ViewModel.Carregando = false;
+ return;
+ }
+ else if (!nullable.GetValueOrDefault())
+ {
+ await this.ViewModel.ShowMessage("SENHA INVÁLIDA", "OK", "", false);
+ this.ViewModel.Carregando = false;
+ return;
+ }
+ }
+ await this.ViewModel.Salvar();
+ this.ViewModel.Carregando = false;
+ }
+
+ private async void ContentLoad()
+ {
+ this.ViewModel.Carregando = true;
+ await this.ViewModel.BuscarConfiguracoes();
+ this.ViewModel.Carregando = false;
+ }
+
+ private async void ExcluirConfiguracao_OnClick(object sender, RoutedEventArgs e)
+ {
+ Button button = (Button)sender;
+ if (button != null && button.DataContext != null)
+ {
+ this.ViewModel.Carregando = true;
+ await this.ViewModel.Excluir((ConfiguracaoSistema)button.DataContext);
+ this.ViewModel.Carregando = false;
+ }
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/configuracoes/configuracoesdrawer.xaml", UriKind.Relative));
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ this.ProgressBar = (System.Windows.Controls.ProgressBar)target;
+ return;
+ }
+ case 2:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 3:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.AbrirLog_OnClick);
+ return;
+ }
+ case 4:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.AdicionarConfiguracao_OnClick);
+ return;
+ }
+ case 5:
+ {
+ this.VendedorGrid = (DataGrid)target;
+ return;
+ }
+ }
+ this._contentLoaded = true;
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IStyleConnector.Connect(int connectionId, object target)
+ {
+ if (connectionId == 6)
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.ExcluirConfiguracao_OnClick);
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/ExpedicaoDrawer.cs b/Codemerx/Gestor.Application/Drawers/ExpedicaoDrawer.cs
new file mode 100644
index 0000000..50ab8e8
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/ExpedicaoDrawer.cs
@@ -0,0 +1,265 @@
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Generic;
+using Gestor.Model.Domain.Generic;
+using Gestor.Model.Domain.Seguros;
+using MaterialDesignThemes.Wpf;
+using System;
+using System.CodeDom.Compiler;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Threading;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Data;
+using System.Windows.Input;
+using System.Windows.Markup;
+using System.Windows.Threading;
+
+namespace Gestor.Application.Drawers
+{
+ public class ExpedicaoDrawer : BaseUserControl, IComponentConnector
+ {
+ internal System.Windows.Controls.ProgressBar ProgressBar;
+
+ internal TextBox DocumentoBox;
+
+ internal TextBox DestinoBox;
+
+ internal DatePicker EnvioBox;
+
+ internal DatePicker RecebimentoBox;
+
+ internal TextBox ResponsavelBox;
+
+ internal DataGrid ExpedicaoGrid;
+
+ internal MaterialDesignThemes.Wpf.Snackbar Snackbar;
+
+ private bool _contentLoaded;
+
+ public ExpedicaoViewModel ViewModel
+ {
+ get;
+ set;
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ internal Delegate _CreateDelegate(Type delegateType, string handler)
+ {
+ return Delegate.CreateDelegate(delegateType, this, handler);
+ }
+
+ public ExpedicaoDrawer(Documento documento)
+ {
+ this.ViewModel = new ExpedicaoViewModel(documento);
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ System.Windows.Threading.Dispatcher dispatcher = base.Dispatcher;
+ if (dispatcher == null)
+ {
+ return;
+ }
+ dispatcher.BeginInvoke(DispatcherPriority.Render, new Action(this.ContentLoad));
+ }
+
+ private void Alterar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Alterar(true);
+ }
+
+ private void Cancelar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CancelarAlteracao();
+ }
+
+ private void CloseSlackBar()
+ {
+ Thread.Sleep(5000);
+ System.Windows.Threading.Dispatcher dispatcher = this.ProgressBar.Dispatcher;
+ if (dispatcher == null)
+ {
+ return;
+ }
+ dispatcher.BeginInvoke(DispatcherPriority.Background, new Action(() => this.ToggleSnackBar("", false)));
+ }
+
+ private void ContentLoad()
+ {
+ this.EnvioBox.LostKeyboardFocus += new KeyboardFocusChangedEventHandler(this.DatePicker_OnLostKeyboardFocus);
+ this.EnvioBox.PreviewKeyDown += new KeyEventHandler(this.DatePicker_PreviewKeyDown);
+ this.RecebimentoBox.LostKeyboardFocus += new KeyboardFocusChangedEventHandler(this.DatePicker_OnLostKeyboardFocus);
+ this.RecebimentoBox.PreviewKeyDown += new KeyEventHandler(this.DatePicker_PreviewKeyDown);
+ }
+
+ private async void Excluir_OnClick(object sender, RoutedEventArgs e)
+ {
+ if (await this.ViewModel.Excluir())
+ {
+ this.ToggleSnackBar("EXPEDIÇÃO EXCLUÍDA COM SUCESSO", true);
+ }
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ private void Incluir_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Incluir();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/expedicaodrawer.xaml", UriKind.Relative));
+ }
+
+ private void Log_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.AbrirLog(46, this.ViewModel.SelectedExpedicao.get_Id());
+ }
+
+ private async void Salvar_OnClick(object sender, RoutedEventArgs e)
+ {
+ bool flag;
+ this.ViewModel.Carregando = true;
+ List<KeyValuePair<string, string>> keyValuePairs = await this.ViewModel.Salvar();
+ this.ExpedicaoGrid.Items.Refresh();
+ flag = (keyValuePairs == null ? true : keyValuePairs.Count == 0);
+ this.ViewModel.Carregando = false;
+ if (!flag)
+ {
+ await this.ViewModel.ShowMessage(keyValuePairs, this.ViewModel.ErroCamposInvalidos, "OK", "");
+ }
+ else
+ {
+ this.ToggleSnackBar("EXPEDIÇÃO SALVA COM SUCESSO", true);
+ }
+ }
+
+ private void SnackbarMessage_ActionClick(object sender, RoutedEventArgs e)
+ {
+ this.Snackbar.set_IsActive(false);
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ this.ProgressBar = (System.Windows.Controls.ProgressBar)target;
+ return;
+ }
+ case 2:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 3:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Incluir_OnClick);
+ return;
+ }
+ case 4:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Alterar_OnClick);
+ return;
+ }
+ case 5:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Salvar_OnClick);
+ return;
+ }
+ case 6:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Cancelar_OnClick);
+ return;
+ }
+ case 7:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Excluir_OnClick);
+ return;
+ }
+ case 8:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Log_OnClick);
+ return;
+ }
+ case 9:
+ {
+ this.DocumentoBox = (TextBox)target;
+ return;
+ }
+ case 10:
+ {
+ this.DestinoBox = (TextBox)target;
+ return;
+ }
+ case 11:
+ {
+ this.EnvioBox = (DatePicker)target;
+ this.EnvioBox.LostKeyboardFocus += new KeyboardFocusChangedEventHandler(this.DatePicker_OnLostKeyboardFocus);
+ this.EnvioBox.PreviewKeyDown += new KeyEventHandler(this.DatePicker_PreviewKeyDown);
+ this.EnvioBox.MouseDoubleClick += new MouseButtonEventHandler(this.DataAtual_OnDoubleClick);
+ return;
+ }
+ case 12:
+ {
+ this.RecebimentoBox = (DatePicker)target;
+ this.RecebimentoBox.LostKeyboardFocus += new KeyboardFocusChangedEventHandler(this.DatePicker_OnLostKeyboardFocus);
+ this.RecebimentoBox.PreviewKeyDown += new KeyEventHandler(this.DatePicker_PreviewKeyDown);
+ this.RecebimentoBox.MouseDoubleClick += new MouseButtonEventHandler(this.DataAtual_OnDoubleClick);
+ return;
+ }
+ case 13:
+ {
+ this.ResponsavelBox = (TextBox)target;
+ return;
+ }
+ case 14:
+ {
+ this.ExpedicaoGrid = (DataGrid)target;
+ return;
+ }
+ case 15:
+ {
+ this.Snackbar = (MaterialDesignThemes.Wpf.Snackbar)target;
+ return;
+ }
+ case 16:
+ {
+ ((SnackbarMessage)target).add_ActionClick(new RoutedEventHandler(this.SnackbarMessage_ActionClick));
+ return;
+ }
+ }
+ this._contentLoaded = true;
+ }
+
+ public void ToggleSnackBar(string message, bool active = true)
+ {
+ this.Snackbar.get_Message().Content = message;
+ this.Snackbar.set_IsActive(active);
+ if (!active)
+ {
+ return;
+ }
+ Task.Factory.StartNew(new Action(this.CloseSlackBar));
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/ExtratosDrawer.cs b/Codemerx/Gestor.Application/Drawers/ExtratosDrawer.cs
new file mode 100644
index 0000000..890eaec
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/ExtratosDrawer.cs
@@ -0,0 +1,281 @@
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Generic;
+using Gestor.Model.Common;
+using Gestor.Model.Domain.Relatorios.ClientesAtivosInativos;
+using Gestor.Model.Domain.Seguros;
+using MaterialDesignThemes.Wpf;
+using System;
+using System.CodeDom.Compiler;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Controls.Primitives;
+using System.Windows.Input;
+using System.Windows.Markup;
+
+namespace Gestor.Application.Drawers
+{
+ public class ExtratosDrawer : BaseUserControl, IComponentConnector
+ {
+ internal System.Windows.Controls.ProgressBar ProgressBar;
+
+ internal StackPanel Tipo;
+
+ internal StackPanel Cliente;
+
+ internal ToggleButton ClienteToggle;
+
+ internal StackPanel Documento;
+
+ internal StackPanel Endosso;
+
+ internal StackPanel Item;
+
+ internal StackPanel Perfil;
+
+ internal MaterialDesignThemes.Wpf.Snackbar Snackbar;
+
+ private bool _contentLoaded;
+
+ private static List<ClientesAtivosInativos> Clientes
+ {
+ get;
+ set;
+ }
+
+ private static List<Gestor.Model.Domain.Seguros.Documento> Documentos
+ {
+ get;
+ set;
+ }
+
+ private static List<Prospeccao> Prospeccoes
+ {
+ get;
+ set;
+ }
+
+ private static List<long> Selecionados
+ {
+ get;
+ set;
+ }
+
+ private static List<long> SelecionadosPros
+ {
+ get;
+ set;
+ }
+
+ private static Relatorio? TipoRelatorio
+ {
+ get;
+ set;
+ }
+
+ public ExtratosViewModel ViewModel
+ {
+ get;
+ set;
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ internal Delegate _CreateDelegate(Type delegateType, string handler)
+ {
+ return Delegate.CreateDelegate(delegateType, this, handler);
+ }
+
+ public ExtratosDrawer(List<ClientesAtivosInativos> clientes = null, List<Gestor.Model.Domain.Seguros.Documento> documentos = null, Relatorio? tipoRelatorio = null, List<long> selecionados = null, List<long> selecionadosPros = null, List<Prospeccao> prospeccaos = null)
+ {
+ ExtratosDrawer.Documentos = documentos;
+ ExtratosDrawer.Prospeccoes = prospeccaos;
+ ExtratosDrawer.Selecionados = selecionados;
+ ExtratosDrawer.Clientes = clientes;
+ ExtratosDrawer.TipoRelatorio = tipoRelatorio;
+ ExtratosDrawer.SelecionadosPros = selecionadosPros;
+ this.ViewModel = new ExtratosViewModel()
+ {
+ TipoDeRelatorio = tipoRelatorio
+ };
+ if (!tipoRelatorio.HasValue)
+ {
+ this.ViewModel.TipoExtratoEnabled = true;
+ this.ViewModel.ClientePorPaginaVisibility = System.Windows.Visibility.Collapsed;
+ }
+ else
+ {
+ switch (tipoRelatorio.GetValueOrDefault())
+ {
+ case 0:
+ {
+ this.ViewModel.TipoExtratoEnabled = false;
+ this.ViewModel.SelectedTipoExtrato = 0;
+ this.ViewModel.SelecionarItensVisibility = System.Windows.Visibility.Collapsed;
+ break;
+ }
+ case 1:
+ case 3:
+ {
+ this.ViewModel.SelectedTipoExtrato = 1;
+ this.ViewModel.SelecionarItensVisibility = System.Windows.Visibility.Collapsed;
+ this.ViewModel.SelecionarItensVisibility = System.Windows.Visibility.Collapsed;
+ break;
+ }
+ case 2:
+ case 4:
+ {
+ this.ViewModel.TipoExtratoEnabled = false;
+ this.ViewModel.SelectedTipoExtrato = 1;
+ this.ViewModel.ClientePorPaginaVisibility = System.Windows.Visibility.Visible;
+ this.ViewModel.SelecionarItensVisibility = System.Windows.Visibility.Collapsed;
+ break;
+ }
+ default:
+ {
+ goto case 3;
+ }
+ }
+ }
+ if (this.ViewModel.SelectedTipoExtrato == null)
+ {
+ this.ViewModel.EsconderResumido = true;
+ this.ViewModel.ClienteVisibility = true;
+ }
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ private async void Gerar_OnClick(object sender, RoutedEventArgs e)
+ {
+ if (ExtratosDrawer.Clientes != null)
+ {
+ await this.ViewModel.PrepararExtrato(ExtratosDrawer.Clientes, null, null, ExtratosDrawer.TipoRelatorio, null, null, false);
+ }
+ else if (ExtratosDrawer.Documentos != null || ExtratosDrawer.Prospeccoes != null)
+ {
+ await this.ViewModel.PrepararExtrato(null, ExtratosDrawer.Documentos, ExtratosDrawer.Prospeccoes, ExtratosDrawer.TipoRelatorio, ExtratosDrawer.Selecionados, ExtratosDrawer.SelecionadosPros, false);
+ }
+ }
+
+ private async void GerarPDF_OnClick(object sender, RoutedEventArgs e)
+ {
+ if (ExtratosDrawer.Clientes != null)
+ {
+ await this.ViewModel.PrepararExtrato(ExtratosDrawer.Clientes, null, null, ExtratosDrawer.TipoRelatorio, null, null, true);
+ }
+ else if (ExtratosDrawer.Documentos != null || ExtratosDrawer.Prospeccoes != null)
+ {
+ await this.ViewModel.PrepararExtrato(null, ExtratosDrawer.Documentos, ExtratosDrawer.Prospeccoes, ExtratosDrawer.TipoRelatorio, ExtratosDrawer.Selecionados, ExtratosDrawer.SelecionadosPros, true);
+ }
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/extratosdrawer.xaml", UriKind.Relative));
+ }
+
+ private void SnackbarMessage_ActionClick(object sender, RoutedEventArgs e)
+ {
+ this.Snackbar.set_IsActive(false);
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ ((ScrollViewer)target).PreviewMouseWheel += new MouseWheelEventHandler(this.ScrollViewer_PreviewMouseWheel);
+ return;
+ }
+ case 2:
+ {
+ this.ProgressBar = (System.Windows.Controls.ProgressBar)target;
+ return;
+ }
+ case 3:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 4:
+ {
+ this.Tipo = (StackPanel)target;
+ return;
+ }
+ case 5:
+ {
+ this.Cliente = (StackPanel)target;
+ return;
+ }
+ case 6:
+ {
+ this.ClienteToggle = (ToggleButton)target;
+ return;
+ }
+ case 7:
+ {
+ this.Documento = (StackPanel)target;
+ return;
+ }
+ case 8:
+ {
+ this.Endosso = (StackPanel)target;
+ return;
+ }
+ case 9:
+ {
+ this.Item = (StackPanel)target;
+ return;
+ }
+ case 10:
+ {
+ this.Perfil = (StackPanel)target;
+ return;
+ }
+ case 11:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Gerar_OnClick);
+ return;
+ }
+ case 12:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.GerarPDF_OnClick);
+ return;
+ }
+ case 13:
+ {
+ this.Snackbar = (MaterialDesignThemes.Wpf.Snackbar)target;
+ return;
+ }
+ case 14:
+ {
+ ((SnackbarMessage)target).add_ActionClick(new RoutedEventHandler(this.SnackbarMessage_ActionClick));
+ return;
+ }
+ }
+ this._contentLoaded = true;
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/ImpostoDrawer.cs b/Codemerx/Gestor.Application/Drawers/ImpostoDrawer.cs
new file mode 100644
index 0000000..648e160
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/ImpostoDrawer.cs
@@ -0,0 +1,296 @@
+using Gestor.Application;
+using Gestor.Application.Helpers;
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Model.Domain.Generic;
+using MaterialDesignThemes.Wpf;
+using System;
+using System.CodeDom.Compiler;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+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;
+
+namespace Gestor.Application.Drawers
+{
+ public class ImpostoDrawer : UserControl, IComponentConnector
+ {
+ private readonly int _tipo;
+
+ private readonly long _id;
+
+ internal System.Windows.Controls.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;
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ internal Delegate _CreateDelegate(Type delegateType, string handler)
+ {
+ return Delegate.CreateDelegate(delegateType, this, handler);
+ }
+
+ public ImpostoDrawer(int tipo, long id)
+ {
+ this._tipo = tipo;
+ this._id = id;
+ this.ViewModel = new ImpostoViewModel();
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ System.Windows.Threading.Dispatcher dispatcher = base.Dispatcher;
+ if (dispatcher == null)
+ {
+ return;
+ }
+ dispatcher.BeginInvoke(DispatcherPriority.Render, new Action(this.ContentLoad));
+ }
+
+ private void Alterar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.AlterarImposto();
+ }
+
+ private async void Cancelar_OnClick(object sender, RoutedEventArgs e)
+ {
+ await this.ViewModel.Cancelar();
+ }
+
+ private void CloseSlackBar()
+ {
+ Thread.Sleep(5000);
+ System.Windows.Threading.Dispatcher dispatcher = App.ProgressRing.Dispatcher;
+ if (dispatcher == null)
+ {
+ return;
+ }
+ dispatcher.BeginInvoke(DispatcherPriority.Background, new Action(() => this.Toggle("", false)));
+ }
+
+ private async void ContentLoad()
+ {
+ this.ViewModel.Carregando = true;
+ await this.ViewModel.Carregar(this._tipo, this._id);
+ this.SeguradoraBox.SelectionChanged += new SelectionChangedEventHandler(this.Indice_OnSelectionChanged);
+ this.SeguradoraAlternativaBox.SelectionChanged += new SelectionChangedEventHandler(this.Indice_OnSelectionChanged);
+ this.RamoBox.SelectionChanged += new SelectionChangedEventHandler(this.Indice_OnSelectionChanged);
+ this.ViewModel.Carregando = false;
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ private void Incluir_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Incluir();
+ }
+
+ private async void Indice_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
+ {
+ if (!this.ViewModel.Carregando)
+ {
+ this.ViewModel.Carregando = true;
+ await this.ViewModel.Carregar((long)0);
+ this.ViewModel.Carregando = false;
+ }
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/impostodrawer.xaml", UriKind.Relative));
+ }
+
+ private void Log_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.AbrirLog(56, this.ViewModel.SelectedImposto.get_Id());
+ }
+
+ private async void Salvar_OnClick(object sender, RoutedEventArgs e)
+ {
+ bool flag;
+ this.ViewModel.Carregando = true;
+ List<KeyValuePair<string, string>> keyValuePairs = await this.ViewModel.Salvar();
+ this.ValidateFields(keyValuePairs, true);
+ flag = (keyValuePairs == null ? true : keyValuePairs.Count == 0);
+ this.ViewModel.Carregando = false;
+ if (!flag)
+ {
+ await this.ViewModel.ShowMessage(keyValuePairs, this.ViewModel.ErroCamposInvalidos, "OK", "");
+ }
+ else
+ {
+ this.Toggle("PARÂMETRO SALVO COM SUCESSO.", true);
+ }
+ }
+
+ private void SnackbarMessage_ActionClick(object sender, RoutedEventArgs e)
+ {
+ this.SnackbarImposto.set_IsActive(false);
+ }
+
+ private async void Status_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
+ {
+ bool? nullable;
+ string str;
+ ListBox listBox = (ListBox)sender;
+ if (listBox.SelectedItem != null)
+ {
+ ImpostoViewModel viewModel = this.ViewModel;
+ if (listBox.SelectedIndex == 0)
+ {
+ nullable = new bool?(true);
+ }
+ else if (listBox.SelectedIndex == 1)
+ {
+ nullable = new bool?(false);
+ }
+ else
+ {
+ nullable = null;
+ }
+ viewModel.Ativo = nullable;
+ TextBlock titleBox = this.TitleBox;
+ if (listBox.SelectedIndex == 0)
+ {
+ str = "IMPOSTOS ATIVOS";
+ }
+ else
+ {
+ str = (listBox.SelectedIndex == 1 ? "IMPOSTOS INATIVOS" : "TODOS IMPOSTOS");
+ }
+ titleBox.Text = str;
+ await this.ViewModel.Carregar((long)0);
+ }
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ this.ProgressBar = (System.Windows.Controls.ProgressBar)target;
+ return;
+ }
+ case 2:
+ {
+ ((ListBox)target).SelectionChanged += new SelectionChangedEventHandler(this.Status_OnSelectionChanged);
+ return;
+ }
+ case 3:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 4:
+ {
+ this.TitleBox = (TextBlock)target;
+ return;
+ }
+ case 5:
+ {
+ this.SeguradoraBox = (ComboBox)target;
+ return;
+ }
+ case 6:
+ {
+ this.SeguradoraAlternativaBox = (ComboBox)target;
+ return;
+ }
+ case 7:
+ {
+ this.RamoBox = (ComboBox)target;
+ return;
+ }
+ case 8:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Incluir_OnClick);
+ return;
+ }
+ case 9:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Alterar_OnClick);
+ return;
+ }
+ case 10:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Salvar_OnClick);
+ return;
+ }
+ case 11:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Cancelar_OnClick);
+ return;
+ }
+ case 12:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Log_OnClick);
+ return;
+ }
+ case 13:
+ {
+ this.ArquivoGrid = (DataGrid)target;
+ return;
+ }
+ case 14:
+ {
+ this.SnackbarImposto = (Snackbar)target;
+ return;
+ }
+ case 15:
+ {
+ ((SnackbarMessage)target).add_ActionClick(new RoutedEventHandler(this.SnackbarMessage_ActionClick));
+ return;
+ }
+ }
+ this._contentLoaded = true;
+ }
+
+ public void Toggle(string message, bool active = true)
+ {
+ this.SnackbarImposto.get_Message().Content = message;
+ this.SnackbarImposto.set_IsActive(active);
+ if (!active)
+ {
+ return;
+ }
+ Task.Factory.StartNew(new Action(this.CloseSlackBar));
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/InclusaoArquivoDigitalDrawer.cs b/Codemerx/Gestor.Application/Drawers/InclusaoArquivoDigitalDrawer.cs
new file mode 100644
index 0000000..e8013e2
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/InclusaoArquivoDigitalDrawer.cs
@@ -0,0 +1,186 @@
+using Gestor.Application;
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Model.Common;
+using Gestor.Model.Domain.Common;
+using MaterialDesignThemes.Wpf;
+using System;
+using System.CodeDom.Compiler;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Threading;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Markup;
+using System.Windows.Threading;
+using Xceed.Wpf.AvalonDock.Controls;
+
+namespace Gestor.Application.Drawers
+{
+ public class InclusaoArquivoDigitalDrawer : UserControl, IComponentConnector, IStyleConnector
+ {
+ internal System.Windows.Controls.ProgressBar ProgressBar;
+
+ internal Snackbar SnackbarArquivoDigital;
+
+ private bool _contentLoaded;
+
+ public TarefaDrawerViewModel ViewModel
+ {
+ get;
+ set;
+ }
+
+ public InclusaoArquivoDigitalDrawer(TarefaDrawerViewModel viewModel)
+ {
+ this.ViewModel = viewModel;
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ this.ViewModel.RegistrarAcao("ACESSOU ANEXO ARQUIVO DIGITAL", (long)0, new TipoTela?(6), null);
+ }
+
+ private void AnexarArquivos_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Anexar();
+ }
+
+ private void CloseSlackBar()
+ {
+ Thread.Sleep(5000);
+ System.Windows.Threading.Dispatcher dispatcher = App.ProgressRing.Dispatcher;
+ if (dispatcher == null)
+ {
+ return;
+ }
+ dispatcher.BeginInvoke(DispatcherPriority.Background, new Action(() => this.Toggle("", false)));
+ }
+
+ private void DeleteArquivo_OnDeleteClick(object sender, RoutedEventArgs e)
+ {
+ Chip chip = sender as Chip;
+ if (chip == null)
+ {
+ return;
+ }
+ ListBox listBox = Extentions.FindVisualAncestor<ListBox>(chip);
+ ArquivoDigital item = (ArquivoDigital)listBox.Items[listBox.Items.IndexOf(chip.DataContext)];
+ if (item == null)
+ {
+ return;
+ }
+ this.ViewModel.Delete(item);
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/inclusaoarquivodigitaldrawer.xaml", UriKind.Relative));
+ }
+
+ private void LimparLista_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.LimparAnexos();
+ }
+
+ private void SalvarAnexos_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.SalvarAnexos();
+ this.ViewModel.CloseDrawer();
+ }
+
+ private void SnackbarMessage_ActionClick(object sender, RoutedEventArgs e)
+ {
+ this.SnackbarArquivoDigital.set_IsActive(false);
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ this.ProgressBar = (System.Windows.Controls.ProgressBar)target;
+ return;
+ }
+ case 2:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 3:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.AnexarArquivos_OnClick);
+ return;
+ }
+ case 4:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ case 5:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.SalvarAnexos_OnClick);
+ return;
+ }
+ case 6:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.LimparLista_OnClick);
+ return;
+ }
+ case 7:
+ {
+ this.SnackbarArquivoDigital = (Snackbar)target;
+ return;
+ }
+ case 8:
+ {
+ ((SnackbarMessage)target).add_ActionClick(new RoutedEventHandler(this.SnackbarMessage_ActionClick));
+ return;
+ }
+ default:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ }
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IStyleConnector.Connect(int connectionId, object target)
+ {
+ if (connectionId == 4)
+ {
+ ((Chip)target).add_DeleteClick(new RoutedEventHandler(this.DeleteArquivo_OnDeleteClick));
+ }
+ }
+
+ public void Toggle(string message, bool active = true)
+ {
+ this.SnackbarArquivoDigital.get_Message().Content = message;
+ this.SnackbarArquivoDigital.set_IsActive(active);
+ if (!active)
+ {
+ return;
+ }
+ Task.Factory.StartNew(new Action(this.CloseSlackBar));
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/InfoDrawer.cs b/Codemerx/Gestor.Application/Drawers/InfoDrawer.cs
new file mode 100644
index 0000000..f21deb5
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/InfoDrawer.cs
@@ -0,0 +1,219 @@
+using Gestor.Application.Helpers;
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Generic;
+using Gestor.Model.Common;
+using Gestor.Model.Domain.Common;
+using Gestor.Model.Domain.Generic;
+using Gestor.Model.Domain.Seguros;
+using MaterialDesignThemes.Wpf;
+using System;
+using System.CodeDom.Compiler;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Markup;
+using Xceed.Wpf.AvalonDock.Controls;
+
+namespace Gestor.Application.Drawers
+{
+ public class InfoDrawer : BaseUserControl, IComponentConnector, IStyleConnector
+ {
+ internal System.Windows.Controls.ProgressBar ProgressBar;
+
+ internal DataGrid ParcelaGrid;
+
+ internal DataGridTextColumn ParcelasValorColumn;
+
+ internal DataGridTextColumn ParcelasRealizadoColumn;
+
+ internal DataGridTextColumn ParcelasComissaoColumn;
+
+ internal DataGridTextColumn ParcelasReciboColumn;
+
+ internal DataGrid ItemGrid;
+
+ internal MaterialDesignThemes.Wpf.Snackbar Snackbar;
+
+ private bool _contentLoaded;
+
+ public InfoViewModel ViewModel
+ {
+ get;
+ set;
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ internal Delegate _CreateDelegate(Type delegateType, string handler)
+ {
+ return Delegate.CreateDelegate(delegateType, this, handler);
+ }
+
+ public InfoDrawer(Documento documento, bool ocultarInfos = false)
+ {
+ long? nullable;
+ string str;
+ this.ViewModel = new InfoViewModel(documento, ocultarInfos);
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ InfoViewModel viewModel = this.ViewModel;
+ if ((documento != null ? documento.get_Id() != (long)0 : true))
+ {
+ if (documento != null)
+ {
+ nullable = new long?(documento.get_Id());
+ }
+ else
+ {
+ nullable = null;
+ }
+ str = string.Format(" DO DOCUMENTO DE ID \"{0}\"", nullable);
+ }
+ else
+ {
+ str = "";
+ }
+ viewModel.RegistrarAcao(string.Concat("ACESSOU INFORMAÇÕES", str), (documento != null ? documento.get_Id() : (long)0), new TipoTela?(2), this.ViewModel.GerarObs(documento));
+ }
+
+ private void CopyTelefoneToClipBoard_Click(object sender, RoutedEventArgs e)
+ {
+ Button button = (Button)sender;
+ ListBox listBox = Extentions.FindVisualAncestor<ListBox>(button);
+ Contato item = (Contato)listBox.Items[listBox.Items.IndexOf(button.DataContext)];
+ item.get_Numero().CopyToClipboard();
+ this.ViewModel.ToggleSnackBar(string.Concat("COPIADO - ", item.get_Numero()), true);
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/infodrawer.xaml", UriKind.Relative));
+ }
+
+ private void SnackbarMessage_ActionClick(object sender, RoutedEventArgs e)
+ {
+ this.Snackbar.set_IsActive(false);
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ this.ProgressBar = (System.Windows.Controls.ProgressBar)target;
+ return;
+ }
+ case 2:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 3:
+ case 4:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ case 5:
+ {
+ this.ParcelaGrid = (DataGrid)target;
+ return;
+ }
+ case 6:
+ {
+ this.ParcelasValorColumn = (DataGridTextColumn)target;
+ return;
+ }
+ case 7:
+ {
+ this.ParcelasRealizadoColumn = (DataGridTextColumn)target;
+ return;
+ }
+ case 8:
+ {
+ this.ParcelasComissaoColumn = (DataGridTextColumn)target;
+ return;
+ }
+ case 9:
+ {
+ this.ParcelasReciboColumn = (DataGridTextColumn)target;
+ return;
+ }
+ case 10:
+ {
+ this.ItemGrid = (DataGrid)target;
+ return;
+ }
+ case 11:
+ {
+ this.Snackbar = (MaterialDesignThemes.Wpf.Snackbar)target;
+ return;
+ }
+ case 12:
+ {
+ ((SnackbarMessage)target).add_ActionClick(new RoutedEventHandler(this.SnackbarMessage_ActionClick));
+ return;
+ }
+ default:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ }
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IStyleConnector.Connect(int connectionId, object target)
+ {
+ if (connectionId == 3)
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.CopyTelefoneToClipBoard_Click);
+ return;
+ }
+ if (connectionId != 4)
+ {
+ return;
+ }
+ ((Button)target).Click += new RoutedEventHandler(this.WhatsAppMessage_Click);
+ }
+
+ private async void WhatsAppMessage_Click(object sender, RoutedEventArgs e)
+ {
+ if (!this.ViewModel.Restricao(32))
+ {
+ Button button = (Button)sender;
+ ListBox listBox = Extentions.FindVisualAncestor<ListBox>(button);
+ if (!string.Concat("55", ((Contato)listBox.Items[listBox.Items.IndexOf(button.DataContext)]).get_Numero().Clear()).EnviarWhatsapp(null))
+ {
+ await this.ViewModel.ShowMessage("HOUVE UM PROBLEMA AO ABRIR LINK DO WHATSAPP, O LINK FOI COPIADO EM SUA MAQUINA, BASTA ABRIR O NAVEGADOR DE INTERNET E COLAR NA BARRA DE ENDEREÇOS", "OK", "", false);
+ }
+ }
+ else
+ {
+ await this.ViewModel.ShowMessage("VOCÊ NÃO POSSUI PERMISSÃO PARA ACESSAR O WHATSAPP", "OK", "", false);
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/LogDrawer.cs b/Codemerx/Gestor.Application/Drawers/LogDrawer.cs
new file mode 100644
index 0000000..5e1cec9
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/LogDrawer.cs
@@ -0,0 +1,90 @@
+using Assinador.Infrastructure.Helpers;
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Generic;
+using Gestor.Model.Common;
+using System;
+using System.CodeDom.Compiler;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Markup;
+
+namespace Gestor.Application.Drawers
+{
+ public class LogDrawer : BaseUserControl, IComponentConnector
+ {
+ private bool _contentLoaded;
+
+ public LogViewModel ViewModel
+ {
+ get;
+ set;
+ }
+
+ public LogDrawer(TipoTela tela, long id, List<long> parcelas = null, int numParcela = 0)
+ {
+ this.ViewModel = new LogViewModel(tela, id, parcelas, numParcela);
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ string description = Functions.GetDescription(tela);
+ this.ViewModel.RegistrarAcao(string.Format("ACESSOU LOG DE ALTERAÇÕES DE {0} DO ID \"{1}\"", description, id), id, new TipoTela?(tela), string.Format("ID ENTIDADE: {0}\nTIPO: {1}", id, description));
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ private void Imprimir_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Imprimir();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/logdrawer.xaml", UriKind.Relative));
+ }
+
+ private void MostrarCampos_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.MostrarCampos();
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 2:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Imprimir_OnClick);
+ return;
+ }
+ case 3:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.MostrarCampos_OnClick);
+ return;
+ }
+ }
+ this._contentLoaded = true;
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/LogEmailDrawer.cs b/Codemerx/Gestor.Application/Drawers/LogEmailDrawer.cs
new file mode 100644
index 0000000..5dd6981
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/LogEmailDrawer.cs
@@ -0,0 +1,75 @@
+using Assinador.Infrastructure.Helpers;
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Generic;
+using Gestor.Model.Common;
+using System;
+using System.CodeDom.Compiler;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Markup;
+
+namespace Gestor.Application.Drawers
+{
+ public class LogEmailDrawer : BaseUserControl, IComponentConnector
+ {
+ private bool _contentLoaded;
+
+ public LogEmailViewModel ViewModel
+ {
+ get;
+ set;
+ }
+
+ public LogEmailDrawer(TipoTela tela, long id, bool singleMode = false)
+ {
+ this.ViewModel = new LogEmailViewModel(tela, id, singleMode);
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ this.ViewModel.RegistrarAcao(string.Format("ACESSOU LOG DE E-MAIL DE {0} DO ID \"{1}\"", Functions.GetDescription(tela), id), id, new TipoTela?(tela), string.Format("ID ENTIDADE: {0}\nTIPO: {1}", id, Functions.GetDescription(tela)));
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ private void Imprimir_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Imprimir();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/logemaildrawer.xaml", UriKind.Relative));
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ if (connectionId == 1)
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ if (connectionId != 2)
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ ((Button)target).Click += new RoutedEventHandler(this.Imprimir_OnClick);
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/LogSistemaAntigo.cs b/Codemerx/Gestor.Application/Drawers/LogSistemaAntigo.cs
new file mode 100644
index 0000000..051493e
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/LogSistemaAntigo.cs
@@ -0,0 +1,67 @@
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Model.Common;
+using System;
+using System.CodeDom.Compiler;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Markup;
+
+namespace Gestor.Application.Drawers
+{
+ public class LogSistemaAntigo : UserControl, IComponentConnector
+ {
+ private readonly LogSistemaAntigoViewModel _viewModel;
+
+ private bool _contentLoaded;
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ internal Delegate _CreateDelegate(Type delegateType, string handler)
+ {
+ return Delegate.CreateDelegate(delegateType, this, handler);
+ }
+
+ public LogSistemaAntigo(long id, string log)
+ {
+ this._viewModel = new LogSistemaAntigoViewModel();
+ base.DataContext = this._viewModel;
+ this.InitializeComponent();
+ this._viewModel.Descricao = string.Format("LOG DO DOCUMENTO {0}", id);
+ this._viewModel.Log = log;
+ this._viewModel.RegistrarAcao(string.Format("ACESSOU LOG DO SISTEMA ANTIGO DO ID \"{0}\"", id), id, new TipoTela?(2), string.Format("ID ENTIDADE: {0}", id));
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this._viewModel.CloseDrawer();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/logsistemaantigo.xaml", UriKind.Relative));
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ if (connectionId != 1)
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/LogUtilizacaoDrawer.cs b/Codemerx/Gestor.Application/Drawers/LogUtilizacaoDrawer.cs
new file mode 100644
index 0000000..6fc62db
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/LogUtilizacaoDrawer.cs
@@ -0,0 +1,65 @@
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Model.Common;
+using Gestor.Model.Domain.Common;
+using System;
+using System.CodeDom.Compiler;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Markup;
+
+namespace Gestor.Application.Drawers
+{
+ public class LogUtilizacaoDrawer : UserControl, IComponentConnector
+ {
+ private readonly LogAcaoViewModel _viewModel;
+
+ private bool _contentLoaded;
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ internal Delegate _CreateDelegate(Type delegateType, string handler)
+ {
+ return Delegate.CreateDelegate(delegateType, this, handler);
+ }
+
+ public LogUtilizacaoDrawer(RegistroAcao registro, Relatorio relatorio)
+ {
+ this._viewModel = new LogAcaoViewModel(registro, relatorio);
+ base.DataContext = this._viewModel;
+ this.InitializeComponent();
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this._viewModel.CloseDrawer();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/logutilizacaodrawer.xaml", UriKind.Relative));
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ if (connectionId != 1)
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/MetaSeguradoraView.cs b/Codemerx/Gestor.Application/Drawers/MetaSeguradoraView.cs
new file mode 100644
index 0000000..b8e8a21
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/MetaSeguradoraView.cs
@@ -0,0 +1,224 @@
+using Gestor.Application.Componentes;
+using Gestor.Application.Helpers;
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Generic;
+using Gestor.Model.Common;
+using Gestor.Model.Domain.Generic;
+using Gestor.Model.Domain.Seguros;
+using MaterialDesignThemes.Wpf;
+using System;
+using System.CodeDom.Compiler;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Threading;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Data;
+using System.Windows.Markup;
+using System.Windows.Threading;
+
+namespace Gestor.Application.Drawers
+{
+ public class MetaSeguradoraView : BaseUserControl, IComponentConnector
+ {
+ internal System.Windows.Controls.ProgressBar ProgressBar;
+
+ internal CustomItemValidation FaturaField;
+
+ internal DataGrid MetasGrid;
+
+ internal MaterialDesignThemes.Wpf.Snackbar Snackbar;
+
+ private bool _contentLoaded;
+
+ public MetaSeguradoraViewModel ViewModel
+ {
+ get;
+ set;
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ internal Delegate _CreateDelegate(Type delegateType, string handler)
+ {
+ return Delegate.CreateDelegate(delegateType, this, handler);
+ }
+
+ public MetaSeguradoraView(Seguradora seguradora)
+ {
+ this.ViewModel = new MetaSeguradoraViewModel(seguradora);
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ this.ViewModel.RegistrarAcao(string.Concat("ACESSOU METAS DE VENDA DA SEGURADORA \"", seguradora.get_Nome(), "\""), seguradora.get_Id(), new TipoTela?(31), string.Format("ID: {0}", seguradora.get_Id()));
+ }
+
+ private void Alterar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Alterar(true);
+ }
+
+ private void Cancelar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CancelarAlteracao();
+ }
+
+ private void CloseSlackBar()
+ {
+ Thread.Sleep(5000);
+ System.Windows.Threading.Dispatcher dispatcher = this.ProgressBar.Dispatcher;
+ if (dispatcher == null)
+ {
+ return;
+ }
+ dispatcher.BeginInvoke(DispatcherPriority.Background, new Action(() => this.ToggleSnackBar("", false)));
+ }
+
+ private async void Excluir_OnClick(object sender, RoutedEventArgs e)
+ {
+ if (await this.ViewModel.Excluir())
+ {
+ this.ToggleSnackBar("META DE VENDA EXCLUÍDA COM SUCESSO", true);
+ }
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ private void Incluir_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Incluir();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/metaseguradoraview.xaml", UriKind.Relative));
+ }
+
+ private void Log_OnClick(object sender, RoutedEventArgs e)
+ {
+ if (this.ViewModel.SelectedMetaSeguradora != null)
+ {
+ this.ViewModel.AbrirLog(31, this.ViewModel.SelectedMetaSeguradora.get_Id());
+ }
+ }
+
+ private async void Salvar_OnClick(object sender, RoutedEventArgs e)
+ {
+ bool flag;
+ this.ViewModel.Carregando = true;
+ List<KeyValuePair<string, string>> keyValuePairs = await this.ViewModel.Salvar();
+ this.MetasGrid.Items.Refresh();
+ this.ValidateFields(keyValuePairs, true);
+ flag = (keyValuePairs == null ? true : keyValuePairs.Count == 0);
+ this.ViewModel.Carregando = false;
+ if (!flag)
+ {
+ await this.ViewModel.ShowMessage(keyValuePairs, this.ViewModel.ErroCamposInvalidos, "OK", "");
+ }
+ else
+ {
+ this.ToggleSnackBar("META DE VENDA SALVA COM SUCESSO", true);
+ }
+ }
+
+ private void SnackbarMessage_ActionClick(object sender, RoutedEventArgs e)
+ {
+ this.Snackbar.set_IsActive(false);
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ this.ProgressBar = (System.Windows.Controls.ProgressBar)target;
+ return;
+ }
+ case 2:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 3:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Incluir_OnClick);
+ return;
+ }
+ case 4:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Alterar_OnClick);
+ return;
+ }
+ case 5:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Salvar_OnClick);
+ return;
+ }
+ case 6:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Cancelar_OnClick);
+ return;
+ }
+ case 7:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Excluir_OnClick);
+ return;
+ }
+ case 8:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Log_OnClick);
+ return;
+ }
+ case 9:
+ {
+ this.FaturaField = (CustomItemValidation)target;
+ return;
+ }
+ case 10:
+ {
+ this.MetasGrid = (DataGrid)target;
+ return;
+ }
+ case 11:
+ {
+ this.Snackbar = (MaterialDesignThemes.Wpf.Snackbar)target;
+ return;
+ }
+ case 12:
+ {
+ ((SnackbarMessage)target).add_ActionClick(new RoutedEventHandler(this.SnackbarMessage_ActionClick));
+ return;
+ }
+ }
+ this._contentLoaded = true;
+ }
+
+ public void ToggleSnackBar(string message, bool active = true)
+ {
+ this.Snackbar.get_Message().Content = message;
+ this.Snackbar.set_IsActive(active);
+ if (!active)
+ {
+ return;
+ }
+ Task.Factory.StartNew(new Action(this.CloseSlackBar));
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/MetaVendedorView.cs b/Codemerx/Gestor.Application/Drawers/MetaVendedorView.cs
new file mode 100644
index 0000000..da25374
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/MetaVendedorView.cs
@@ -0,0 +1,226 @@
+using CurrencyTextBoxControl;
+using Gestor.Application.Helpers;
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Generic;
+using Gestor.Model.Domain.Generic;
+using Gestor.Model.Domain.Seguros;
+using MaterialDesignThemes.Wpf;
+using System;
+using System.CodeDom.Compiler;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Threading;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Data;
+using System.Windows.Markup;
+using System.Windows.Threading;
+
+namespace Gestor.Application.Drawers
+{
+ public class MetaVendedorView : BaseUserControl, IComponentConnector
+ {
+ internal System.Windows.Controls.ProgressBar ProgressBar;
+
+ internal CurrencyTextBox ValorMetaBox;
+
+ internal TextBox AnoBox;
+
+ internal DataGrid MetasGrid;
+
+ internal MaterialDesignThemes.Wpf.Snackbar Snackbar;
+
+ private bool _contentLoaded;
+
+ public MetaVendedorViewModel ViewModel
+ {
+ get;
+ set;
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ internal Delegate _CreateDelegate(Type delegateType, string handler)
+ {
+ return Delegate.CreateDelegate(delegateType, this, handler);
+ }
+
+ public MetaVendedorView(Vendedor vendedor)
+ {
+ this.ViewModel = new MetaVendedorViewModel(vendedor);
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ }
+
+ private void Alterar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Alterar(true);
+ }
+
+ private void Cancelar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CancelarAlteracao();
+ }
+
+ private void CloseSlackBar()
+ {
+ Thread.Sleep(5000);
+ System.Windows.Threading.Dispatcher dispatcher = this.ProgressBar.Dispatcher;
+ if (dispatcher == null)
+ {
+ return;
+ }
+ dispatcher.BeginInvoke(DispatcherPriority.Background, new Action(() => this.ToggleSnackBar("", false)));
+ }
+
+ private async void Excluir_OnClick(object sender, RoutedEventArgs e)
+ {
+ if (await this.ViewModel.Excluir())
+ {
+ this.ToggleSnackBar("META DE VENDA EXCLUÍDA COM SUCESSO", true);
+ }
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ private void Incluir_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Incluir();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/metavendedorview.xaml", UriKind.Relative));
+ }
+
+ private void Log_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.AbrirLog(30, this.ViewModel.SelectedMetaVendedor.get_Id());
+ }
+
+ private async void Salvar_OnClick(object sender, RoutedEventArgs e)
+ {
+ bool flag;
+ this.ViewModel.Carregando = true;
+ List<KeyValuePair<string, string>> keyValuePairs = await this.ViewModel.Salvar();
+ this.MetasGrid.Items.Refresh();
+ this.ValidateFields(keyValuePairs, true);
+ flag = (keyValuePairs == null ? true : keyValuePairs.Count == 0);
+ this.ViewModel.Carregando = false;
+ if (!flag)
+ {
+ await this.ViewModel.ShowMessage(keyValuePairs, this.ViewModel.ErroCamposInvalidos, "OK", "");
+ }
+ else
+ {
+ this.ToggleSnackBar("META DE VENDA SALVA COM SUCESSO", true);
+ }
+ }
+
+ private void SnackbarMessage_ActionClick(object sender, RoutedEventArgs e)
+ {
+ this.Snackbar.set_IsActive(false);
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ this.ProgressBar = (System.Windows.Controls.ProgressBar)target;
+ return;
+ }
+ case 2:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 3:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Incluir_OnClick);
+ return;
+ }
+ case 4:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Alterar_OnClick);
+ return;
+ }
+ case 5:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Salvar_OnClick);
+ return;
+ }
+ case 6:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Cancelar_OnClick);
+ return;
+ }
+ case 7:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Excluir_OnClick);
+ return;
+ }
+ case 8:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Log_OnClick);
+ return;
+ }
+ case 9:
+ {
+ this.ValorMetaBox = (CurrencyTextBox)target;
+ return;
+ }
+ case 10:
+ {
+ this.AnoBox = (TextBox)target;
+ return;
+ }
+ case 11:
+ {
+ this.MetasGrid = (DataGrid)target;
+ return;
+ }
+ case 12:
+ {
+ this.Snackbar = (MaterialDesignThemes.Wpf.Snackbar)target;
+ return;
+ }
+ case 13:
+ {
+ ((SnackbarMessage)target).add_ActionClick(new RoutedEventHandler(this.SnackbarMessage_ActionClick));
+ return;
+ }
+ }
+ this._contentLoaded = true;
+ }
+
+ public void ToggleSnackBar(string message, bool active = true)
+ {
+ this.Snackbar.get_Message().Content = message;
+ this.Snackbar.set_IsActive(active);
+ if (!active)
+ {
+ return;
+ }
+ Task.Factory.StartNew(new Action(this.CloseSlackBar));
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/ObservacoesDrawer.cs b/Codemerx/Gestor.Application/Drawers/ObservacoesDrawer.cs
new file mode 100644
index 0000000..7c47563
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/ObservacoesDrawer.cs
@@ -0,0 +1,265 @@
+using Gestor.Application.Helpers;
+using Gestor.Application.Servicos;
+using Gestor.Application.Servicos.Generic;
+using Gestor.Application.Servicos.Seguros;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Model.Common;
+using Gestor.Model.Domain.Generic;
+using Gestor.Model.Domain.Seguros;
+using System;
+using System.CodeDom.Compiler;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Markup;
+using System.Windows.Threading;
+
+namespace Gestor.Application.Drawers
+{
+ public class ObservacoesDrawer : UserControl, IComponentConnector
+ {
+ private readonly BaseSegurosViewModel _viewModel;
+
+ private readonly long _id;
+
+ private TipoTela _tipo;
+
+ private ApoliceServico _apoliceServico;
+
+ private ParcelaServico _parcelaServico;
+
+ private ClienteServico _clienteServico;
+
+ internal Grid GridMainObservacao;
+
+ internal TextBlock Observacaotxt;
+
+ internal TextBox ObservacaoBox;
+
+ private bool _contentLoaded;
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ internal Delegate _CreateDelegate(Type delegateType, string handler)
+ {
+ return Delegate.CreateDelegate(delegateType, this, handler);
+ }
+
+ public ObservacoesDrawer(long id, TipoTela tipo)
+ {
+ this._apoliceServico = new ApoliceServico();
+ this._parcelaServico = new ParcelaServico();
+ this._clienteServico = new ClienteServico();
+ this._viewModel = new BaseSegurosViewModel();
+ base.DataContext = this._viewModel;
+ this.InitializeComponent();
+ this._id = id;
+ this._tipo = tipo;
+ double windowHeight = this._viewModel.GetWindowHeight();
+ this.GridMainObservacao.Height = windowHeight;
+ System.Windows.Threading.Dispatcher dispatcher = base.Dispatcher;
+ if (dispatcher == null)
+ {
+ return;
+ }
+ dispatcher.BeginInvoke(DispatcherPriority.Render, new Action(this.ContentLoad));
+ }
+
+ private void Alterar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this._viewModel.Alterar(true);
+ }
+
+ private void Cancelar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this._viewModel.Alterar(false);
+ this._viewModel.Anotacoes = string.Empty;
+ }
+
+ private async void ContentLoad()
+ {
+ await this.LoadObservacao(this._id, this._tipo, false);
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this._viewModel.CloseDrawer();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/observacoesdrawer.xaml", UriKind.Relative));
+ }
+
+ private async Task LoadObservacao(long id, TipoTela tipo, bool salvar)
+ {
+ string str;
+ TextBox observacaoBox;
+ object[] nome = new object[] { Recursos.Usuario.get_Nome(), Recursos.Usuario.get_Id(), Funcoes.GetNetworkTime(), Environment.NewLine, this._viewModel.Anotacoes, Environment.NewLine, Environment.NewLine, this.ObservacaoBox.Text };
+ string str1 = string.Format("{0}, ID: {1}, {2:g}{3}{4}{5}{6}{7}", nome);
+ this._viewModel.VerificarEnables(new long?(id));
+ switch (tipo)
+ {
+ case 1:
+ {
+ this.Observacaotxt.Text = "OBSERVAÇÃO CLIENTE";
+ if (salvar)
+ {
+ observacaoBox = this.ObservacaoBox;
+ str = await this._clienteServico.SalvarObservacoes(this._id, str1);
+ observacaoBox.Text = str;
+ observacaoBox = null;
+ if (!this._clienteServico.Sucesso)
+ {
+ goto case 4;
+ }
+ this.ObservacaoBox.Text = str1;
+ goto case 4;
+ }
+ else
+ {
+ observacaoBox = this.ObservacaoBox;
+ Cliente cliente = await this._clienteServico.BuscarClienteAsync(id);
+ observacaoBox.Text = cliente.get_Observacao();
+ observacaoBox = null;
+ goto case 4;
+ }
+ }
+ case 2:
+ {
+ this.Observacaotxt.Text = "OBSERVAÇÃO APÓLICE";
+ if (salvar)
+ {
+ str1 = await this._apoliceServico.Save(this._id, str1);
+ if (!this._apoliceServico.Sucesso)
+ {
+ goto case 4;
+ }
+ this.ObservacaoBox.Text = str1;
+ goto case 4;
+ }
+ else
+ {
+ observacaoBox = this.ObservacaoBox;
+ Documento documento = await this._apoliceServico.BuscarApoliceAsync(id, false, false);
+ observacaoBox.Text = documento.get_Observacao();
+ observacaoBox = null;
+ goto case 4;
+ }
+ }
+ case 3:
+ case 4:
+ {
+ break;
+ }
+ case 5:
+ {
+ this.Observacaotxt.Text = "OBSERVAÇÃO PARCELA";
+ if (salvar)
+ {
+ observacaoBox = this.ObservacaoBox;
+ str = await this._parcelaServico.SalvarObservacoes(this._id, str1);
+ observacaoBox.Text = str;
+ observacaoBox = null;
+ if (!this._parcelaServico.Sucesso)
+ {
+ goto case 4;
+ }
+ this.ObservacaoBox.Text = str1;
+ goto case 4;
+ }
+ else
+ {
+ observacaoBox = this.ObservacaoBox;
+ Parcela parcela = await this._parcelaServico.BuscarParcela(id);
+ observacaoBox.Text = parcela.get_Observacao();
+ observacaoBox = null;
+ goto case 4;
+ }
+ }
+ default:
+ {
+ goto case 4;
+ }
+ }
+ str1 = null;
+ }
+
+ private async void ObservacoesDrawer_OnLoaded(object sender, RoutedEventArgs e)
+ {
+ await this._viewModel.PermissaoTela(2);
+ this._viewModel.Alterar(false);
+ }
+
+ private async void Salvar_OnClick(object sender, RoutedEventArgs e)
+ {
+ if (!string.IsNullOrWhiteSpace(this._viewModel.Anotacoes))
+ {
+ await this.LoadObservacao(this._id, this._tipo, true);
+ this._viewModel.Anotacoes = string.Empty;
+ this._viewModel.Alterar(false);
+ }
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ ((ObservacoesDrawer)target).Loaded += new RoutedEventHandler(this.ObservacoesDrawer_OnLoaded);
+ return;
+ }
+ case 2:
+ {
+ this.GridMainObservacao = (Grid)target;
+ return;
+ }
+ case 3:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 4:
+ {
+ this.Observacaotxt = (TextBlock)target;
+ return;
+ }
+ case 5:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Alterar_OnClick);
+ return;
+ }
+ case 6:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Salvar_OnClick);
+ return;
+ }
+ case 7:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Cancelar_OnClick);
+ return;
+ }
+ case 8:
+ {
+ this.ObservacaoBox = (TextBox)target;
+ return;
+ }
+ }
+ this._contentLoaded = true;
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/PermissaoUsuarioDrawer.cs b/Codemerx/Gestor.Application/Drawers/PermissaoUsuarioDrawer.cs
new file mode 100644
index 0000000..859aa9d
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/PermissaoUsuarioDrawer.cs
@@ -0,0 +1,672 @@
+using Gestor.Application.Actions;
+using Gestor.Application.Helpers;
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Generic;
+using Gestor.Common.Validation;
+using Gestor.Model.Domain.Generic;
+using Gestor.Model.Domain.Seguros;
+using MaterialDesignThemes.Wpf;
+using System;
+using System.CodeDom.Compiler;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Threading;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Controls.Primitives;
+using System.Windows.Data;
+using System.Windows.Input;
+using System.Windows.Markup;
+using System.Windows.Threading;
+
+namespace Gestor.Application.Drawers
+{
+ public class PermissaoUsuarioDrawer : BaseUserControl, IComponentConnector, IStyleConnector
+ {
+ public PermissaoUsuarioViewModel ViewModel;
+
+ private bool _filtrado;
+
+ internal System.Windows.Controls.ProgressBar ProgressBar;
+
+ internal ToggleButton AtivoBox;
+
+ internal ScrollViewer ScrollPermissoes;
+
+ internal MenuItem DesativarPermissoes;
+
+ internal MenuItem AtivarPermissoes;
+
+ internal MenuItem MaisOpcoesButton;
+
+ internal DataGrid SegurosGrid;
+
+ internal DataGrid FerramentasGrid;
+
+ internal DataGrid ArquivoDigitalGrid;
+
+ internal MenuItem AtivarRestricoes;
+
+ internal MenuItem DesativarRestricoes;
+
+ internal DataGrid RestricoesBiGrid;
+
+ internal DataGrid RestricoesSegurosGrid;
+
+ internal DataGrid RestricoesRelatoriosGrid;
+
+ internal DataGrid RestricoesCamposRelatoriosGrid;
+
+ internal DataGrid RestricoesTotalizacoesRelatoriosGrid;
+
+ internal DataGrid RestricoesFinanceiroGrid;
+
+ internal DataGrid RestricoesFerramentasGrid;
+
+ internal DataGrid RestricoesAjudaGrid;
+
+ internal MaterialDesignThemes.Wpf.Snackbar Snackbar;
+
+ private bool _contentLoaded;
+
+ public PermissaoUsuarioDrawer(Usuario usuario)
+ {
+ this.ViewModel = new PermissaoUsuarioViewModel(usuario);
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ Gestor.Application.Actions.Actions.OcultarTogglesSeguros = (Action)Delegate.Combine(Gestor.Application.Actions.Actions.OcultarTogglesSeguros, new Action(this.OcultarTogglesSeguros));
+ Gestor.Application.Actions.Actions.OcultarTogglesFerramentas = (Action)Delegate.Combine(Gestor.Application.Actions.Actions.OcultarTogglesFerramentas, new Action(this.OcultarTogglesFerramentas));
+ Gestor.Application.Actions.Actions.OcultarTogglesArquivoDigital = (Action)Delegate.Combine(Gestor.Application.Actions.Actions.OcultarTogglesArquivoDigital, new Action(PermissaoUsuarioDrawer.OcultarTogglesArquivoDigital));
+ }
+
+ private async Task AbrirCopiarPermiss()
+ {
+ Tuple<List<PermissaoUsuario>, Usuario, List<RestricaoUsuario>, List<PermissaoArquivoDigital>, List<RestricaoUsuarioCamposRelatorios>> tuple;
+ do
+ {
+ tuple = await this.ViewModel.ShowCopiarPermissaoDialog();
+ if (tuple != null)
+ {
+ continue;
+ }
+ return;
+ }
+ while (!this.ViewModel.CopiarPermissoes(tuple));
+ this.SegurosGrid.Items.Refresh();
+ this.FerramentasGrid.Items.Refresh();
+ this.ArquivoDigitalGrid.Items.Refresh();
+ this.RestricoesBiGrid.Items.Refresh();
+ this.RestricoesSegurosGrid.Items.Refresh();
+ this.RestricoesFinanceiroGrid.Items.Refresh();
+ this.RestricoesFerramentasGrid.Items.Refresh();
+ this.RestricoesRelatoriosGrid.Items.Refresh();
+ this.RestricoesTotalizacoesRelatoriosGrid.Items.Refresh();
+ this.RestricoesCamposRelatoriosGrid.Items.Refresh();
+ this.FerramentasGrid.EsconderToggles(18, TipoToggle.Incluir | TipoToggle.Excluir);
+ this.FerramentasGrid.EsconderToggles(10, TipoToggle.Excluir);
+ this.FerramentasGrid.EsconderToggles(12, TipoToggle.Incluir | TipoToggle.Excluir);
+ this.FerramentasGrid.EsconderToggles(13, TipoToggle.Incluir | TipoToggle.Excluir);
+ this.SegurosGrid.EsconderToggles(21, TipoToggle.Incluir | TipoToggle.Alterar | TipoToggle.Excluir);
+ this.SegurosGrid.EsconderToggles(5, TipoToggle.Consultar);
+ }
+
+ private async Task AbrirExportarPermiss()
+ {
+ bool flag;
+ do
+ {
+ List<Usuario> usuarios = await this.ViewModel.ShowExportarPermissaoDialog(this.ViewModel.SelectedUsuario.get_Id());
+ if (usuarios != null)
+ {
+ this.ViewModel.Carregando = true;
+ flag = await this.ViewModel.ExportarPermissoes(usuarios);
+ this.ViewModel.Carregando = false;
+ }
+ else
+ {
+ return;
+ }
+ }
+ while (!flag);
+ this.ToggleSnackBar("PERMISSÕES/RESTRIÇÕES EXPORTADAS COM SUCESSO.", true);
+ }
+
+ private void AbrirLogPermissoes_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.AbrirLog(43, this.ViewModel.SelectedUsuario.get_Id());
+ }
+
+ private void AtivarDesativarPermissoes_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.AtivarDesativarPermissoes(this.ViewModel.AtivarDesativarPermissoesBool);
+ }
+
+ private void AtivarDesativarRestricoes_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.AtivarDesativarRestricoes(this.ViewModel.AtivarDesativarRestricoesBool);
+ }
+
+ private void AutoCompleteBox_OnTextChanged(object sender, RoutedEventArgs e)
+ {
+ if (((AutoCompleteBox)sender).get_Text().Length >= 3 || !this._filtrado)
+ {
+ return;
+ }
+ this._filtrado = false;
+ this.ViewModel.FiltrarRestricoesBis("");
+ this.ViewModel.FiltrarRestricoesSeguros("");
+ this.ViewModel.FiltrarRestricoesRelatorios("");
+ this.ViewModel.FiltrarRestricoesTotalizacoesRelatorios("");
+ this.ViewModel.FiltrarRestricoesCamposRelatorios("");
+ this.ViewModel.FiltrarRestricoesFinanceiros("");
+ this.ViewModel.FiltrarRestricoesFerramentas("");
+ this.ViewModel.FiltrarRestricoesAjudas("");
+ }
+
+ private void AutoCompleteBox_Populating(object sender, PopulatingEventArgs e)
+ {
+ if (e.get_Parameter().Length < 3)
+ {
+ return;
+ }
+ this._filtrado = true;
+ e.set_Cancel(true);
+ this.ViewModel.FiltrarRestricoesBi(ValidationHelper.RemoveDiacritics(e.get_Parameter().Trim())).ContinueWith((Task<List<RestricaoUsuario>> searchResult) => ((AutoCompleteBox)sender).PopulateComplete(), TaskScheduler.FromCurrentSynchronizationContext());
+ this.ViewModel.FiltrarRestricoesSeguro(ValidationHelper.RemoveDiacritics(e.get_Parameter().Trim())).ContinueWith((Task<List<RestricaoUsuario>> searchResult) => ((AutoCompleteBox)sender).PopulateComplete(), TaskScheduler.FromCurrentSynchronizationContext());
+ this.ViewModel.FiltrarRestricoesRelatorio(ValidationHelper.RemoveDiacritics(e.get_Parameter().Trim())).ContinueWith((Task<List<RestricaoUsuario>> searchResult) => ((AutoCompleteBox)sender).PopulateComplete(), TaskScheduler.FromCurrentSynchronizationContext());
+ this.ViewModel.FiltrarRestricoesTotalizacoesRelatorio(ValidationHelper.RemoveDiacritics(e.get_Parameter().Trim())).ContinueWith((Task<List<RestricaoUsuario>> searchResult) => ((AutoCompleteBox)sender).PopulateComplete(), TaskScheduler.FromCurrentSynchronizationContext());
+ this.ViewModel.FiltrarRestricoesCamposRelatorio(ValidationHelper.RemoveDiacritics(e.get_Parameter().Trim())).ContinueWith((Task<List<RestricaoUsuarioCamposRelatorios>> searchResult) => ((AutoCompleteBox)sender).PopulateComplete(), TaskScheduler.FromCurrentSynchronizationContext());
+ this.ViewModel.FiltrarRestricoesFinanceiro(ValidationHelper.RemoveDiacritics(e.get_Parameter().Trim())).ContinueWith((Task<List<RestricaoUsuario>> searchResult) => ((AutoCompleteBox)sender).PopulateComplete(), TaskScheduler.FromCurrentSynchronizationContext());
+ this.ViewModel.FiltrarRestricoesFerramenta(ValidationHelper.RemoveDiacritics(e.get_Parameter().Trim())).ContinueWith((Task<List<RestricaoUsuario>> searchResult) => ((AutoCompleteBox)sender).PopulateComplete(), TaskScheduler.FromCurrentSynchronizationContext());
+ this.ViewModel.FiltrarRestricoesAjuda(ValidationHelper.RemoveDiacritics(e.get_Parameter().Trim())).ContinueWith((Task<List<RestricaoUsuario>> searchResult) => ((AutoCompleteBox)sender).PopulateComplete(), TaskScheduler.FromCurrentSynchronizationContext());
+ }
+
+ private void CloseSlackBar()
+ {
+ Thread.Sleep(5000);
+ System.Windows.Threading.Dispatcher dispatcher = this.ProgressBar.Dispatcher;
+ if (dispatcher == null)
+ {
+ return;
+ }
+ dispatcher.BeginInvoke(DispatcherPriority.Background, new Action(() => this.ToggleSnackBar("", false)));
+ }
+
+ private async void CopiarUsuario_OnClick(object sender, RoutedEventArgs e)
+ {
+ await this.AbrirCopiarPermiss();
+ }
+
+ private async void ExportarUsuario_OnClick(object sender, RoutedEventArgs e)
+ {
+ await this.AbrirExportarPermiss();
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ Action atualizaUsuario = Gestor.Application.Actions.Actions.AtualizaUsuario;
+ if (atualizaUsuario != null)
+ {
+ atualizaUsuario();
+ }
+ else
+ {
+ }
+ this.ViewModel.CloseDrawer();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/permissaousuariodrawer.xaml", UriKind.Relative));
+ }
+
+ private static void OcultarTogglesArquivoDigital()
+ {
+ }
+
+ private void OcultarTogglesFerramentas()
+ {
+ this.FerramentasGrid.EsconderToggles(18, TipoToggle.Incluir | TipoToggle.Excluir);
+ this.FerramentasGrid.EsconderToggles(10, TipoToggle.Excluir);
+ this.FerramentasGrid.EsconderToggles(12, TipoToggle.Incluir | TipoToggle.Excluir);
+ this.FerramentasGrid.EsconderToggles(13, TipoToggle.Excluir);
+ }
+
+ private void OcultarTogglesSeguros()
+ {
+ this.SegurosGrid.EsconderToggles(21, TipoToggle.Incluir | TipoToggle.Alterar | TipoToggle.Excluir);
+ this.SegurosGrid.EsconderToggles(5, TipoToggle.Consultar);
+ }
+
+ private void PermissoesGrid_OnPreviewMouseWheel(object sender, MouseWheelEventArgs e)
+ {
+ this.ScrollPermissoes.ScrollToVerticalOffset(this.ScrollPermissoes.VerticalOffset - (double)e.Delta);
+ }
+
+ private async void SalvarPermissoes_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Carregando = true;
+ if (await this.ViewModel.Salvar(null, true))
+ {
+ this.ToggleSnackBar("PERMISSÕES/RESTRIÇÕES SALVAS COM SUCESSO.", true);
+ }
+ this.ViewModel.Carregando = false;
+ }
+
+ private void SnackbarMessage_ActionClick(object sender, RoutedEventArgs e)
+ {
+ this.Snackbar.set_IsActive(false);
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ this.ProgressBar = (System.Windows.Controls.ProgressBar)target;
+ return;
+ }
+ case 2:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 3:
+ {
+ this.AtivoBox = (ToggleButton)target;
+ return;
+ }
+ case 4:
+ {
+ this.ScrollPermissoes = (ScrollViewer)target;
+ return;
+ }
+ case 5:
+ {
+ this.DesativarPermissoes = (MenuItem)target;
+ this.DesativarPermissoes.Click += new RoutedEventHandler(this.AtivarDesativarPermissoes_OnClick);
+ return;
+ }
+ case 6:
+ {
+ this.AtivarPermissoes = (MenuItem)target;
+ this.AtivarPermissoes.Click += new RoutedEventHandler(this.AtivarDesativarPermissoes_OnClick);
+ return;
+ }
+ case 7:
+ {
+ this.MaisOpcoesButton = (MenuItem)target;
+ return;
+ }
+ case 8:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.AbrirLogPermissoes_OnClick);
+ return;
+ }
+ case 9:
+ {
+ this.SegurosGrid = (DataGrid)target;
+ this.SegurosGrid.PreviewMouseWheel += new MouseWheelEventHandler(this.PermissoesGrid_OnPreviewMouseWheel);
+ return;
+ }
+ case 10:
+ case 11:
+ case 12:
+ case 13:
+ case 15:
+ case 16:
+ case 17:
+ case 18:
+ case 20:
+ case 21:
+ case 22:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ case 14:
+ {
+ this.FerramentasGrid = (DataGrid)target;
+ this.FerramentasGrid.PreviewMouseWheel += new MouseWheelEventHandler(this.PermissoesGrid_OnPreviewMouseWheel);
+ return;
+ }
+ case 19:
+ {
+ this.ArquivoDigitalGrid = (DataGrid)target;
+ this.ArquivoDigitalGrid.PreviewMouseWheel += new MouseWheelEventHandler(this.PermissoesGrid_OnPreviewMouseWheel);
+ return;
+ }
+ case 23:
+ {
+ ((AutoCompleteBox)target).add_Populating(new PopulatingEventHandler(this, PermissaoUsuarioDrawer.AutoCompleteBox_Populating));
+ ((AutoCompleteBox)target).add_TextChanged(new RoutedEventHandler(this.AutoCompleteBox_OnTextChanged));
+ return;
+ }
+ case 24:
+ {
+ this.AtivarRestricoes = (MenuItem)target;
+ this.AtivarRestricoes.Click += new RoutedEventHandler(this.AtivarDesativarRestricoes_OnClick);
+ return;
+ }
+ case 25:
+ {
+ this.DesativarRestricoes = (MenuItem)target;
+ this.DesativarRestricoes.Click += new RoutedEventHandler(this.AtivarDesativarRestricoes_OnClick);
+ return;
+ }
+ case 26:
+ {
+ this.RestricoesBiGrid = (DataGrid)target;
+ return;
+ }
+ case 27:
+ {
+ this.RestricoesSegurosGrid = (DataGrid)target;
+ return;
+ }
+ case 28:
+ {
+ this.RestricoesRelatoriosGrid = (DataGrid)target;
+ return;
+ }
+ case 29:
+ {
+ this.RestricoesCamposRelatoriosGrid = (DataGrid)target;
+ this.RestricoesCamposRelatoriosGrid.PreviewMouseWheel += new MouseWheelEventHandler(this.PermissoesGrid_OnPreviewMouseWheel);
+ return;
+ }
+ case 30:
+ {
+ this.RestricoesTotalizacoesRelatoriosGrid = (DataGrid)target;
+ return;
+ }
+ case 31:
+ {
+ this.RestricoesFinanceiroGrid = (DataGrid)target;
+ return;
+ }
+ case 32:
+ {
+ this.RestricoesFerramentasGrid = (DataGrid)target;
+ return;
+ }
+ case 33:
+ {
+ this.RestricoesAjudaGrid = (DataGrid)target;
+ return;
+ }
+ case 34:
+ {
+ this.Snackbar = (MaterialDesignThemes.Wpf.Snackbar)target;
+ return;
+ }
+ case 35:
+ {
+ ((SnackbarMessage)target).add_ActionClick(new RoutedEventHandler(this.SnackbarMessage_ActionClick));
+ return;
+ }
+ case 36:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.SalvarPermissoes_OnClick);
+ return;
+ }
+ case 37:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.CopiarUsuario_OnClick);
+ return;
+ }
+ case 38:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.ExportarUsuario_OnClick);
+ return;
+ }
+ default:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ }
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IStyleConnector.Connect(int connectionId, object target)
+ {
+ EventSetter eventSetter;
+ switch (connectionId)
+ {
+ case 10:
+ {
+ eventSetter = new EventSetter()
+ {
+ Event = ToggleButton.UncheckedEvent,
+ Handler = new RoutedEventHandler(this.UnToggleSeguros_OnChecked)
+ };
+ ((System.Windows.Style)target).Setters.Add(eventSetter);
+ return;
+ }
+ case 11:
+ {
+ eventSetter = new EventSetter()
+ {
+ Event = ToggleButton.CheckedEvent,
+ Handler = new RoutedEventHandler(this.ToggleSeguros_OnChecked)
+ };
+ ((System.Windows.Style)target).Setters.Add(eventSetter);
+ return;
+ }
+ case 12:
+ {
+ eventSetter = new EventSetter()
+ {
+ Event = ToggleButton.CheckedEvent,
+ Handler = new RoutedEventHandler(this.ToggleSeguros_OnChecked)
+ };
+ ((System.Windows.Style)target).Setters.Add(eventSetter);
+ return;
+ }
+ case 13:
+ {
+ eventSetter = new EventSetter()
+ {
+ Event = ToggleButton.CheckedEvent,
+ Handler = new RoutedEventHandler(this.ToggleSeguros_OnChecked)
+ };
+ ((System.Windows.Style)target).Setters.Add(eventSetter);
+ return;
+ }
+ case 14:
+ case 19:
+ {
+ return;
+ }
+ case 15:
+ {
+ eventSetter = new EventSetter()
+ {
+ Event = ToggleButton.UncheckedEvent,
+ Handler = new RoutedEventHandler(this.UnToggleFerramentas_OnChecked)
+ };
+ ((System.Windows.Style)target).Setters.Add(eventSetter);
+ return;
+ }
+ case 16:
+ {
+ eventSetter = new EventSetter()
+ {
+ Event = ToggleButton.CheckedEvent,
+ Handler = new RoutedEventHandler(this.ToggleFerramentas_OnChecked)
+ };
+ ((System.Windows.Style)target).Setters.Add(eventSetter);
+ return;
+ }
+ case 17:
+ {
+ eventSetter = new EventSetter()
+ {
+ Event = ToggleButton.CheckedEvent,
+ Handler = new RoutedEventHandler(this.ToggleFerramentas_OnChecked)
+ };
+ ((System.Windows.Style)target).Setters.Add(eventSetter);
+ return;
+ }
+ case 18:
+ {
+ eventSetter = new EventSetter()
+ {
+ Event = ToggleButton.CheckedEvent,
+ Handler = new RoutedEventHandler(this.ToggleFerramentas_OnChecked)
+ };
+ ((System.Windows.Style)target).Setters.Add(eventSetter);
+ return;
+ }
+ case 20:
+ {
+ eventSetter = new EventSetter()
+ {
+ Event = ToggleButton.UncheckedEvent,
+ Handler = new RoutedEventHandler(this.UnToggleArquivosDigitais_OnChecked)
+ };
+ ((System.Windows.Style)target).Setters.Add(eventSetter);
+ return;
+ }
+ case 21:
+ {
+ eventSetter = new EventSetter()
+ {
+ Event = ToggleButton.CheckedEvent,
+ Handler = new RoutedEventHandler(this.ToggleArquivosDigitais_OnChecked)
+ };
+ ((System.Windows.Style)target).Setters.Add(eventSetter);
+ return;
+ }
+ case 22:
+ {
+ eventSetter = new EventSetter()
+ {
+ Event = ToggleButton.CheckedEvent,
+ Handler = new RoutedEventHandler(this.ToggleArquivosDigitais_OnChecked)
+ };
+ ((System.Windows.Style)target).Setters.Add(eventSetter);
+ return;
+ }
+ default:
+ {
+ return;
+ }
+ }
+ }
+
+ private void ToggleArquivosDigitais_OnChecked(object sender, RoutedEventArgs e)
+ {
+ if (!this.ViewModel.Carregado)
+ {
+ return;
+ }
+ DataGridCell dataGridCell = (DataGridCell)sender;
+ if (dataGridCell == null)
+ {
+ return;
+ }
+ this.ViewModel.HabilitarArquivoDigital((PermissaoArquivoDigital)dataGridCell.DataContext);
+ }
+
+ private void ToggleFerramentas_OnChecked(object sender, RoutedEventArgs e)
+ {
+ if (!this.ViewModel.Carregado)
+ {
+ return;
+ }
+ DataGridCell dataGridCell = (DataGridCell)sender;
+ if (dataGridCell == null)
+ {
+ return;
+ }
+ this.ViewModel.HabilitarConsulta((PermissaoUsuario)dataGridCell.DataContext, "Ferramentas");
+ }
+
+ private void ToggleSeguros_OnChecked(object sender, RoutedEventArgs e)
+ {
+ if (!this.ViewModel.Carregado)
+ {
+ return;
+ }
+ DataGridCell dataGridCell = (DataGridCell)sender;
+ if (dataGridCell == null)
+ {
+ return;
+ }
+ this.ViewModel.HabilitarConsulta((PermissaoUsuario)dataGridCell.DataContext, "Seguros");
+ }
+
+ public void ToggleSnackBar(string message, bool active = true)
+ {
+ this.Snackbar.get_Message().Content = message;
+ this.Snackbar.set_IsActive(active);
+ if (!active)
+ {
+ return;
+ }
+ Task.Factory.StartNew(new Action(this.CloseSlackBar));
+ }
+
+ private void UnToggleArquivosDigitais_OnChecked(object sender, RoutedEventArgs e)
+ {
+ if (!this.ViewModel.Carregado)
+ {
+ return;
+ }
+ DataGridCell dataGridCell = (DataGridCell)sender;
+ if (dataGridCell == null)
+ {
+ return;
+ }
+ this.ViewModel.DesabilitarArquivoDigital((PermissaoArquivoDigital)dataGridCell.DataContext);
+ }
+
+ private void UnToggleFerramentas_OnChecked(object sender, RoutedEventArgs e)
+ {
+ if (!this.ViewModel.Carregado)
+ {
+ return;
+ }
+ DataGridCell dataGridCell = (DataGridCell)sender;
+ if (dataGridCell == null)
+ {
+ return;
+ }
+ this.ViewModel.DesabilitarConsulta((PermissaoUsuario)dataGridCell.DataContext, "Ferramentas");
+ }
+
+ private void UnToggleSeguros_OnChecked(object sender, RoutedEventArgs e)
+ {
+ if (!this.ViewModel.Carregado)
+ {
+ return;
+ }
+ DataGridCell dataGridCell = (DataGridCell)sender;
+ if (dataGridCell == null)
+ {
+ return;
+ }
+ this.ViewModel.DesabilitarConsulta((PermissaoUsuario)dataGridCell.DataContext, "Seguros");
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/Relatorios/ConfiguracaoRelatorio.cs b/Codemerx/Gestor.Application/Drawers/Relatorios/ConfiguracaoRelatorio.cs
new file mode 100644
index 0000000..acd3f1f
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/Relatorios/ConfiguracaoRelatorio.cs
@@ -0,0 +1,421 @@
+using Gestor.Application;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.ViewModels.Relatorios;
+using Gestor.Model.Domain.Relatorios;
+using MaterialDesignThemes.Wpf;
+using System;
+using System.CodeDom.Compiler;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+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;
+
+namespace Gestor.Application.Drawers.Relatorios
+{
+ public class ConfiguracaoRelatorio : UserControl, IComponentConnector, IStyleConnector
+ {
+ internal System.Windows.Controls.ProgressBar ProgressBar;
+
+ internal RadioButton CampoButton;
+
+ internal RadioButton TotalizacaoButton;
+
+ internal ComboBox CampoComboBox;
+
+ internal ComboBox TotalizacaoComboBox;
+
+ internal DataGrid ParametrosGrid;
+
+ internal DataGrid TotalizacaoGrid;
+
+ internal Snackbar SnackbarArquivoDigital;
+
+ private bool _contentLoaded;
+
+ public RelatorioViewModel ViewModel
+ {
+ get;
+ set;
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ internal Delegate _CreateDelegate(Type delegateType, string handler)
+ {
+ return Delegate.CreateDelegate(delegateType, this, handler);
+ }
+
+ public ConfiguracaoRelatorio(RelatorioViewModel viewModel)
+ {
+ this.ViewModel = viewModel;
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ System.Windows.Threading.Dispatcher dispatcher = base.Dispatcher;
+ if (dispatcher == null)
+ {
+ return;
+ }
+ dispatcher.BeginInvoke(DispatcherPriority.Render, new Action(this.ContentLoad));
+ }
+
+ private void AdicionarParametro_OnClick(object sender, RoutedEventArgs e)
+ {
+ object item;
+ RelatorioViewModel viewModel = this.ViewModel;
+ ComboBox campoComboBox = this.CampoComboBox;
+ if (campoComboBox != null)
+ {
+ item = campoComboBox.Items[this.CampoComboBox.SelectedIndex];
+ }
+ else
+ {
+ item = null;
+ }
+ viewModel.AdicionarParametro((ParametrosRelatorio)item);
+ }
+
+ private void AdicionarTotalizacao_OnClick(object sender, RoutedEventArgs e)
+ {
+ object item;
+ RelatorioViewModel viewModel = this.ViewModel;
+ ComboBox totalizacaoComboBox = this.TotalizacaoComboBox;
+ if (totalizacaoComboBox != null)
+ {
+ item = totalizacaoComboBox.Items[this.TotalizacaoComboBox.SelectedIndex];
+ }
+ else
+ {
+ item = null;
+ }
+ viewModel.AdicionarTotalizacao((ParametrosTotalizacao)item);
+ }
+
+ private void Campo_OnChecked(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.IsCampo = true;
+ }
+
+ private void CloseSlackBar()
+ {
+ Thread.Sleep(5000);
+ System.Windows.Threading.Dispatcher dispatcher = App.ProgressRing.Dispatcher;
+ if (dispatcher == null)
+ {
+ return;
+ }
+ dispatcher.BeginInvoke(DispatcherPriority.Background, new Action(() => this.Toggle("", false)));
+ }
+
+ private async void ContentLoad()
+ {
+ this.CampoButton.IsChecked = new bool?(this.ViewModel.IsCampo);
+ this.TotalizacaoButton.IsChecked = new bool?(!this.ViewModel.IsCampo);
+ this.CampoButton.Checked += new RoutedEventHandler(this.Campo_OnChecked);
+ this.TotalizacaoButton.Checked += new RoutedEventHandler(this.Totalizacao_OnChecked);
+ this.ViewModel.IsEnabled = false;
+ await this.ViewModel.CarregarConfiguracoes();
+ this.ViewModel.IsEnabled = true;
+ }
+
+ private void DescerParametro_OnClick(object sender, RoutedEventArgs e)
+ {
+ bool selectedIndex;
+ object item;
+ DataGrid parametrosGrid = this.ParametrosGrid;
+ if (parametrosGrid != null)
+ {
+ selectedIndex = parametrosGrid.SelectedIndex < 0;
+ }
+ else
+ {
+ selectedIndex = false;
+ }
+ if (selectedIndex)
+ {
+ return;
+ }
+ RelatorioViewModel viewModel = this.ViewModel;
+ DataGrid dataGrid = this.ParametrosGrid;
+ if (dataGrid != null)
+ {
+ item = dataGrid.Items[this.ParametrosGrid.SelectedIndex];
+ }
+ else
+ {
+ item = null;
+ }
+ viewModel.DescerParametro((ParametrosRelatorio)item);
+ }
+
+ private void ExcluirParametro_OnClick(object sender, RoutedEventArgs e)
+ {
+ bool selectedIndex;
+ object item;
+ DataGrid parametrosGrid = this.ParametrosGrid;
+ if (parametrosGrid != null)
+ {
+ selectedIndex = parametrosGrid.SelectedIndex < 0;
+ }
+ else
+ {
+ selectedIndex = false;
+ }
+ if (selectedIndex)
+ {
+ return;
+ }
+ RelatorioViewModel viewModel = this.ViewModel;
+ DataGrid dataGrid = this.ParametrosGrid;
+ if (dataGrid != null)
+ {
+ item = dataGrid.Items[this.ParametrosGrid.SelectedIndex];
+ }
+ else
+ {
+ item = null;
+ }
+ viewModel.ExcluirParametro((ParametrosRelatorio)item);
+ }
+
+ private void ExcluirTotalizacao_OnClick(object sender, RoutedEventArgs e)
+ {
+ bool selectedIndex;
+ object item;
+ DataGrid totalizacaoGrid = this.TotalizacaoGrid;
+ if (totalizacaoGrid != null)
+ {
+ selectedIndex = totalizacaoGrid.SelectedIndex < 0;
+ }
+ else
+ {
+ selectedIndex = false;
+ }
+ if (selectedIndex)
+ {
+ return;
+ }
+ RelatorioViewModel viewModel = this.ViewModel;
+ DataGrid dataGrid = this.TotalizacaoGrid;
+ if (dataGrid != null)
+ {
+ item = dataGrid.Items[this.TotalizacaoGrid.SelectedIndex];
+ }
+ else
+ {
+ item = null;
+ }
+ viewModel.ExcluirTotalizacao((ParametrosTotalizacao)item);
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/relatorios/configuracaorelatorio.xaml", UriKind.Relative));
+ }
+
+ private async void Salvar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.IsEnabled = false;
+ bool flag = await this.ViewModel.SalvarParametros();
+ this.ViewModel.IsEnabled = true;
+ if (flag)
+ {
+ this.Toggle("CONFIGURAÇÕES SALVAS.", true);
+ }
+ }
+
+ private void SnackbarMessage_ActionClick(object sender, RoutedEventArgs e)
+ {
+ this.SnackbarArquivoDigital.set_IsActive(false);
+ }
+
+ private void SubirParametro_OnClick(object sender, RoutedEventArgs e)
+ {
+ bool selectedIndex;
+ object item;
+ DataGrid parametrosGrid = this.ParametrosGrid;
+ if (parametrosGrid != null)
+ {
+ selectedIndex = parametrosGrid.SelectedIndex < 0;
+ }
+ else
+ {
+ selectedIndex = false;
+ }
+ if (selectedIndex)
+ {
+ return;
+ }
+ RelatorioViewModel viewModel = this.ViewModel;
+ DataGrid dataGrid = this.ParametrosGrid;
+ if (dataGrid != null)
+ {
+ item = dataGrid.Items[this.ParametrosGrid.SelectedIndex];
+ }
+ else
+ {
+ item = null;
+ }
+ viewModel.SubirParametro((ParametrosRelatorio)item);
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 2:
+ {
+ this.ProgressBar = (System.Windows.Controls.ProgressBar)target;
+ return;
+ }
+ case 3:
+ {
+ this.CampoButton = (RadioButton)target;
+ return;
+ }
+ case 4:
+ {
+ this.TotalizacaoButton = (RadioButton)target;
+ return;
+ }
+ case 5:
+ {
+ this.CampoComboBox = (ComboBox)target;
+ return;
+ }
+ case 6:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.AdicionarParametro_OnClick);
+ return;
+ }
+ case 7:
+ {
+ this.TotalizacaoComboBox = (ComboBox)target;
+ return;
+ }
+ case 8:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.AdicionarTotalizacao_OnClick);
+ return;
+ }
+ case 9:
+ {
+ this.ParametrosGrid = (DataGrid)target;
+ return;
+ }
+ case 10:
+ case 11:
+ case 12:
+ case 14:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ case 13:
+ {
+ this.TotalizacaoGrid = (DataGrid)target;
+ return;
+ }
+ case 15:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Salvar_OnClick);
+ return;
+ }
+ case 16:
+ {
+ this.SnackbarArquivoDigital = (Snackbar)target;
+ return;
+ }
+ case 17:
+ {
+ ((SnackbarMessage)target).add_ActionClick(new RoutedEventHandler(this.SnackbarMessage_ActionClick));
+ return;
+ }
+ default:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ }
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IStyleConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 10:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.SubirParametro_OnClick);
+ return;
+ }
+ case 11:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.DescerParametro_OnClick);
+ return;
+ }
+ case 12:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.ExcluirParametro_OnClick);
+ return;
+ }
+ case 13:
+ {
+ return;
+ }
+ case 14:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.ExcluirTotalizacao_OnClick);
+ return;
+ }
+ default:
+ {
+ return;
+ }
+ }
+ }
+
+ public void Toggle(string message, bool active = true)
+ {
+ this.SnackbarArquivoDigital.get_Message().Content = message;
+ this.SnackbarArquivoDigital.set_IsActive(active);
+ if (!active)
+ {
+ return;
+ }
+ Task.Factory.StartNew(new Action(this.CloseSlackBar));
+ }
+
+ private void Totalizacao_OnChecked(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.IsCampo = false;
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/Relatorios/FiltroRelatorio.cs b/Codemerx/Gestor.Application/Drawers/Relatorios/FiltroRelatorio.cs
new file mode 100644
index 0000000..4c1f2a2
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/Relatorios/FiltroRelatorio.cs
@@ -0,0 +1,152 @@
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.ViewModels.Relatorios;
+using Gestor.Model.Common;
+using MaterialDesignThemes.Wpf;
+using System;
+using System.CodeDom.Compiler;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Markup;
+
+namespace Gestor.Application.Drawers.Relatorios
+{
+ public class FiltroRelatorio : UserControl, IComponentConnector
+ {
+ private RelatorioViewModel ViewModel;
+
+ internal MaterialDataGridTextColumn IdField;
+
+ internal MaterialDataGridTextColumn NomeField;
+
+ internal MaterialDataGridTextColumn ApelidoField;
+
+ internal DataGrid RamosGrid;
+
+ internal DataGrid VendedorGrid;
+
+ internal DataGrid TipoSeguroGrid;
+
+ internal DataGrid TipoVendedorGrid;
+
+ internal DataGrid NegocioGrid;
+
+ internal DataGrid ProdutoGrid;
+
+ internal DataGrid EstipulanteGrid;
+
+ private bool _contentLoaded;
+
+ public FiltroRelatorio(RelatorioViewModel viewModel, Relatorio relatorio)
+ {
+ this.ViewModel = viewModel;
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ viewModel.ReloadVendedores();
+ this.VendedorGrid.Visibility = (viewModel.Vendedores.Count > 0 ? System.Windows.Visibility.Visible : System.Windows.Visibility.Collapsed);
+ this.EstipulanteGrid.Visibility = (viewModel.Estipulantes.Count > 0 ? System.Windows.Visibility.Visible : System.Windows.Visibility.Collapsed);
+ this.ProdutoGrid.Visibility = (viewModel.Produtos.Count > 0 ? System.Windows.Visibility.Visible : System.Windows.Visibility.Collapsed);
+ this.IdField.Visibility = (this.ViewModel.Apelido ? System.Windows.Visibility.Collapsed : System.Windows.Visibility.Visible);
+ this.NomeField.Visibility = (this.ViewModel.Apelido ? System.Windows.Visibility.Collapsed : System.Windows.Visibility.Visible);
+ this.ApelidoField.Visibility = (!this.ViewModel.Apelido ? System.Windows.Visibility.Collapsed : System.Windows.Visibility.Visible);
+ if (relatorio == 19)
+ {
+ this.RamosGrid.Visibility = System.Windows.Visibility.Collapsed;
+ this.TipoSeguroGrid.Visibility = System.Windows.Visibility.Collapsed;
+ this.VendedorGrid.Visibility = System.Windows.Visibility.Collapsed;
+ this.EstipulanteGrid.Visibility = System.Windows.Visibility.Collapsed;
+ this.ProdutoGrid.Visibility = System.Windows.Visibility.Collapsed;
+ this.TipoVendedorGrid.Visibility = System.Windows.Visibility.Collapsed;
+ this.NegocioGrid.Visibility = System.Windows.Visibility.Collapsed;
+ }
+ this.ViewModel.EnableMenu = true;
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Filtro = "";
+ this.ViewModel.AdicionarFiltros();
+ this.ViewModel.CloseDrawer();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/relatorios/filtrorelatorio.xaml", UriKind.Relative));
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 2:
+ {
+ this.IdField = (MaterialDataGridTextColumn)target;
+ return;
+ }
+ case 3:
+ {
+ this.NomeField = (MaterialDataGridTextColumn)target;
+ return;
+ }
+ case 4:
+ {
+ this.ApelidoField = (MaterialDataGridTextColumn)target;
+ return;
+ }
+ case 5:
+ {
+ this.RamosGrid = (DataGrid)target;
+ return;
+ }
+ case 6:
+ {
+ this.VendedorGrid = (DataGrid)target;
+ return;
+ }
+ case 7:
+ {
+ this.TipoSeguroGrid = (DataGrid)target;
+ return;
+ }
+ case 8:
+ {
+ this.TipoVendedorGrid = (DataGrid)target;
+ return;
+ }
+ case 9:
+ {
+ this.NegocioGrid = (DataGrid)target;
+ return;
+ }
+ case 10:
+ {
+ this.ProdutoGrid = (DataGrid)target;
+ return;
+ }
+ case 11:
+ {
+ this.EstipulanteGrid = (DataGrid)target;
+ return;
+ }
+ }
+ this._contentLoaded = true;
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/TarefaDrawer.cs b/Codemerx/Gestor.Application/Drawers/TarefaDrawer.cs
new file mode 100644
index 0000000..13b9bac
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/TarefaDrawer.cs
@@ -0,0 +1,631 @@
+using Gestor.Application.Componentes;
+using Gestor.Application.Helpers;
+using Gestor.Application.Servicos;
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Common.Validation;
+using Gestor.Model.Common;
+using Gestor.Model.Domain.Common;
+using Gestor.Model.Domain.Configuracoes;
+using Gestor.Model.Domain.Ferramentas;
+using Gestor.Model.Domain.Generic;
+using Gestor.Model.Domain.Seguros;
+using MaterialDesignThemes.Wpf;
+using System;
+using System.CodeDom.Compiler;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Linq;
+using System.Runtime.CompilerServices;
+using System.Threading;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Controls.Primitives;
+using System.Windows.Input;
+using System.Windows.Markup;
+using System.Windows.Threading;
+using Xceed.Wpf.AvalonDock.Controls;
+
+namespace Gestor.Application.Drawers
+{
+ public class TarefaDrawer : UserControl, IComponentConnector, IStyleConnector
+ {
+ internal System.Windows.Controls.ProgressBar ProgressBar;
+
+ internal TextBlock TitleBox;
+
+ internal DatePicker AgendamentoBox;
+
+ internal ToggleButton AtivoBox;
+
+ internal RadioButton AnotacoesButton;
+
+ internal RadioButton AnotacoesInternasButton;
+
+ internal WebEditor Anotacoes;
+
+ internal WebEditor Historico;
+
+ internal WebEditor AnotacoesInternas;
+
+ internal WebEditor HistoricoInterno;
+
+ internal DatePicker ConclusaoBox;
+
+ internal ComboBox CboResponsavel;
+
+ internal MaterialDesignThemes.Wpf.Snackbar Snackbar;
+
+ private bool _contentLoaded;
+
+ private TarefaDrawerViewModel ViewModel
+ {
+ get;
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ internal Delegate _CreateDelegate(Type delegateType, string handler)
+ {
+ return Delegate.CreateDelegate(delegateType, this, handler);
+ }
+
+ public TarefaDrawer(Tarefa tarefa, bool enableMenu = true)
+ {
+ long? nullable;
+ long? nullable1;
+ object description;
+ long? nullable2;
+ long? nullable3;
+ object obj;
+ object obj1;
+ long num;
+ this.ViewModel = new TarefaDrawerViewModel(tarefa, enableMenu);
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ System.Windows.Threading.Dispatcher dispatcher = base.Dispatcher;
+ if (dispatcher != null)
+ {
+ dispatcher.BeginInvoke(DispatcherPriority.Render, new Action(this.ContentLoad));
+ }
+ else
+ {
+ }
+ TarefaDrawerViewModel viewModel = this.ViewModel;
+ if (tarefa != null)
+ {
+ description = ValidationHelper.GetDescription(tarefa.get_Entidade());
+ }
+ else
+ {
+ description = null;
+ }
+ if (tarefa != null)
+ {
+ nullable1 = new long?(tarefa.get_IdEntidade());
+ }
+ else
+ {
+ nullable = null;
+ nullable1 = nullable;
+ }
+ string str = string.Format("ACESSOU TAREFA DE {0} DO DOCUMENTO DE ID \"{1}\"", description, nullable1);
+ num = (tarefa != null ? tarefa.get_IdEntidade() : (long)0);
+ TipoTela? nullable4 = new TipoTela?(38);
+ if (tarefa != null)
+ {
+ obj = ValidationHelper.GetDescription(tarefa.get_Entidade());
+ }
+ else
+ {
+ obj = null;
+ }
+ if ((tarefa != null ? tarefa.get_IdCliente() != (long)0 : true))
+ {
+ if (tarefa != null)
+ {
+ nullable2 = new long?(tarefa.get_IdCliente());
+ }
+ else
+ {
+ nullable = null;
+ nullable2 = nullable;
+ }
+ obj1 = string.Format("\nID CLIENTE: {0}", nullable2);
+ }
+ else
+ {
+ obj1 = "";
+ }
+ if (tarefa != null)
+ {
+ nullable3 = new long?(tarefa.get_IdEntidade());
+ }
+ else
+ {
+ nullable = null;
+ nullable3 = nullable;
+ }
+ viewModel.RegistrarAcao(str, num, nullable4, string.Format("TIPO DE TAREFA: {0}{1}\nID DOCUMENTO: {2}", obj, obj1, nullable3));
+ }
+
+ private void AdicionarResponsavel_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.AdcionarResponsavel();
+ }
+
+ private void Alterar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.AlterarTarefa();
+ this.Anotacoes.Initialize(null);
+ this.Validar();
+ }
+
+ private async void AnexoTarefa_OnClick(object sender, RoutedEventArgs e)
+ {
+ if ((new PermissaoArquivoDigitalServico()).BuscarPermissao(Recursos.Usuario, 15).get_Consultar())
+ {
+ Button button = (Button)sender;
+ if (button.DataContext != null)
+ {
+ Tarefa dataContext = (Tarefa)button.DataContext;
+ FiltroArquivoDigital filtroArquivoDigital = new FiltroArquivoDigital();
+ filtroArquivoDigital.set_Id(dataContext.get_Id());
+ filtroArquivoDigital.set_Tipo(15);
+ filtroArquivoDigital.set_Parente(dataContext);
+ this.ViewModel.ShowDrawer(new ArquivoDigitalDrawer(filtroArquivoDigital), 0, false);
+ }
+ }
+ else
+ {
+ await this.ViewModel.ShowMessage(string.Concat("VOCÊ NÃO POSSUI PERMISSÃO PARA ACESSAR\nARQUIVO DIGITAL DE ", ValidationHelper.GetDescription((TipoArquivoDigital)15), "."), "OK", "", false);
+ }
+ }
+
+ private void Anotacoes_OnChecked(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.IsAnotacoes = true;
+ }
+
+ private void AnotacoesInternas_OnChecked(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.IsAnotacoes = false;
+ }
+
+ private async void Cancelar_OnClick(object sender, RoutedEventArgs e)
+ {
+ await this.ViewModel.Cancelar();
+ this.Anotacoes.Initialize(null);
+ this.AnotacoesInternas.Initialize(null);
+ }
+
+ private void CloseSlackBar()
+ {
+ Thread.Sleep(5000);
+ System.Windows.Threading.Dispatcher dispatcher = this.ProgressBar.Dispatcher;
+ if (dispatcher == null)
+ {
+ return;
+ }
+ dispatcher.BeginInvoke(DispatcherPriority.Background, new Action(() => this.ToggleSnackBar("", false)));
+ }
+
+ private void ContentLoad()
+ {
+ this.AnotacoesButton.IsChecked = new bool?(this.ViewModel.IsAnotacoes);
+ this.AnotacoesInternasButton.IsChecked = new bool?(!this.ViewModel.IsAnotacoes);
+ this.AnotacoesButton.Checked += new RoutedEventHandler(this.Anotacoes_OnChecked);
+ this.AnotacoesInternasButton.Checked += new RoutedEventHandler(this.AnotacoesInternas_OnChecked);
+ }
+
+ private void CopyTelefoneToClipBoard_Click(object sender, RoutedEventArgs e)
+ {
+ Button button = (Button)sender;
+ if (button.DataContext != null)
+ {
+ TelefoneBase dataContext = button.DataContext as TelefoneBase;
+ if (dataContext != null)
+ {
+ string.Concat(dataContext.get_Prefixo(), ValidationHelper.OnlyNumber(dataContext.get_Numero())).CopyToClipboard();
+ this.ToggleSnackBar(string.Concat("COPIADO - ", dataContext.get_Prefixo(), ValidationHelper.OnlyNumber(dataContext.get_Numero())), true);
+ return;
+ }
+ }
+ }
+
+ private void DataAtual_OnDoubleClick(object sender, RoutedEventArgs e)
+ {
+ ((DatePicker)sender).SelectedDate = new DateTime?(Funcoes.GetNetworkTime().Date);
+ }
+
+ private void DatePicker_OnLostKeyboardFocus(object sender, KeyboardFocusChangedEventArgs e)
+ {
+ DatePicker datePicker = (DatePicker)sender;
+ datePicker.Text = ValidationHelper.FormatDate(datePicker.Text);
+ }
+
+ private async void ExcluirResponsavel_OnClick(object sender, RoutedEventArgs e)
+ {
+ Chip chip = sender as Chip;
+ if (chip != null)
+ {
+ if (await this.ViewModel.ValidaPermissaoParaEditarTarefa())
+ {
+ ResponsavelTarefa dataContext = (ResponsavelTarefa)chip.DataContext;
+ if (dataContext != null)
+ {
+ this.ViewModel.Responsaveis.Remove(dataContext);
+ this.ViewModel.Usuarios.Add(dataContext.get_Usuario());
+ TarefaDrawerViewModel viewModel = this.ViewModel;
+ ObservableCollection<Usuario> usuarios = this.ViewModel.Usuarios;
+ viewModel.Usuarios = new ObservableCollection<Usuario>(
+ from x in usuarios
+ orderby x.get_Nome()
+ select x);
+ }
+ }
+ else
+ {
+ await this.ViewModel.ShowMessage("VOCÊ NÃO POSSUI PERMISSÃO PARA EXCLUIR RESPONSÁVEL.", "OK", "", false);
+ }
+ }
+ chip = null;
+ }
+
+ private async void ExcluirTarefa_OnClick(object sender, RoutedEventArgs e)
+ {
+ Grid grid = Extentions.FindVisualAncestor<Grid>((Button)sender);
+ ListBox listBox = Extentions.FindVisualAncestor<ListBox>(grid);
+ Tarefa item = (Tarefa)listBox.Items[listBox.Items.IndexOf(grid.DataContext)];
+ if (!await this.ViewModel.ValidaPermissaoParaExcluirTarefa(item))
+ {
+ await this.ViewModel.ShowMessage("VOCÊ NÃO TEM PERMISSÃO PARA EXCLUIR ESSA TAREFA", "OK", "", false);
+ }
+ else if (await this.ViewModel.Excluir(item))
+ {
+ this.ToggleSnackBar("TAREFA EXCLUÍDA COM SUCESSO.", true);
+ }
+ item = null;
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ private void Imprimir_OnClick(object sender, RoutedEventArgs e)
+ {
+ Button button = (Button)sender;
+ if (button.DataContext == null)
+ {
+ return;
+ }
+ Tarefa dataContext = (Tarefa)button.DataContext;
+ if (dataContext.get_Id() == 0)
+ {
+ return;
+ }
+ this.ViewModel.SelectedTarefa = dataContext;
+ this.ViewModel.Print();
+ }
+
+ private void IncluirTarefa_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.AnotacoesButton.IsChecked = new bool?(true);
+ this.Anotacoes.Initialize(null);
+ this.AnotacoesInternas.Initialize(null);
+ this.ViewModel.Incluir();
+ this.Validar();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/tarefadrawer.xaml", UriKind.Relative));
+ }
+
+ private void InxlusaoAnexoTarefa_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.ArquivosAnexados = new ObservableCollection<Gestor.Model.Domain.Common.ArquivoDigital>(this.ViewModel.ArquivosFinais);
+ this.ViewModel.ShowDrawer(new InclusaoArquivoDigitalDrawer(this.ViewModel), 0, false);
+ }
+
+ private async void MenuList_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
+ {
+ ListBox listBox = (ListBox)sender;
+ if (listBox.SelectedItem != null)
+ {
+ this.ViewModel.TituloTarefas = listBox.SelectedItem.ToString().Replace("System.Windows.Controls.ListBoxItem: ", "");
+ await this.ViewModel.CarregarTarefas(listBox.SelectedIndex);
+ }
+ }
+
+ private async void SalvarTarefa_OnClick(object sender, RoutedEventArgs e)
+ {
+ bool flag;
+ this.ViewModel.Carregando = true;
+ this.ViewModel.SelectedTarefa.set_Anotacoes(this.Anotacoes.GetHtml());
+ this.ViewModel.SelectedTarefa.set_AnotacoesInternas(this.AnotacoesInternas.GetHtml());
+ List<KeyValuePair<string, string>> keyValuePairs = await this.ViewModel.Salvar(this.Anotacoes.GetText(), this.AnotacoesInternas.GetText());
+ flag = (keyValuePairs == null ? true : keyValuePairs.Count == 0);
+ this.ViewModel.Carregando = false;
+ if (!flag)
+ {
+ await this.ViewModel.ShowMessage(keyValuePairs, this.ViewModel.ErroCamposInvalidos, "OK", "");
+ }
+ else
+ {
+ this.ToggleSnackBar("TAREFA SALVA COM SUCESSO.", true);
+ this.ViewModel.Alterar(false);
+ this.Anotacoes.Initialize(null);
+ this.AnotacoesInternas.Initialize(null);
+ }
+ }
+
+ private void SnackbarMessage_ActionClick(object sender, RoutedEventArgs e)
+ {
+ this.Snackbar.set_IsActive(false);
+ }
+
+ private void Status_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
+ {
+ ComboBox comboBox = (ComboBox)sender;
+ if (comboBox == null || comboBox.SelectedItem == null)
+ {
+ return;
+ }
+ this.ViewModel.Concluido = (StatusTarefa)comboBox.SelectedItem == 2;
+ if ((StatusTarefa)comboBox.SelectedItem == 2)
+ {
+ DatePicker conclusaoBox = this.ConclusaoBox;
+ DateTime? conclusao = this.ViewModel.SelectedTarefa.get_Conclusao();
+ conclusaoBox.SelectedDate = new DateTime?((conclusao.HasValue ? conclusao.GetValueOrDefault() : Funcoes.GetNetworkTime()));
+ }
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ this.ProgressBar = (System.Windows.Controls.ProgressBar)target;
+ return;
+ }
+ case 2:
+ {
+ ((ListBox)target).SelectionChanged += new SelectionChangedEventHandler(this.MenuList_OnSelectionChanged);
+ return;
+ }
+ case 3:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 4:
+ {
+ this.TitleBox = (TextBlock)target;
+ return;
+ }
+ case 5:
+ case 6:
+ case 12:
+ case 13:
+ case 14:
+ case 27:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ case 7:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.IncluirTarefa_OnClick);
+ return;
+ }
+ case 8:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Alterar_OnClick);
+ return;
+ }
+ case 9:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.SalvarTarefa_OnClick);
+ return;
+ }
+ case 10:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.Cancelar_OnClick);
+ return;
+ }
+ case 11:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.InxlusaoAnexoTarefa_OnClick);
+ return;
+ }
+ case 15:
+ {
+ this.AgendamentoBox = (DatePicker)target;
+ this.AgendamentoBox.LostKeyboardFocus += new KeyboardFocusChangedEventHandler(this.DatePicker_OnLostKeyboardFocus);
+ this.AgendamentoBox.MouseDoubleClick += new MouseButtonEventHandler(this.DataAtual_OnDoubleClick);
+ return;
+ }
+ case 16:
+ {
+ this.AtivoBox = (ToggleButton)target;
+ return;
+ }
+ case 17:
+ {
+ this.AnotacoesButton = (RadioButton)target;
+ return;
+ }
+ case 18:
+ {
+ this.AnotacoesInternasButton = (RadioButton)target;
+ return;
+ }
+ case 19:
+ {
+ this.Anotacoes = (WebEditor)target;
+ return;
+ }
+ case 20:
+ {
+ this.Historico = (WebEditor)target;
+ return;
+ }
+ case 21:
+ {
+ this.AnotacoesInternas = (WebEditor)target;
+ return;
+ }
+ case 22:
+ {
+ this.HistoricoInterno = (WebEditor)target;
+ return;
+ }
+ case 23:
+ {
+ ((ComboBox)target).SelectionChanged += new SelectionChangedEventHandler(this.Status_OnSelectionChanged);
+ return;
+ }
+ case 24:
+ {
+ this.ConclusaoBox = (DatePicker)target;
+ this.ConclusaoBox.LostKeyboardFocus += new KeyboardFocusChangedEventHandler(this.DatePicker_OnLostKeyboardFocus);
+ this.ConclusaoBox.MouseDoubleClick += new MouseButtonEventHandler(this.DataAtual_OnDoubleClick);
+ return;
+ }
+ case 25:
+ {
+ this.CboResponsavel = (ComboBox)target;
+ return;
+ }
+ case 26:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.AdicionarResponsavel_OnClick);
+ return;
+ }
+ case 28:
+ {
+ this.Snackbar = (MaterialDesignThemes.Wpf.Snackbar)target;
+ return;
+ }
+ case 29:
+ {
+ ((SnackbarMessage)target).add_ActionClick(new RoutedEventHandler(this.SnackbarMessage_ActionClick));
+ return;
+ }
+ default:
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ }
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IStyleConnector.Connect(int connectionId, object target)
+ {
+ if (connectionId <= 6)
+ {
+ if (connectionId == 5)
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.CopyTelefoneToClipBoard_Click);
+ return;
+ }
+ if (connectionId != 6)
+ {
+ return;
+ }
+ ((Button)target).Click += new RoutedEventHandler(this.WhatsAppMessage_Click);
+ return;
+ }
+ switch (connectionId)
+ {
+ case 12:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.ExcluirTarefa_OnClick);
+ return;
+ }
+ case 13:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.AnexoTarefa_OnClick);
+ return;
+ }
+ case 14:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Imprimir_OnClick);
+ return;
+ }
+ default:
+ {
+ if (connectionId == 27)
+ {
+ break;
+ }
+ else
+ {
+ return;
+ }
+ }
+ }
+ ((Chip)target).add_DeleteClick(new RoutedEventHandler(this.ExcluirResponsavel_OnClick));
+ }
+
+ public void ToggleSnackBar(string message, bool active = true)
+ {
+ this.Snackbar.get_Message().Content = message;
+ this.Snackbar.set_IsActive(active);
+ if (!active)
+ {
+ return;
+ }
+ Task.Factory.StartNew(new Action(this.CloseSlackBar));
+ }
+
+ private void Validar()
+ {
+ if (this.ViewModel.SelectedTarefa == null)
+ {
+ return;
+ }
+ this.ViewModel.SelectedTarefa.set_AgendamentoRetroativo(Recursos.Configuracoes.Any<ConfiguracaoSistema>((ConfiguracaoSistema x) => x.get_Configuracao() == 45));
+ List<KeyValuePair<string, string>> keyValuePairs = this.ViewModel.SelectedTarefa.Validate();
+ this.ValidateFields(keyValuePairs, false);
+ }
+
+ private async void WhatsAppMessage_Click(object sender, RoutedEventArgs e)
+ {
+ string str;
+ Button button = (Button)sender;
+ if (button.DataContext != null)
+ {
+ TelefoneBase dataContext = button.DataContext as TelefoneBase;
+ if (dataContext != null)
+ {
+ str = (!dataContext.get_Tipo().HasValue || dataContext.get_Tipo().GetValueOrDefault() != 8 ? string.Concat("55", dataContext.get_Prefixo(), dataContext.get_Numero().Clear()) : string.Concat(dataContext.get_Prefixo(), dataContext.get_Numero()).Clear());
+ if (!str.EnviarWhatsapp(null))
+ {
+ await this.ViewModel.ShowMessage("HOUVE UM PROBLEMA AO ABRIR LINK DO WHATSAPP, O LINK FOI COPIADO EM SUA MAQUINA, BASTA ABRIR O NAVEGADOR DE INTERNET E COLAR NA BARRA DE ENDEREÇOS", "OK", "", false);
+ }
+ return;
+ }
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/ValoresApoliceDrawer.cs b/Codemerx/Gestor.Application/Drawers/ValoresApoliceDrawer.cs
new file mode 100644
index 0000000..f11ad64
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/ValoresApoliceDrawer.cs
@@ -0,0 +1,63 @@
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Generic;
+using Gestor.Model.Domain.Seguros;
+using System;
+using System.CodeDom.Compiler;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Markup;
+
+namespace Gestor.Application.Drawers
+{
+ public class ValoresApoliceDrawer : BaseUserControl, IComponentConnector
+ {
+ private bool _contentLoaded;
+
+ public ValoresApoliceViewModel ViewModel
+ {
+ get;
+ set;
+ }
+
+ public ValoresApoliceDrawer(Documento documento)
+ {
+ this.ViewModel = new ValoresApoliceViewModel(documento);
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/valoresapolicedrawer.xaml", UriKind.Relative));
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ if (connectionId != 1)
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/ValoresParcelaDrawer.cs b/Codemerx/Gestor.Application/Drawers/ValoresParcelaDrawer.cs
new file mode 100644
index 0000000..2e5979d
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/ValoresParcelaDrawer.cs
@@ -0,0 +1,70 @@
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Generic;
+using Gestor.Model.Domain.Seguros;
+using System;
+using System.CodeDom.Compiler;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Markup;
+
+namespace Gestor.Application.Drawers
+{
+ public class ValoresParcelaDrawer : BaseUserControl, IComponentConnector
+ {
+ internal DockPanel pnlStatusParcelaExtrato;
+
+ private bool _contentLoaded;
+
+ public ValoresParcelaViewModel ViewModel
+ {
+ get;
+ set;
+ }
+
+ public ValoresParcelaDrawer(Parcela parcela, Documento documento)
+ {
+ this.ViewModel = new ValoresParcelaViewModel(parcela, documento);
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/valoresparceladrawer.xaml", UriKind.Relative));
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ if (connectionId == 1)
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ if (connectionId != 2)
+ {
+ this._contentLoaded = true;
+ return;
+ }
+ this.pnlStatusParcelaExtrato = (DockPanel)target;
+ }
+ }
+} \ No newline at end of file
diff --git a/Codemerx/Gestor.Application/Drawers/VinculoVendedorDrawer.cs b/Codemerx/Gestor.Application/Drawers/VinculoVendedorDrawer.cs
new file mode 100644
index 0000000..9b03e23
--- /dev/null
+++ b/Codemerx/Gestor.Application/Drawers/VinculoVendedorDrawer.cs
@@ -0,0 +1,124 @@
+using Gestor.Application.ViewModels.Drawer;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Generic;
+using Gestor.Common.Validation;
+using Gestor.Model.Domain.Generic;
+using Gestor.Model.Domain.Seguros;
+using System;
+using System.CodeDom.Compiler;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Markup;
+
+namespace Gestor.Application.Drawers
+{
+ public class VinculoVendedorDrawer : BaseUserControl, IComponentConnector
+ {
+ public VinculoVendedorViewModel ViewModel;
+
+ internal DataGrid VendedorGrid;
+
+ internal DataGrid VinculadoGrid;
+
+ private bool _contentLoaded;
+
+ public VinculoVendedorDrawer(Usuario usuario)
+ {
+ this.ViewModel = new VinculoVendedorViewModel(usuario);
+ base.DataContext = this.ViewModel;
+ this.InitializeComponent();
+ }
+
+ private void AbrirLog_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.AbrirLog(45, this.ViewModel.SelectedUsuario.get_Id());
+ }
+
+ private async void AutoCompleteBox_OnTextChanged(object sender, RoutedEventArgs e)
+ {
+ if (((AutoCompleteBox)sender).get_Text() == string.Empty)
+ {
+ await this.ViewModel.BuscarVinculoVendedor("");
+ }
+ }
+
+ private void AutoCompleteBox_Populating(object sender, PopulatingEventArgs e)
+ {
+ if (e.get_Parameter().Length < 3)
+ {
+ return;
+ }
+ e.set_Cancel(true);
+ this.ViewModel.BuscarVinculoVendedor(ValidationHelper.RemoveDiacritics(e.get_Parameter().Trim())).ContinueWith((Task searchResult) => ((AutoCompleteBox)sender).PopulateComplete(), TaskScheduler.FromCurrentSynchronizationContext());
+ }
+
+ private void Fechar_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CloseDrawer();
+ }
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ public void InitializeComponent()
+ {
+ if (this._contentLoaded)
+ {
+ return;
+ }
+ this._contentLoaded = true;
+ System.Windows.Application.LoadComponent(this, new Uri("/Gestor.Application;component/drawers/vinculovendedordrawer.xaml", UriKind.Relative));
+ }
+
+ private async void SalvarVinculo_OnClick(object sender, RoutedEventArgs e)
+ {
+ await this.ViewModel.Salvar();
+ this.ViewModel.ToggleSnackBar("VÍNCULO DE USUÁRIO SALVO COM SUCESSO.", true);
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.Fechar_OnClick);
+ return;
+ }
+ case 2:
+ {
+ ((AutoCompleteBox)target).add_Populating(new PopulatingEventHandler(this, VinculoVendedorDrawer.AutoCompleteBox_Populating));
+ ((AutoCompleteBox)target).add_TextChanged(new RoutedEventHandler(this.AutoCompleteBox_OnTextChanged));
+ return;
+ }
+ case 3:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.AbrirLog_OnClick);
+ return;
+ }
+ case 4:
+ {
+ this.VendedorGrid = (DataGrid)target;
+ return;
+ }
+ case 5:
+ {
+ this.VinculadoGrid = (DataGrid)target;
+ return;
+ }
+ case 6:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.SalvarVinculo_OnClick);
+ return;
+ }
+ }
+ this._contentLoaded = true;
+ }
+ }
+} \ No newline at end of file