You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
64 lines
2.9 KiB
64 lines
2.9 KiB
using CustomerOnlineRemit.Common.Model;
|
|
using CustomerOnlineRemit.Common.Model.Account;
|
|
using CustomerOnlineRemit.Common.Model.Customer;
|
|
using CustomerOnlineRemit.Common.Model.Transaction;
|
|
using CustomerOnlineRemit.Repository.ConnectionServices;
|
|
using Newtonsoft.Json;
|
|
using System.Data;
|
|
|
|
namespace CustomerOnlineRemit.Repository.Repository.Transaction
|
|
{
|
|
public class TransactionRepository : ITransactionRepository
|
|
{
|
|
private static readonly Serilog.ILogger _logger = Serilog.Log.ForContext<TransactionRepository>();
|
|
private IDBServiceUtility _dbHelper;
|
|
|
|
public TransactionRepository(IDBServiceUtility dbHelper)
|
|
{
|
|
_dbHelper = dbHelper;
|
|
}
|
|
|
|
public async Task<ExratePayoutDetailsModel> GetPayoutDetails(CalculateModel calcModel, LoginResponse loginDetails)
|
|
{
|
|
ExratePayoutDetailsModel _response = new ExratePayoutDetailsModel();
|
|
try
|
|
{
|
|
var sql = "EXEC PROC_DYNAMIC_TABLE";
|
|
sql += " @Flag = " + _dbHelper.FilterString("PayoutMethod");
|
|
sql += ",@CountryId = " + _dbHelper.FilterString(calcModel.PayoutCountryId);
|
|
sql += ",@PaymentMethod = " + _dbHelper.FilterString(calcModel.PayoutMethod);
|
|
sql += ",@UserEmail = " + _dbHelper.FilterString(loginDetails.UserName);
|
|
|
|
_logger.Debug("TRANSACTIONREPOSITORY | GETPAYOUTDETAILS | SQL | " + sql);
|
|
var dt = _dbHelper.ExecuteDataTable(sql);
|
|
|
|
if (dt == null || dt.Rows.Count <= 0)
|
|
{
|
|
_response.ResponseCode = ResponseHelper.FAILED;
|
|
_response.ResponseMessage = "DB Null Error!";
|
|
|
|
_logger.Error("TRANSACTIONREPOSITORY | GETPAYOUTDETAILS | DB RESPONSE | " + JsonConvert.SerializeObject(_response));
|
|
}
|
|
else
|
|
{
|
|
_response.ResponseCode = ResponseHelper.SUCCESS;
|
|
_response.ResponseMessage = ResponseMessageHelper.SUCCESS;
|
|
|
|
_response.PayoutCountryName = Convert.ToString(dt.Rows[0]["CountryName"]);
|
|
_response.PayoutCountryCode = Convert.ToString(dt.Rows[0]["COUNTRYCODE"]);
|
|
_response.PayoutCurrency = Convert.ToString(dt.Rows[0]["PayoutCurrency"]);
|
|
_response.PayoutPartner = Convert.ToString(dt.Rows[0]["AgentId"]);
|
|
_response.ExrateCalcByPartner = Convert.ToString(dt.Rows[0]["exRateCalByPartner"]);
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
_response.ResponseCode = ResponseHelper.EXCEPTION;
|
|
_response.ResponseMessage = "Exception occured: " + ex.Message;
|
|
|
|
_logger.Error("TRANSACTIONREPOSITORY | GETPAYOUTDETAILS | EXCEPTION | " + JsonConvert.SerializeObject(_response));
|
|
}
|
|
return await Task.FromResult(_response);
|
|
}
|
|
}
|
|
}
|