public async Task <IActionResult> Verify(Guid id) { try { var application = await GetApplicationAsync(); if (application == null || application.Status != 0) { return(Unauthorized()); } var transaction = await _transactionRepository.Get(id); if (transaction == null) { return(Unauthorized()); } IBankHelper bankHelper = transaction.Bank.Code switch { (byte)BankCodeEnum.Mellat => new MellatHelper(_logger, _transactionRepository, _applicationBankRepository), (byte)BankCodeEnum.Efarda => new EfardaHelper(_logger, _transactionRepository, _applicationBankRepository), (byte)BankCodeEnum.Parsian => new ParsianHelper(_logger, _transactionRepository, _applicationBankRepository), _ => new SamanHelper(_logger, _transactionRepository, _applicationBankRepository), }; var Result = await bankHelper.VerifyTransaction(transaction); return(Ok(Result)); }
public BankController(IBankHelper bankHelper) =>