예제 #1
0
        public async Task <IActionResult> BtcFreeTransferAsync([FromBody] BtcFreeTransferRequest request)
        {
            try
            {
                string transactionId = await _btcTransferService.ExecuteAsync(Mapper.Map <BtcTransfer>(request));

                return(Ok(new BtcTransferResponse {
                    TransactionId = transactionId
                }));
            }
            catch (TransferException e)
            {
                _log.ErrorWithDetails(e, new { e.Code });

                return(BadRequest(ErrorResponse.Create(e.Message)));
            }
        }
예제 #2
0
        public async Task <IActionResult> BtcFreeTransferAsync([FromBody] BtcFreeTransferRequest request)
        {
            try
            {
                string transactionId = await _btcTransferService.ExecuteAsync(Mapper.Map <BtcTransfer>(request));

                return(Ok(new BtcTransferResponse {
                    TransactionId = transactionId
                }));
            }
            catch (Exception ex)
            {
                await _log.WriteErrorAsync(nameof(TransfersController), nameof(BtcFreeTransferAsync), ex);

                if (ex is TransferException btcException)
                {
                    return(StatusCode((int)HttpStatusCode.InternalServerError, ErrorResponse.Create(btcException.Message)));
                }
            }

            return(StatusCode((int)HttpStatusCode.InternalServerError));
        }