summaryrefslogtreecommitdiff
path: root/Decompiler/Gestor.Application.ViewModels.Ferramentas/IncluirRamoViewModel.cs
blob: f9bc22b36d07243238d65bc0c493f9fca3f687f8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using Gestor.Application.Helpers;
using Gestor.Application.ViewModels.Generic;
using Gestor.Model.Domain.Generic;
using Gestor.Model.Domain.Seguros;

namespace Gestor.Application.ViewModels.Ferramentas;

public class IncluirRamoViewModel : BaseSegurosViewModel
{
	private Ramo _selectedRamo;

	private Ramo _adicionarRamo;

	private List<Ramo> _ramosAdicionadas;

	private ObservableCollection<Ramo> _ramos;

	private string _filtro;

	public Ramo SelectedRamo
	{
		get
		{
			return _selectedRamo;
		}
		set
		{
			_selectedRamo = value;
			OnPropertyChanged("SelectedRamo");
		}
	}

	public Ramo AdicionarRamo
	{
		get
		{
			return _adicionarRamo;
		}
		set
		{
			_adicionarRamo = value;
			OnPropertyChanged("AdicionarRamo");
		}
	}

	public List<Ramo> RamosAdicionadas
	{
		get
		{
			return _ramosAdicionadas;
		}
		set
		{
			_ramosAdicionadas = value;
			OnPropertyChanged("RamosAdicionadas");
		}
	}

	public ObservableCollection<Ramo> Ramos
	{
		get
		{
			return _ramos;
		}
		set
		{
			_ramos = value;
			OnPropertyChanged("Ramos");
		}
	}

	public string Filtro
	{
		get
		{
			return _filtro;
		}
		set
		{
			_filtro = value;
			OnPropertyChanged("Filtro");
		}
	}

	public IncluirRamoViewModel(List<Ramo> ramos)
	{
		RamosAdicionadas = ramos;
	}

	public async void Pesquisar()
	{
		if (string.IsNullOrWhiteSpace(Filtro) || Filtro.Length < 3)
		{
			return;
		}
		string text = Uri.EscapeDataString(Filtro);
		Ramos = new ObservableCollection<Ramo>((await Connection.Get<List<Ramo>>("Ramos/search?ramo=" + text)).Where((Ramo x) => RamosAdicionadas.All((Ramo y) => ((DomainBase)y).Id != ((DomainBase)x).Id)));
	}
}