public CashBankMutation ConfirmObject(CashBankMutation cashBankMutation, DateTime ConfirmationDate, ICashMutationService _cashMutationService, ICashBankService _cashBankService) { cashBankMutation.ConfirmationDate = ConfirmationDate; if (_validator.ValidConfirmObject(cashBankMutation, _cashBankService)) { CashBank sourceCashBank = _cashBankService.GetObjectById(cashBankMutation.SourceCashBankId); CashBank targetCashBank = _cashBankService.GetObjectById(cashBankMutation.TargetCashBankId); IList <CashMutation> cashMutations = _cashMutationService.CreateCashMutationForCashBankMutation(cashBankMutation, sourceCashBank, targetCashBank); foreach (var cashMutation in cashMutations) { _cashMutationService.CashMutateObject(cashMutation, _cashBankService); } _repository.ConfirmObject(cashBankMutation); } return(cashBankMutation); }