From 1f4e14b2e973ee7de337fd4866d9a5ceff5cb6d1 Mon Sep 17 00:00:00 2001 From: Lucas Faria Mendes Date: Mon, 30 Mar 2026 10:38:18 -0300 Subject: chore: location --- .../Seguros/Itens/BuscarModeloViewModel.cs | 95 ++++++++++++++++++++++ 1 file changed, 95 insertions(+) create mode 100644 Codemerx/Gestor.Application/ViewModels/Seguros/Itens/BuscarModeloViewModel.cs (limited to 'Codemerx/Gestor.Application/ViewModels/Seguros/Itens/BuscarModeloViewModel.cs') diff --git a/Codemerx/Gestor.Application/ViewModels/Seguros/Itens/BuscarModeloViewModel.cs b/Codemerx/Gestor.Application/ViewModels/Seguros/Itens/BuscarModeloViewModel.cs new file mode 100644 index 0000000..b97c9ea --- /dev/null +++ b/Codemerx/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 _modelosAutos = new ObservableCollection(); + + private Fipe _resultado = new Fipe(); + + public ObservableCollection 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 list = await (new ItemServico()).BuscarPorModelo(modelo); + if ((this.SelectedBuscaModelo.get_AnoModelo() != null || ExtensionMethods.IsNullOrEmpty(list)) && this.SelectedBuscaModelo.get_Id() != 0) + { + list = list.Where((Fipe x) => { + if (x.get_AnoMinimo() > num) + { + return false; + } + return x.get_AnoMaximo() >= num; + }).ToList(); + this.ModelosAutos = new ObservableCollection(list); + } + else + { + this.ModelosAutos = new ObservableCollection(list); + } + } + } +} \ No newline at end of file -- cgit v1.2.3