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 --- .../ViewModels/Seguros/ApoliceViewModel.cs | 124 +++++++++++++++++++++ 1 file changed, 124 insertions(+) create mode 100644 Codemerx/Gestor.Application/ViewModels/Seguros/ApoliceViewModel.cs (limited to 'Codemerx/Gestor.Application/ViewModels/Seguros/ApoliceViewModel.cs') diff --git a/Codemerx/Gestor.Application/ViewModels/Seguros/ApoliceViewModel.cs b/Codemerx/Gestor.Application/ViewModels/Seguros/ApoliceViewModel.cs new file mode 100644 index 0000000..94fc4be --- /dev/null +++ b/Codemerx/Gestor.Application/ViewModels/Seguros/ApoliceViewModel.cs @@ -0,0 +1,124 @@ +using Gestor.Application.Drawers; +using Gestor.Application.Helpers; +using Gestor.Application.ViewModels.Generic; +using Gestor.Model.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 +{ + public class ApoliceViewModel : BaseApoliceViewModel + { + private bool _documentoExcluido; + + public bool DocumentoExcluido + { + get + { + return this._documentoExcluido; + } + set + { + this._documentoExcluido = value; + base.OnPropertyChanged("DocumentoExcluido"); + } + } + + public ApoliceViewModel(AcessoApolice acesso, Documento documentoSelecionado, bool invoke = true, long idparcela = 0L) + { + long id; + base.Invoke = invoke; + base.Acesso = acesso; + base.DocumentoSelecionado = documentoSelecionado; + if (invoke) + { + Parcela parcelaSelecionada = ConsultaViewModel.ParcelaSelecionada; + if (parcelaSelecionada != null) + { + id = parcelaSelecionada.get_Id(); + } + else + { + id = (long)0; + } + } + else + { + id = idparcela; + } + base.ParcelaSelecionada = id; + this.DocumentoExcluido = (base.DocumentoSelecionado != null ? base.DocumentoSelecionado.get_Excluido() : false); + base.Seleciona(base.DocumentoSelecionado); + } + + public void AbrirInfo() + { + base.ShowDrawer(new InfoDrawer(base.SelectedDocumento, true), 0, false); + } + + public async Task Alteracao(bool alterar) + { + if (base.AllowEditApolice) + { + ObservableCollection parcelas = base.Parcelas; + if (!parcelas.Any((Parcela x) => x.get_DataRecebimento().HasValue)) + { + List repasses = base.Repasses; + if (!repasses.Any((VendedorParcela x) => x.get_DataPagamento().HasValue)) + { + List list = Recursos.Seguradoras.Where((Seguradora x) => { + if (x.get_Ativo()) + { + return true; + } + return x.get_Id() == base.SelectedDocumento.get_Controle().get_Seguradora().get_Id(); + }).ToList(); + base.Seguradoras = list; + base.SeguradorasAnteriores = Recursos.Seguradoras; + List ramos = Recursos.Ramos.Where((Ramo x) => { + if (x.get_Ativo()) + { + return true; + } + return x.get_Id() == base.SelectedDocumento.get_Controle().get_Ramo().get_Id(); + }).ToList(); + base.Ramos = ramos; + List produtos = Recursos.Produtos.Where((Produto x) => { + if (x.get_Ativo()) + { + return true; + } + if (base.SelectedDocumento.get_Controle().get_Produto() == null) + { + return false; + } + return x.get_Id() == base.SelectedDocumento.get_Controle().get_Produto().get_Id(); + }).ToList(); + base.Produtos = produtos; + List statuses = Recursos.Status.Where((Gestor.Model.Domain.Seguros.Status x) => { + if (x.get_Ativo()) + { + return true; + } + if (base.SelectedDocumento.get_Status() == null) + { + return false; + } + return x.get_Id() == base.SelectedDocumento.get_Status().get_Id(); + }).ToList(); + base.Status = statuses; + return; + } + } + } + await base.ShowMessage("DOCUMENTO POSSUI BAIXAS DE COMISSÃO OU PAGAMENTO DE VENDEDORES.\nNÃO SERÁ POSSÍVEL ALTERAR ALGUMAS INFORMAÇÕES DO DOCUMENTO.\nPARA ISSO, EXCLUA AS BAIXAS E O PAGAMENTO DO VENDEDOR", "OK", "", false); + } + } +} \ No newline at end of file -- cgit v1.2.3