Example #1
0
        public TaxaCobranca(string id, ValorTaxaCobranca valor, TipoSegmento tipoSegmento)
        {
            TaxaCobrancaId = id ?? throw new ArgumentException(nameof(id));
            ValorTaxa      = valor;
            TipoSegmento   = tipoSegmento ?? throw new ArgumentException(nameof(tipoSegmento));

            AddDomainEvent(new NovaTaxaRegistradaEvent(this));
        }
Example #2
0
        public Result AtualizarTaxa(ValorTaxaCobranca novoValorCobranca)
        {
            ClearDomainEvents();

            if (ValorTaxa.Equals(novoValorCobranca))
            {
                return(Result.Fail("Não houve alteração do valor da taxa."));
            }

            ValorTaxa    = novoValorCobranca;
            AtualizadoEm = DateTime.Now;

            AddDomainEvent(new ValorTaxaAtualizadaEvent(TaxaCobrancaId));

            return(Result.Ok());
        }