public async Task <TransactionResponseDataModel <GetTransactionResponseModel> > Handle(GetTransactionByStatusRequest request, CancellationToken cancellationToken) { var response = new TransactionResponseDataModel <GetTransactionResponseModel>(); try { var status = GetStatusByFirstLetter(request.Status); var entities = await _repository.GetTransactionByStatusAsync((int)status); var transactions = _mapper.Map <IEnumerable <GetTransactionResponseModel> >(entities); response.Data = transactions; response.StatusCode = StatusCodes.Status200OK; } catch (Exception) { return(new TransactionResponseDataModel <GetTransactionResponseModel> { StatusCode = StatusCodes.Status500InternalServerError }); } return(response); }
public async Task <TransactionResponseDataModel <GetTransactionResponseModel> > Handle(GetTransactionByIdRequest request, CancellationToken cancellationToken) { var response = new TransactionResponseDataModel <GetTransactionResponseModel>(); try { var entity = await _repository.GetTransactionByIdAsync(request.Id); var transaction = _mapper.Map <GetTransactionResponseModel>(entity); response.Data = new List <GetTransactionResponseModel> { transaction }; response.StatusCode = StatusCodes.Status200OK; } catch (Exception) { return(new TransactionResponseDataModel <GetTransactionResponseModel> { StatusCode = StatusCodes.Status500InternalServerError }); } return(response); }
private IActionResult GetResponse <T>(TransactionResponseDataModel <T> responseModel) { if (responseModel.StatusCode == StatusCodes.Status200OK) { return(Ok(responseModel.Data)); } return(GetResponse(responseModel as TransactionResponseModel)); }