Example #1
0
 public CuentasAppService(ICuentasManager cuentasManager,
                          IRepository <Cuenta> cuentasRepository,
                          ICuentaFormatProvider cuentaFormatProvider,
                          IMonedaManager monedaManager)
 {
     this.cuentasManager    = cuentasManager;
     this.cuentasRepository = cuentasRepository;
     _cuentaFormatProvider  = cuentaFormatProvider;
     this.monedaManager     = monedaManager;
 }
Example #2
0
        public Cuenta AddChild(string numero, Moneda moneda, BalanceTypeEnum balance, string nombre, ICuentaFormatProvider formatProvider)
        {
            if (!formatProvider.IsValid(numero))
            {
                throw new NumeroCuentaNoValidaException(numero, nameof(numero));
            }

            numero = formatProvider.RemoveFormat(numero);

            if (formatProvider.GetLevelOf(numero) != (formatProvider.GetLevelOf(Id) + 1))
            {
                throw new NumeroCuentaNoHijaException(numero, Id);
            }

            var cuenta = new Cuenta(numero, Id, Tipo, moneda, balance)
            {
                Nombre = nombre,
                Level  = this.Level + 1
            };

            Children.Add(cuenta);
            HasChildren = true;

            return(cuenta);
        }
Example #3
0
 public CuentaFormatProviderTests()
 {
     provider = GetRequiredService <ICuentaFormatProvider>();
 }
Example #4
0
 public CuentasManager(IRepository <Cuenta, string> cuentaStore, ICuentaFormatProvider formatProvider, IMonedaManager monedaManager)
 {
     this.cuentaStore    = cuentaStore;
     this.formatProvider = formatProvider;
     this.monedaManager  = monedaManager;
 }