diff options
Diffstat (limited to 'Gestor.Application/ViewModels/Seguros/Itens/BuscarModeloViewModel.cs')
| -rw-r--r-- | Gestor.Application/ViewModels/Seguros/Itens/BuscarModeloViewModel.cs | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/Gestor.Application/ViewModels/Seguros/Itens/BuscarModeloViewModel.cs b/Gestor.Application/ViewModels/Seguros/Itens/BuscarModeloViewModel.cs new file mode 100644 index 0000000..b97c9ea --- /dev/null +++ b/Gestor.Application/ViewModels/Seguros/Itens/BuscarModeloViewModel.cs @@ -0,0 +1,95 @@ +using CsQuery.ExtensionMethods.Internal;
+using Gestor.Application.Servicos.Seguros.Itens;
+using Gestor.Application.ViewModels.Generic;
+using Gestor.Common.Validation;
+using Gestor.Model.Domain.Common;
+using Gestor.Model.Domain.Generic;
+using Gestor.Model.Domain.Seguros;
+using System;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Diagnostics;
+using System.Linq;
+using System.Runtime.CompilerServices;
+using System.Threading.Tasks;
+
+namespace Gestor.Application.ViewModels.Seguros.Itens
+{
+ public class BuscarModeloViewModel : BaseSegurosViewModel
+ {
+ private Auto _selectedBuscaModelo = new Auto();
+
+ private ObservableCollection<Fipe> _modelosAutos = new ObservableCollection<Fipe>();
+
+ private Fipe _resultado = new Fipe();
+
+ public ObservableCollection<Fipe> ModelosAutos
+ {
+ get
+ {
+ return this._modelosAutos;
+ }
+ set
+ {
+ this._modelosAutos = value;
+ base.OnPropertyChanged("ModelosAutos");
+ }
+ }
+
+ public Fipe Resultado
+ {
+ get
+ {
+ return this._resultado;
+ }
+ set
+ {
+ this._resultado = value;
+ base.OnPropertyChanged("Resultado");
+ }
+ }
+
+ public Auto SelectedBuscaModelo
+ {
+ get
+ {
+ return this._selectedBuscaModelo;
+ }
+ set
+ {
+ this._selectedBuscaModelo = value;
+ base.OnPropertyChanged("SelectedBuscaModelo");
+ }
+ }
+
+ public BuscarModeloViewModel(string modelo, string ano)
+ {
+ Auto auto = new Auto();
+ auto.set_AnoModelo(ano);
+ auto.set_Modelo(modelo);
+ this.SelectedBuscaModelo = auto;
+ }
+
+ public async void Pesquisar()
+ {
+ string modelo = this.SelectedBuscaModelo.get_Modelo();
+ int num = ValidationHelper.ToInt(this.SelectedBuscaModelo.get_AnoModelo());
+ List<Fipe> list = await (new ItemServico()).BuscarPorModelo(modelo);
+ if ((this.SelectedBuscaModelo.get_AnoModelo() != null || ExtensionMethods.IsNullOrEmpty<Fipe>(list)) && this.SelectedBuscaModelo.get_Id() != 0)
+ {
+ list = list.Where<Fipe>((Fipe x) => {
+ if (x.get_AnoMinimo() > num)
+ {
+ return false;
+ }
+ return x.get_AnoMaximo() >= num;
+ }).ToList<Fipe>();
+ this.ModelosAutos = new ObservableCollection<Fipe>(list);
+ }
+ else
+ {
+ this.ModelosAutos = new ObservableCollection<Fipe>(list);
+ }
+ }
+ }
+}
\ No newline at end of file |