diff options
| author | Lucas Faria Mendes <lucas.fariamo08@gmail.com> | 2026-03-30 13:38:18 +0000 |
|---|---|---|
| committer | Lucas Faria Mendes <lucas.fariamo08@gmail.com> | 2026-03-30 13:38:18 +0000 |
| commit | 1f4e14b2e973ee7de337fd4866d9a5ceff5cb6d1 (patch) | |
| tree | e1c3b20ea08f0cf71122a1e73f0d395f8fd83874 /Codemerx/Gestor.Application/Views/Financeiro/PlanosView.cs | |
| parent | 674ca83ba9243a9e95a7568c797668dab6aee26a (diff) | |
| download | gestor-1f4e14b2e973ee7de337fd4866d9a5ceff5cb6d1.tar.gz gestor-1f4e14b2e973ee7de337fd4866d9a5ceff5cb6d1.zip | |
chore: location
Diffstat (limited to 'Codemerx/Gestor.Application/Views/Financeiro/PlanosView.cs')
| -rw-r--r-- | Codemerx/Gestor.Application/Views/Financeiro/PlanosView.cs | 262 |
1 files changed, 262 insertions, 0 deletions
diff --git a/Codemerx/Gestor.Application/Views/Financeiro/PlanosView.cs b/Codemerx/Gestor.Application/Views/Financeiro/PlanosView.cs new file mode 100644 index 0000000..e9b9fef --- /dev/null +++ b/Codemerx/Gestor.Application/Views/Financeiro/PlanosView.cs @@ -0,0 +1,262 @@ +using Gestor.Application.Helpers;
+using Gestor.Application.Servicos.Generic;
+using Gestor.Application.ViewModels.Financeiro;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Application.Views.Generic;
+using Gestor.Common.Validation;
+using Gestor.Model.Domain.Financeiro;
+using Gestor.Model.Domain.Generic;
+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.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;
+
+namespace Gestor.Application.Views.Financeiro
+{
+ public class PlanosView : BaseUserControl, IComponentConnector
+ {
+ private bool _seleciona = true;
+
+ public PlanosViewModel ViewModel;
+
+ internal DataGrid PlanosGrid;
+
+ private bool _contentLoaded;
+
+ [DebuggerNonUserCode]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ internal Delegate _CreateDelegate(Type delegateType, string handler)
+ {
+ return Delegate.CreateDelegate(delegateType, this, handler);
+ }
+
+ public PlanosView()
+ {
+ base.Tag = "PLANO DE CONTAS";
+ this.ViewModel = new PlanosViewModel();
+ 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(28, this.ViewModel.SelectedPlanos.get_Id());
+ }
+
+ private void AlterarPlanos_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.Alterar(true);
+ this.ViewModel.SelectedPlanos.Initialize();
+ }
+
+ private void AutoCompleteBoxPlanos_OnTextChanged(object sender, RoutedEventArgs e)
+ {
+ if (!string.IsNullOrWhiteSpace(((AutoCompleteBox)sender).get_Text()))
+ {
+ return;
+ }
+ this.ViewModel.FiltrarPlanos("");
+ }
+
+ private void AutoCompleteBoxPlanos_Populating(object sender, PopulatingEventArgs e)
+ {
+ e.set_Cancel(true);
+ this.ViewModel.Filtrar(ValidationHelper.RemoveDiacritics(e.get_Parameter().Trim())).ContinueWith((Task<ObservableCollection<Planos>> searchResult) => {
+ if (searchResult == null)
+ {
+ return;
+ }
+ AutoCompleteBox autoCompleteBox = (AutoCompleteBox)sender;
+ autoCompleteBox.set_ItemsSource(searchResult.Result);
+ autoCompleteBox.PopulateComplete();
+ }, TaskScheduler.FromCurrentSynchronizationContext());
+ }
+
+ private void CancelarPlanos_OnClick(object sender, RoutedEventArgs e)
+ {
+ this.ViewModel.CancelarAlteracao();
+ }
+
+ private async void ContentLoad()
+ {
+ this.PlanosGrid.SelectedIndex = 0;
+ this.PlanosGrid.SelectionChanged += new SelectionChangedEventHandler(this.PlanosGrid_OnSelectionChanged);
+ this.PlanosGrid.MouseDoubleClick += new MouseButtonEventHandler((object sender, MouseButtonEventArgs args) => {
+ });
+ PlanosViewModel viewModel = this.ViewModel;
+ List<Plano> planos = await (new BaseServico()).BuscarPlanoAsync();
+ PlanosViewModel observableCollection = viewModel;
+ List<Plano> planos1 = planos;
+ IOrderedEnumerable<Plano> ativo =
+ from x in planos1
+ orderby x.get_Ativo() descending
+ select x;
+ observableCollection.Plano = new ObservableCollection<Plano>(ativo.ThenBy<Plano, string>((Plano x) => x.get_Descricao()).ToList<Plano>());
+ viewModel = null;
+ }
+
+ private void IncluirPlanos_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/views/financeiro/planosview.xaml", UriKind.Relative));
+ }
+
+ private async void PlanoButton_OnClick(object sender, RoutedEventArgs e)
+ {
+ PlanoView planoView = new PlanoView(this.ViewModel.SelectedPlanos.get_Plano());
+ (new HosterWindow(planoView, "PLANO", new double?((double)500), new double?((double)200), false)).ShowDialog();
+ this.ViewModel.Loading(true);
+ if (planoView.ViewModel.SelectedPlano.get_Id() != 0)
+ {
+ PlanosViewModel viewModel = this.ViewModel;
+ List<Plano> planos = await (new BaseServico()).BuscarPlanoAsync();
+ PlanosViewModel observableCollection = viewModel;
+ List<Plano> planos1 = planos;
+ IOrderedEnumerable<Plano> ativo =
+ from x in planos1
+ orderby x.get_Ativo() descending
+ select x;
+ observableCollection.Plano = new ObservableCollection<Plano>(ativo.ThenBy<Plano, string>((Plano x) => x.get_Descricao()).ToList<Plano>());
+ viewModel = null;
+ List<Planos> planos2 = await (new BaseServico()).BuscarPlanosAsync();
+ PlanosViewModel list = this.ViewModel;
+ List<Planos> planos3 = planos2;
+ IOrderedEnumerable<Planos> ativo1 =
+ from x in planos3
+ orderby x.get_Ativo() descending
+ select x;
+ IOrderedEnumerable<Planos> planos4 = ativo1.ThenBy<Planos, string>((Planos x) => {
+ Plano plano = x.get_Plano();
+ if (plano != null)
+ {
+ return plano.get_Descricao();
+ }
+ return null;
+ });
+ list.Planos = planos4.ThenBy<Planos, string>((Planos x) => x.get_Descricao()).ToList<Planos>();
+ ObservableCollection<Planos> planosFiltrados = this.ViewModel.PlanosFiltrados;
+ List<long> nums = (
+ from p in planosFiltrados
+ select p.get_Id()).ToList<long>();
+ this.ViewModel.PlanosFiltrados = new ObservableCollection<Planos>(
+ from x in this.ViewModel.Planos
+ where nums.Contains(x.get_Id())
+ select x);
+ this._seleciona = false;
+ this.PlanosGrid.SelectedItem = this.ViewModel.SelectedPlanos;
+ this.ViewModel.SelectedPlano = this.ViewModel.Plano.First<Plano>((Plano x) => x.get_Id() == planoView.ViewModel.SelectedPlano.get_Id());
+ this._seleciona = true;
+ }
+ this.ViewModel.Loading(false);
+ }
+
+ private async void PlanosGrid_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
+ {
+ object obj;
+ if (this._seleciona)
+ {
+ DataGrid dataGrid = (DataGrid)sender;
+ if (dataGrid == null || dataGrid.SelectedIndex >= 0)
+ {
+ PlanosViewModel viewModel = this.ViewModel;
+ obj = (dataGrid != null ? dataGrid.Items[dataGrid.SelectedIndex] : null);
+ await viewModel.SelecionaPlanos((Planos)obj);
+ }
+ }
+ }
+
+ private async void SalvarPlanos_OnClick(object sender, RoutedEventArgs e)
+ {
+ bool flag;
+ this.ViewModel.Loading(true);
+ List<KeyValuePair<string, string>> keyValuePairs = await this.ViewModel.Salvar();
+ this.ValidateFields(keyValuePairs, true);
+ flag = (keyValuePairs == null ? true : keyValuePairs.Count == 0);
+ this.ViewModel.Loading(false);
+ if (!flag)
+ {
+ await this.ViewModel.ShowMessage(keyValuePairs, this.ViewModel.ErroCamposInvalidos, "OK", "");
+ }
+ }
+
+ [DebuggerNonUserCode]
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ [GeneratedCode("PresentationBuildTasks", "4.0.0.0")]
+ void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target)
+ {
+ switch (connectionId)
+ {
+ case 1:
+ {
+ ((AutoCompleteBox)target).add_Populating(new PopulatingEventHandler(this, PlanosView.AutoCompleteBoxPlanos_Populating));
+ ((AutoCompleteBox)target).add_TextChanged(new RoutedEventHandler(this.AutoCompleteBoxPlanos_OnTextChanged));
+ return;
+ }
+ case 2:
+ {
+ this.PlanosGrid = (DataGrid)target;
+ return;
+ }
+ case 3:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.IncluirPlanos_OnClick);
+ return;
+ }
+ case 4:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.AlterarPlanos_OnClick);
+ return;
+ }
+ case 5:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.SalvarPlanos_OnClick);
+ return;
+ }
+ case 6:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.CancelarPlanos_OnClick);
+ return;
+ }
+ case 7:
+ {
+ ((MenuItem)target).Click += new RoutedEventHandler(this.AbrirLog_OnClick);
+ return;
+ }
+ case 8:
+ {
+ ((Button)target).Click += new RoutedEventHandler(this.PlanoButton_OnClick);
+ return;
+ }
+ }
+ this._contentLoaded = true;
+ }
+ }
+}
\ No newline at end of file |