public SingleObjectModel CreateOrGetStoredBalanceSet([FromUri] string accountsChartUID, [FromBody] BalanceStorageCommand command) { base.RequireBody(command); using (var usecases = BalanceStorageUseCases.UseCaseInteractor()) { StoredBalanceSetDto balanceSet = usecases.CreateOrGetBalanceSet(accountsChartUID, command); return(new SingleObjectModel(this.Request, balanceSet)); } }
public StoredBalanceSetDto CreateOrGetBalanceSet(string accountsChartUID, BalanceStorageCommand command) { Assertion.AssertObject(accountsChartUID, "accountsChartUID"); Assertion.AssertObject(command, "command"); var accountsChart = AccountsChart.Parse(accountsChartUID); var storedBalanceSet = StoredBalanceSet.CreateOrGetBalanceSet(accountsChart, command.BalancesDate); storedBalanceSet.Save(); return(StoredBalanceSetMapper.Map(storedBalanceSet)); }
public void Should_Generate_A_Balances_Set() { var accountsChart = AccountsChart.Parse(TestingConstants.AccountCatalogueId); var BALANCES_DATE = new DateTime(2000, 12, 30); var command = new BalanceStorageCommand() { BalancesDate = BALANCES_DATE }; var storedBalanceSet = _usecases.CreateOrGetBalanceSet(accountsChart.UID, command); Assert.NotNull(storedBalanceSet); Assert.Equal(BALANCES_DATE, storedBalanceSet.BalancesDate); }