summaryrefslogtreecommitdiff
path: root/Codemerx/Gestor.Application/ViewModels/Generic/DialogVinculoViewModel.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Codemerx/Gestor.Application/ViewModels/Generic/DialogVinculoViewModel.cs')
-rw-r--r--Codemerx/Gestor.Application/ViewModels/Generic/DialogVinculoViewModel.cs257
1 files changed, 257 insertions, 0 deletions
diff --git a/Codemerx/Gestor.Application/ViewModels/Generic/DialogVinculoViewModel.cs b/Codemerx/Gestor.Application/ViewModels/Generic/DialogVinculoViewModel.cs
new file mode 100644
index 0000000..1d526ea
--- /dev/null
+++ b/Codemerx/Gestor.Application/ViewModels/Generic/DialogVinculoViewModel.cs
@@ -0,0 +1,257 @@
+using Gestor.Application.Helpers;
+using Gestor.Model.Domain.Generic;
+using Gestor.Model.Domain.Seguros;
+using System;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.Runtime.CompilerServices;
+
+namespace Gestor.Application.ViewModels.Generic
+{
+ public class DialogVinculoViewModel : BaseViewModel
+ {
+ private Gestor.Model.Domain.Seguros.Repasse _repasse;
+
+ private List<TipoVendedor> _tiposVendedor;
+
+ private ObservableCollection<Vendedor> _vendedoresAtivos;
+
+ private Vendedor _selectedVendedor;
+
+ private ObservableCollection<Gestor.Model.Domain.Seguros.Repasse> _repassesVinculo;
+
+ private Gestor.Model.Domain.Seguros.Repasse _selectedRepasse;
+
+ private TipoVendedor _selectedTipo;
+
+ private TipoVendedor _selectedTipoVinculo;
+
+ public Gestor.Model.Domain.Seguros.Repasse Repasse
+ {
+ get
+ {
+ return this._repasse;
+ }
+ set
+ {
+ this._repasse = value;
+ base.OnPropertyChanged("Repasse");
+ }
+ }
+
+ public List<Gestor.Model.Domain.Seguros.Repasse> Repasses
+ {
+ get;
+ set;
+ }
+
+ public ObservableCollection<Gestor.Model.Domain.Seguros.Repasse> RepassesVinculo
+ {
+ get
+ {
+ return this._repassesVinculo;
+ }
+ set
+ {
+ this._repassesVinculo = value;
+ base.OnPropertyChanged("RepassesVinculo");
+ }
+ }
+
+ public Gestor.Model.Domain.Seguros.Repasse SelectedRepasse
+ {
+ get
+ {
+ return this._selectedRepasse;
+ }
+ set
+ {
+ this._selectedRepasse = value;
+ this.Vinculo.set_RepasseVinculo(value);
+ base.OnPropertyChanged("SelectedRepasse");
+ }
+ }
+
+ public TipoVendedor SelectedTipo
+ {
+ get
+ {
+ return this._selectedTipo;
+ }
+ set
+ {
+ this._selectedTipo = value;
+ this.Vinculo.set_TipoVendedor(value);
+ base.OnPropertyChanged("SelectedTipo");
+ }
+ }
+
+ public TipoVendedor SelectedTipoVinculo
+ {
+ get
+ {
+ return this._selectedTipoVinculo;
+ }
+ set
+ {
+ this._selectedTipoVinculo = value;
+ this.Vinculo.set_TipoVendedorVinculo(value);
+ base.OnPropertyChanged("SelectedTipoVinculo");
+ }
+ }
+
+ public Vendedor SelectedVendedor
+ {
+ get
+ {
+ return this._selectedVendedor;
+ }
+ set
+ {
+ ObservableCollection<Gestor.Model.Domain.Seguros.Repasse> observableCollection;
+ this._selectedVendedor = value;
+ if (value == null)
+ {
+ observableCollection = null;
+ }
+ else
+ {
+ observableCollection = new ObservableCollection<Gestor.Model.Domain.Seguros.Repasse>(
+ from x in this.Repasses
+ where x.get_Vendedor().get_Id() == value.get_Id()
+ select x);
+ }
+ this.RepassesVinculo = observableCollection;
+ base.OnPropertyChanged("SelectedVendedor");
+ }
+ }
+
+ public List<TipoVendedor> TiposVendedor
+ {
+ get
+ {
+ return this._tiposVendedor;
+ }
+ set
+ {
+ this._tiposVendedor = value;
+ base.OnPropertyChanged("TiposVendedor");
+ }
+ }
+
+ public List<Vendedor> Vendedores
+ {
+ get;
+ set;
+ }
+
+ public ObservableCollection<Vendedor> VendedoresAtivos
+ {
+ get
+ {
+ return this._vendedoresAtivos;
+ }
+ set
+ {
+ this._vendedoresAtivos = value;
+ base.OnPropertyChanged("VendedoresAtivos");
+ }
+ }
+
+ public VinculoRepasse Vinculo
+ {
+ get;
+ set;
+ }
+
+ public DialogVinculoViewModel(VinculoRepasse vinculo, List<Gestor.Model.Domain.Seguros.Repasse> repasses, Gestor.Model.Domain.Seguros.Repasse repasse)
+ {
+ List<TipoVendedor> tipoVendedor = Recursos.TipoVendedor;
+ if (tipoVendedor != null)
+ {
+ list = tipoVendedor.Where<TipoVendedor>((TipoVendedor x) => {
+ if (!x.get_Ativo().HasValue)
+ {
+ return true;
+ }
+ return x.get_Ativo().Value;
+ }).ToList<TipoVendedor>();
+ }
+ else
+ {
+ list = null;
+ }
+ this._tiposVendedor = list;
+ this._vendedoresAtivos = new ObservableCollection<Vendedor>();
+ this._selectedVendedor = new Vendedor();
+ this._repassesVinculo = new ObservableCollection<Gestor.Model.Domain.Seguros.Repasse>();
+ this._selectedRepasse = new Gestor.Model.Domain.Seguros.Repasse();
+ this._selectedTipo = new TipoVendedor();
+ this._selectedTipoVinculo = new TipoVendedor();
+ base();
+ List<TipoVendedor> list;
+ Vendedor vendedor;
+ Gestor.Model.Domain.Seguros.Repasse repasse1;
+ TipoVendedor tipoVendedor1;
+ TipoVendedor tipoVendedor2;
+ DialogVinculoViewModel dialogVinculoViewModel = this;
+ this.Repasse = repasse;
+ this.Repasses = repasses;
+ VinculoRepasse vinculoRepasse = new VinculoRepasse();
+ vinculoRepasse.set_IdRepasse(vinculo.get_IdRepasse());
+ vinculoRepasse.set_Id(vinculo.get_Id());
+ this.Vinculo = vinculoRepasse;
+ this.Vendedores = (
+ from x in this.Repasses
+ group x by x.get_Vendedor().get_Id() into x
+ select x.First<Gestor.Model.Domain.Seguros.Repasse>().get_Vendedor() into x
+ orderby x.get_Nome()
+ select x).ToList<Vendedor>();
+ long id = this.Repasses.First<Gestor.Model.Domain.Seguros.Repasse>((Gestor.Model.Domain.Seguros.Repasse x) => x.get_Id() == dialogVinculoViewModel.Vinculo.get_IdRepasse()).get_Vendedor().get_Id();
+ this.VendedoresAtivos = new ObservableCollection<Vendedor>(this.Vendedores.Where<Vendedor>((Vendedor x) => {
+ if (x.get_IdEmpresa() != Recursos.Usuario.get_IdEmpresa() || !x.get_Ativo() || x.get_Corretora())
+ {
+ return false;
+ }
+ return x.get_Id() != id;
+ }));
+ if (vinculo.get_RepasseVinculo() != null)
+ {
+ vendedor = this.VendedoresAtivos.FirstOrDefault<Vendedor>((Vendedor x) => x.get_Id() == vinculo.get_RepasseVinculo().get_Vendedor().get_Id());
+ }
+ else
+ {
+ vendedor = null;
+ }
+ this.SelectedVendedor = vendedor;
+ if (vinculo.get_RepasseVinculo() != null)
+ {
+ repasse1 = this.RepassesVinculo.FirstOrDefault<Gestor.Model.Domain.Seguros.Repasse>((Gestor.Model.Domain.Seguros.Repasse x) => x.get_Id() == vinculo.get_RepasseVinculo().get_Id());
+ }
+ else
+ {
+ repasse1 = null;
+ }
+ this.SelectedRepasse = repasse1;
+ if (vinculo.get_TipoVendedor() != null)
+ {
+ tipoVendedor1 = this.TiposVendedor.FirstOrDefault<TipoVendedor>((TipoVendedor x) => x.get_Id() == vinculo.get_TipoVendedor().get_Id());
+ }
+ else
+ {
+ tipoVendedor1 = null;
+ }
+ this.SelectedTipo = tipoVendedor1;
+ if (vinculo.get_TipoVendedorVinculo() != null)
+ {
+ tipoVendedor2 = this.TiposVendedor.FirstOrDefault<TipoVendedor>((TipoVendedor x) => x.get_Id() == vinculo.get_TipoVendedorVinculo().get_Id());
+ }
+ else
+ {
+ tipoVendedor2 = null;
+ }
+ this.SelectedTipoVinculo = tipoVendedor2;
+ }
+ }
+} \ No newline at end of file