public async Task AdicionarDescontoPlano(Guid planoId, PlanoDesconto planoDesconto) { if (!planoDesconto.EhValido()) { Notificar("A Quantidade de meses tem que ser maior que 0"); return; } var planoValores = await _planoRepository.ObterValoresAtivosPlano(planoId); if (!ValidarValoresPlano(planoValores)) { return; } var valorPlano = planoValores.FirstOrDefault(); var descontosAtivos = await _planoRepository .ObterDescontoAtivos(valorPlano.Id); foreach (var desconto in descontosAtivos) { desconto.DesativarDesconto(); } planoDesconto.AdicionarValor(valorPlano); await _planoRepository.AdicionarDesconto(planoDesconto); await _planoRepository.Commit(); }