public Task <IBudgetAccount> DeleteBudgetAccountAsync(int accountingNumber, string accountNumber) { NullGuard.NotNullOrWhiteSpace(accountNumber, nameof(accountNumber)); return(ExecuteAsync(async() => { using BudgetAccountModelHandler budgetAccountModelHandler = new BudgetAccountModelHandler(DbContext, AccountingModelConverter.Create(), _eventPublisher, DateTime.Today, true, true); return await budgetAccountModelHandler.DeleteAsync(new Tuple <int, string>(accountingNumber, accountNumber), new AccountingIdentificationState(accountingNumber)); }, MethodBase.GetCurrentMethod())); }
public Task <IBudgetAccount> UpdateBudgetAccountAsync(IBudgetAccount budgetAccount) { NullGuard.NotNull(budgetAccount, nameof(budgetAccount)); return(ExecuteAsync(async() => { using BudgetAccountModelHandler budgetAccountModelHandler = new BudgetAccountModelHandler(DbContext, AccountingModelConverter.Create(), _eventPublisher, DateTime.Today, true, true); return await budgetAccountModelHandler.UpdateAsync(budgetAccount, new AccountingIdentificationState(budgetAccount.Accounting.Number)); }, MethodBase.GetCurrentMethod())); }
public Task <bool> BudgetAccountExistsAsync(int accountingNumber, string accountNumber) { NullGuard.NotNullOrWhiteSpace(accountNumber, nameof(accountNumber)); return(ExecuteAsync(async() => { using BudgetAccountModelHandler budgetAccountModelHandler = new BudgetAccountModelHandler(DbContext, AccountingModelConverter.Create(), _eventPublisher, DateTime.Today, false, false); return await budgetAccountModelHandler.ExistsAsync(accountingNumber, accountNumber); }, MethodBase.GetCurrentMethod())); }
public Task <IBudgetAccount> GetBudgetAccountAsync(int accountingNumber, string accountNumber, DateTime statusDate) { NullGuard.NotNullOrWhiteSpace(accountNumber, nameof(accountNumber)); return(ExecuteAsync(async() => { using BudgetAccountModelHandler budgetAccountModelHandler = new BudgetAccountModelHandler(DbContext, AccountingModelConverter.Create(), _eventPublisher, statusDate, true, true); return await budgetAccountModelHandler.ReadAsync(accountingNumber, accountNumber); }, MethodBase.GetCurrentMethod())); }
public Task <IBudgetAccountCollection> GetBudgetAccountsAsync(int accountingNumber, DateTime statusDate) { return(ExecuteAsync(async() => { using BudgetAccountModelHandler budgetAccountModelHandler = new BudgetAccountModelHandler(DbContext, AccountingModelConverter.Create(), _eventPublisher, statusDate, true, true); IBudgetAccountCollection budgetAccountCollection = new BudgetAccountCollection { await budgetAccountModelHandler.ReadAsync(budgetAccountModel => budgetAccountModel.AccountingIdentifier == accountingNumber, prepareReadState: new AccountingIdentificationState(accountingNumber)) }; return budgetAccountCollection; }, MethodBase.GetCurrentMethod())); }