Example #1
0
        public async Task CanCreateCuentaRoot()
        {
            Cuenta cuenta = null;

            await WithUnitOfWorkAsync(async() =>
            {
                cuenta = await cuentasManager.CreateCuentaRootAsync(
                    numero: "0100-0000-000-000-000-00-00",
                    tipo: CuentaTypeEnum.Activo,
                    monedaId: "CRC",
                    balance: BalanceTypeEnum.Debito,
                    nombre: "Activo");
            });

            cuenta.ShouldNotBe(null);
            cuenta.Id.ShouldBe("010000000000000000000");
        }
Example #2
0
        public async Task <CreateCuentaResultDto> CrearCuenta(CreateCuentaDto input)
        {
            try
            {
                if (input.Level == 0)
                {
                    await cuentasManager.CreateCuentaRootAsync(
                        numero : input.NumeroCuenta,
                        tipo : input.TipoCuenta,
                        monedaId : input.Moneda,
                        balance : input.TipoBalance,
                        nombre : input.Nombre
                        );
                }
                else
                {
                    await cuentasManager.CreateCuentaChildAsync(
                        parent : input.ParentId,
                        numero : input.NumeroCuenta,
                        monedaId : input.Moneda,
                        balance : input.TipoBalance,
                        nombre : input.Nombre);
                }

                return(new CreateCuentaResultDto()
                {
                    NumeroCuenta = input.NumeroCuenta,
                    IsCreated = true
                });
            }
            catch (Exception exception)
            {
                return(new CreateCuentaResultDto()
                {
                    IsCreated = false,
                    NumeroCuenta = input.NumeroCuenta,
                    ErrorMessageResult = exception.Message,
                });
            }
        }
Example #3
0
        public async Task CreateTest()
        {
            await WithUnitOfWorkAsync(async() =>
            {
                var cuenta = await cuentasManager.CreateCuentaRootAsync(
                    numero: "0100-0000-000-000-000-00-00",
                    tipo: CuentaTypeEnum.Activo,
                    monedaId: "CRC",
                    balance: BalanceTypeEnum.Debito,
                    nombre: "Activo");

                var child1 = await cuentasManager.CreateCuentaChildAsync(
                    parent: cuenta.Id,
                    numero: "0100-0001-000-000-000-00-00",
                    monedaId: "CRC",
                    balance: BalanceTypeEnum.Debito,
                    nombre: "Activo Fijo");

                await periodoContableManager.CreateAsync(new MesContable(2010, 1), new MesContable(2010, 12));
            });

            Asiento asiento = null;

            await WithUnitOfWorkAsync(async() =>
            {
                asiento = await asientoManager.CreateAsync(new DateTime(2010, 1, 2));
                asiento.AddLinea(
                    cuentaId: "010000010000000000000",
                    descripcion: "Asiento de prueba",
                    balance: BalanceTypeEnum.Debito,
                    monedaId: "CRC",
                    cambio: 1,
                    monto: 150.20M
                    );
            });

            asiento.Lineas.Count.ShouldBe(1);
        }