/// <summary>
        /// Cria uma nova instância de <see cref="ServicoDeImpostosPorOperacao"/>.
        /// </summary>
        /// <param name="fabricaDeImpostos">Fábrica de impostos.</param>
        /// <param name="tipoDeOperacaoFinanceira">Tipo de operação financeira.</param>
        public ServicoDeImpostosPorOperacao(IFabricaDeImpostos fabricaDeImpostos, TipoDeOperacaoFinanceira tipoDeOperacaoFinanceira)
        {
            _impostos                 = new HashSet <IImposto>();
            _fabricaDeImpostos        = fabricaDeImpostos;
            _tipoDeOperacaoFinanceira = tipoDeOperacaoFinanceira;

            CriarImpostosPorOperacaoFinanceira();
        }
示例#2
0
        /// <summary>
        /// Cria uma nova instância de <see cref="Operacao"/>.
        /// </summary>
        /// <param name="fabricaDeParcela">Fábrica de parcelas.</param>
        /// <param name="tipoDeOperacao">Tipo de operação financeira.</param>
        /// <param name="dataDaOperacao">Data da operação.</param>
        /// <param name="taxaDeIof">Taxa de IOF.</param>
        /// <param name="taxaDeJuros">Taxa de Juros.</param>
        /// <param name="parcelas">Parcelas da operação.</param>
        public Operacao(IFabricaDeParcela fabricaDeParcela, TipoDeOperacaoFinanceira tipoDeOperacao, DateTime dataDaOperacao, decimal taxaDeIof, decimal taxaDeJuros, ICollection <IParcela> parcelas)
        {
            _fabricaDeParcela = fabricaDeParcela;

            Parcelas       = parcelas;
            TipoDeOperacao = tipoDeOperacao;
            DataDaOperacao = dataDaOperacao;
            TaxaDeIof      = taxaDeIof;
            TaxaDeJuros    = taxaDeJuros;
        }
示例#3
0
 /// <summary>
 /// Cria uma nova instância de <see cref="Operacao"/>.
 /// </summary>
 /// <param name="fabricaDeParcela">Fábrica de parcelas.</param>
 /// <param name="tipoDeOperacao">Tipo de operação financeira.</param>
 /// <param name="dataDaOperacao">Data da operação.</param>
 /// <param name="taxaDeIof">Taxa de IOF.</param>
 public Operacao(IFabricaDeParcela fabricaDeParcela, TipoDeOperacaoFinanceira tipoDeOperacao, DateTime dataDaOperacao, decimal taxaDeIof, decimal taxaDeJuros)
     : this(fabricaDeParcela, tipoDeOperacao, dataDaOperacao, taxaDeIof, taxaDeJuros, fabricaDeParcela.CriarColecaoVaziaDeParcelas())
 {
 }
示例#4
0
 public void EQueOTipoDessaOperacao(TipoDeOperacaoFinanceira tipoDeOperacaoFinanceira)
 {
     _tipoDeOperacaoFinanceira = tipoDeOperacaoFinanceira;
 }
示例#5
0
 /// <summary>
 /// Cria uma nova operação.
 /// </summary>
 /// <param name="tipoDeOperacao">Tipo de operação financeira.</param>
 /// <param name="dataDaOperacao">Data da operação.</param>
 /// <param name="taxaDeIof">Taxa de IOF.</param>
 /// <param name="taxaDeJuros">Taxa de Juros.</param>
 /// <returns>Operação criada.</returns>
 public IOperacao CriarOperacao(TipoDeOperacaoFinanceira tipoDeOperacao, DateTime dataDaOperacao, decimal taxaDeIof, decimal taxaDeJuros)
 {
     return(new Operacao(_fabricaDeParcela, tipoDeOperacao, dataDaOperacao, taxaDeIof, taxaDeJuros));
 }