private async Task <PaypalRecordDto> AddTopUpApiTransactionViaAdminApi(PaypalRecordDto paypalRecordDto, AddApiTransactionRequest addApiTransactionRequest) { AddApiTransactionResponse addApiTransactionResponse = new AddApiTransactionResponse(); try { addApiTransactionRequest.transactionType = topUpTransactionType; var api = this._myDbContext.Apis.Where(s => s.apiKey.ToString() == addApiTransactionRequest.userApiKey).FirstOrDefault(); addApiTransactionRequest.apiId = api.apiId; addApiTransactionRequest.createBy = api.apiId.ToString(); ApiTransaction request = _addApiTransactionMapper.CreateApiTransaction(addApiTransactionRequest); string query = "call P_AddApiTransaction(@apiId,@headId,@currencyCode,@transactionType,@amount,@notes,@createBy)"; MySqlParameter pApiId = new MySqlParameter("@apiId", request.apiId); MySqlParameter pHeadId = new MySqlParameter("@headId", request.headId); MySqlParameter pCurrencyCode = new MySqlParameter("@currencyCode", request.currencyCode); MySqlParameter pTransactionType = new MySqlParameter("@transactionType", request.transactionType); MySqlParameter pAmount = new MySqlParameter("@amount", request.amount); MySqlParameter pNotes = new MySqlParameter("@notes", request.notes); MySqlParameter pCreateBy = new MySqlParameter("@createBy", request.createBy); var data = this._myDbContext.ApiTransactions.FromSqlRaw(query, pApiId, pHeadId, pCurrencyCode, pTransactionType, pAmount, pNotes, pCreateBy).AsNoTracking().AsEnumerable().ToList().FirstOrDefault(); addApiTransactionResponse.apiTransactionId = data.apiTransactionId; addApiTransactionResponse.transactionNumber = data.transactionNumber; } catch (Exception ex) { var aa = ex.ToString(); addApiTransactionResponse = JsonConvert.DeserializeObject <AddApiTransactionResponse>(ex.Message) ?? ErrorAddApiTransactionResponse(); paypalRecordDto.resultMessage = addApiTransactionResponse.meta.error["message"]; } if (paypalRecordDto.resultMessage.IsNullOrEmpty()) { paypalRecordDto.paypalRecordPayload.apiTransactionNumber = addApiTransactionResponse.transactionNumber; paypalRecordDto.paypalRecordPayload.apiTransactionId = addApiTransactionResponse.apiTransactionId; } return(paypalRecordDto); }
public void AssignAddApiTransactionResponse(ApiTransaction src, AddApiTransactionResponse des) { Assign <ApiTransaction, AddApiTransactionResponse>(addApiTransactionMapper, src, des); }