From 0440c722a221b8068bbf388c1c0c51f0faff0451 Mon Sep 17 00:00:00 2001 From: Lucas Faria Mendes Date: Mon, 30 Mar 2026 14:17:46 -0300 Subject: some dlls --- .../Gestor.Model.Domain.Seguros/VinculoRepasse.cs | 74 ++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 Gestor.Model/Gestor.Model.Domain.Seguros/VinculoRepasse.cs (limited to 'Gestor.Model/Gestor.Model.Domain.Seguros/VinculoRepasse.cs') diff --git a/Gestor.Model/Gestor.Model.Domain.Seguros/VinculoRepasse.cs b/Gestor.Model/Gestor.Model.Domain.Seguros/VinculoRepasse.cs new file mode 100644 index 0000000..3543683 --- /dev/null +++ b/Gestor.Model/Gestor.Model.Domain.Seguros/VinculoRepasse.cs @@ -0,0 +1,74 @@ +using System.Collections.Generic; +using System.Linq; +using Gestor.Model.Common; +using Gestor.Model.Domain.Generic; +using Gestor.Model.Helper; +using Gestor.Model.Resources; + +namespace Gestor.Model.Domain.Seguros; + +public class VinculoRepasse : DomainBase +{ + public TipoVendedor TipoVendedor { get; set; } + + public long IdRepasse { get; set; } + + public TipoVendedor TipoVendedorVinculo { get; set; } + + public Repasse RepasseVinculo { get; set; } + + public List> Validate(List vinculos, Repasse repasse) + { + List> list = ValidationHelper.AddValue(); + if (TipoVendedor == null) + { + list.AddValue("TipoVendedor|TIPO VENDEDOR DO REPASSE", Messages.Obrigatorio); + } + if (IdRepasse == 0L) + { + list.AddValue("IdRepasse|REPASSE", Messages.Obrigatorio); + } + if (TipoVendedorVinculo == null) + { + list.AddValue("TipoVendedorVinculo|TIPO VENDEDOR DO VÍNCULO", Messages.Obrigatorio); + } + if (RepasseVinculo == null) + { + list.AddValue("RepasseVinculo|REPASSE DO VÍNCULO", Messages.Obrigatorio); + } + if (TipoVendedor != null && TipoVendedorVinculo != null && TipoVendedor.Id == TipoVendedorVinculo.Id) + { + list.AddValue("TipoVendedor", "TIPO VENDEDOR SELECIONADO NÃO PODE SER O MESMO TIPO VENDEDOR DO VINCULO"); + } + if (IdRepasse > 0 && RepasseVinculo != null && IdRepasse == RepasseVinculo.Id) + { + list.AddValue("RepasseVinculo|REPASSE DO VÍNCULO", "NÃO É POSSÍVEL VINCULAR O MESMO REPASSE"); + } + decimal num = ((RepasseVinculo == null) ? 0m : ((RepasseVinculo.Tipo.GetValueOrDefault() == TipoRepasse.Percentual && RepasseVinculo.Incidencia.GetValueOrDefault() == TipoIncidencia.SobreComissao) ? RepasseVinculo.ValorNovo : 0m)); + decimal num2 = ((repasse.Tipo.GetValueOrDefault() == TipoRepasse.Percentual && repasse.Incidencia.GetValueOrDefault() == TipoIncidencia.SobreComissao) ? repasse.ValorNovo : 0m) + num; + num2 += ((TipoVendedor == null) ? 0m : (vinculos?.Where((VinculoRepasse x) => TipoVendedor.Id == x.TipoVendedor.Id && x.RepasseVinculo.Tipo.GetValueOrDefault() == TipoRepasse.Percentual && x.RepasseVinculo.Incidencia.GetValueOrDefault() == TipoIncidencia.SobreComissao).Sum((VinculoRepasse x) => x.RepasseVinculo.ValorNovo) ?? 0m)); + decimal num3 = ((RepasseVinculo == null) ? 0m : ((RepasseVinculo.Tipo.GetValueOrDefault() == TipoRepasse.Percentual && RepasseVinculo.Incidencia.GetValueOrDefault() == TipoIncidencia.SobreComissao) ? RepasseVinculo.ValorRenovacao : 0m)); + decimal num4 = ((repasse.Tipo.GetValueOrDefault() == TipoRepasse.Percentual && repasse.Incidencia.GetValueOrDefault() == TipoIncidencia.SobreComissao) ? repasse.ValorRenovacao : 0m) + num3 + ((TipoVendedor == null) ? 0m : (vinculos?.Where((VinculoRepasse x) => TipoVendedor.Id == x.TipoVendedor.Id && x.RepasseVinculo.Tipo.GetValueOrDefault() == TipoRepasse.Percentual && x.RepasseVinculo.Incidencia.GetValueOrDefault() == TipoIncidencia.SobreComissao).Sum((VinculoRepasse x) => x.RepasseVinculo.ValorRenovacao) ?? 0m)); + if (num2 > 100m) + { + list.AddValue("RepasseVinculo|VALOR NOVO", "O VALOR DE REPASSE PARA SEGUROS NOVOS ULTRAPASSARÁ 100% DA COMISSÃO RECEBIDA"); + } + if (num4 > 100m) + { + list.AddValue("RepasseVinculo|VALOR RENOVAÇÃO", "O VALOR DE REPASSE PARA RENOVAÇÕES ULTRAPASSARÁ 100% DA COMISSÃO RECEBIDA"); + } + if (vinculos == null || vinculos.Count <= 0) + { + return list; + } + if (TipoVendedor != null && TipoVendedorVinculo != null && vinculos.Any((VinculoRepasse x) => x.TipoVendedor.Id == TipoVendedor.Id && x.TipoVendedorVinculo.Id == TipoVendedorVinculo.Id)) + { + list.AddValue("TipoVendedorVinculo|TIPO VENDEDOR DO VÍNCULO", "JÁ EXISTE UM VINCULO DE REPASSE PARA " + TipoVendedorVinculo.Descricao); + } + if (TipoVendedor != null && RepasseVinculo != null && vinculos.Any((VinculoRepasse x) => x.TipoVendedor.Id == TipoVendedor.Id && x.RepasseVinculo.Vendedor.Id == RepasseVinculo.Vendedor.Id)) + { + list.AddValue("TipoVendedorVinculo|VENDEDOR DO VÍNCULO", "JÁ EXISTE UM VINCULO DE REPASSE PARA PARA " + RepasseVinculo.Vendedor.Nome); + } + return list; + } +} -- cgit v1.2.3