Пример #1
0
        public Task <IContactAccount> DeleteContactAccountAsync(int accountingNumber, string accountNumber)
        {
            NullGuard.NotNullOrWhiteSpace(accountNumber, nameof(accountNumber));

            return(ExecuteAsync(async() =>
            {
                using ContactAccountModelHandler contactAccountModelHandler = new ContactAccountModelHandler(DbContext, AccountingModelConverter.Create(), _eventPublisher, DateTime.Today, true);
                return await contactAccountModelHandler.DeleteAsync(new Tuple <int, string>(accountingNumber, accountNumber), new AccountingIdentificationState(accountingNumber));
            },
                                MethodBase.GetCurrentMethod()));
        }
Пример #2
0
        public Task <IContactAccount> UpdateContactAccountAsync(IContactAccount contactAccount)
        {
            NullGuard.NotNull(contactAccount, nameof(contactAccount));

            return(ExecuteAsync(async() =>
            {
                using ContactAccountModelHandler contactAccountModelHandler = new ContactAccountModelHandler(DbContext, AccountingModelConverter.Create(), _eventPublisher, DateTime.Today, true);
                return await contactAccountModelHandler.UpdateAsync(contactAccount, new AccountingIdentificationState(contactAccount.Accounting.Number));
            },
                                MethodBase.GetCurrentMethod()));
        }
Пример #3
0
        public Task <bool> ContactAccountExistsAsync(int accountingNumber, string accountNumber)
        {
            NullGuard.NotNullOrWhiteSpace(accountNumber, nameof(accountNumber));

            return(ExecuteAsync(async() =>
            {
                using ContactAccountModelHandler contactAccountModelHandler = new ContactAccountModelHandler(DbContext, AccountingModelConverter.Create(), _eventPublisher, DateTime.Today, false);
                return await contactAccountModelHandler.ExistsAsync(accountingNumber, accountNumber);
            },
                                MethodBase.GetCurrentMethod()));
        }
Пример #4
0
        public Task <IContactAccount> GetContactAccountAsync(int accountingNumber, string accountNumber, DateTime statusDate)
        {
            NullGuard.NotNullOrWhiteSpace(accountNumber, nameof(accountNumber));

            return(ExecuteAsync(async() =>
            {
                using ContactAccountModelHandler contactAccountModelHandler = new ContactAccountModelHandler(DbContext, AccountingModelConverter.Create(), _eventPublisher, statusDate, true);
                return await contactAccountModelHandler.ReadAsync(accountingNumber, accountNumber);
            },
                                MethodBase.GetCurrentMethod()));
        }
Пример #5
0
        public Task <IContactAccountCollection> GetContactAccountsAsync(int accountingNumber, DateTime statusDate)
        {
            return(ExecuteAsync(async() =>
            {
                using ContactAccountModelHandler contactAccountModelHandler = new ContactAccountModelHandler(DbContext, AccountingModelConverter.Create(), _eventPublisher, statusDate, true);

                IContactAccountCollection contactAccountCollection = new ContactAccountCollection
                {
                    await contactAccountModelHandler.ReadAsync(contactAccountModel => contactAccountModel.AccountingIdentifier == accountingNumber, prepareReadState: new AccountingIdentificationState(accountingNumber))
                };

                return contactAccountCollection;
            },
                                MethodBase.GetCurrentMethod()));
        }