示例#1
0
        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));
            }
示例#2
0
 public BankController(IBankHelper bankHelper) =>