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.
219 lines
10 KiB
219 lines
10 KiB
using CustomerOnlineRemit.Common.Model.Account;
|
|
using CustomerOnlineRemit.Common.Model;
|
|
using CustomerOnlineRemit.Repository.ConnectionServices;
|
|
using Newtonsoft.Json;
|
|
using CustomerOnlineRemit.Common.Model.Customer;
|
|
using System.Data;
|
|
|
|
namespace CustomerOnlineRemit.Repository.Repository.Account
|
|
{
|
|
public class AccountRepository : IAccountRepository
|
|
{
|
|
private static readonly Serilog.ILogger _logger = Serilog.Log.ForContext<AccountRepository>();
|
|
private IDBServiceUtility _dbHelper;
|
|
|
|
public AccountRepository(IDBServiceUtility dbHelper)
|
|
{
|
|
_dbHelper = dbHelper;
|
|
}
|
|
|
|
public async Task<LoginResponse> DoLoginAsync(LoginModel loginModel)
|
|
{
|
|
LoginResponse _response = new LoginResponse();
|
|
try
|
|
{
|
|
var sql = "EXEC proc_online_customer_login";
|
|
sql += " @Flag = " + _dbHelper.FilterString("l");
|
|
sql += ",@customerEmail = " + _dbHelper.FilterString(loginModel.UserName);
|
|
sql += ",@customerPassword = " + _dbHelper.FilterString(loginModel.Password);
|
|
sql += ",@ipAddress = " + _dbHelper.FilterString(loginModel.IpAddress);
|
|
sql += ",@sessionId = " + _dbHelper.FilterString(loginModel.SessionId);
|
|
sql += ",@LogInfo = N" + _dbHelper.FilterString(JsonConvert.SerializeObject(loginModel.LoginInfo));
|
|
|
|
_logger.Debug("ACCOUNTREPOSITORY | DOLOGINASYNC | SQL | " + sql);
|
|
var dr = _dbHelper.ExecuteDataRow(sql);
|
|
|
|
if (dr == null)
|
|
{
|
|
_response.ResponseCode = ResponseHelper.FAILED;
|
|
_response.ResponseMessage = "DB Null Error!";
|
|
|
|
_logger.Error("ACCOUNTREPOSITORY | DOLOGINASYNC | DB RESPONSE | " + JsonConvert.SerializeObject(_response));
|
|
}
|
|
else
|
|
{
|
|
_response.ResponseCode = Convert.ToInt16(dr["errorCode"]);
|
|
_response.ResponseMessage = Convert.ToString(dr["msg"]);
|
|
|
|
if (_response.ResponseCode == ResponseHelper.SUCCESS)
|
|
{
|
|
_response.UserName = Convert.ToString(dr["username"]);
|
|
_response.UserId = Convert.ToString(dr["Id"]);
|
|
_response.Email = Convert.ToString(dr["username"]);
|
|
_response.ForceChangePassword = Convert.ToBoolean(dr["isForcedPwdChange"]);
|
|
_response.FullName = Convert.ToString(dr["fullName"]);
|
|
_response.GoogleAuthCode = "";
|
|
_response.MobileNumber = Convert.ToString(dr["mobile"]);
|
|
_response.RememberMe = loginModel.RememberMe;
|
|
_response.SessionId = loginModel.SessionId;
|
|
}
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
_response.ResponseCode = ResponseHelper.EXCEPTION;
|
|
_response.ResponseMessage = "Exception occured: " + ex.Message;
|
|
|
|
_logger.Error("ACCOUNTREPOSITORY | DOLOGINASYNC | EXCEPTION | " + JsonConvert.SerializeObject(_response));
|
|
}
|
|
return await Task.FromResult(_response);
|
|
}
|
|
|
|
public async Task<CustomerReceiverModel> GetCustomerReceiverList(bool ShowAll, LoginResponse loginDetails)
|
|
{
|
|
CustomerReceiverModel _response = new CustomerReceiverModel();
|
|
try
|
|
{
|
|
var sql = "EXEC PROC_DYNAMIC_TABLE";
|
|
sql += " @Flag = " + _dbHelper.FilterString("CustomerReceiver");
|
|
sql += ",@ShowAll = " + _dbHelper.FilterString(ShowAll.ToString());
|
|
|
|
_logger.Debug("ACCOUNTREPOSITORY | GETCUSTOMERRECEIVERLIST | 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("ACCOUNTREPOSITORY | GETCUSTOMERRECEIVERLIST | DB RESPONSE | " + JsonConvert.SerializeObject(_response));
|
|
}
|
|
else
|
|
{
|
|
_response.ResponseCode = Convert.ToInt16(dt.Rows[0]["errorCode"]);
|
|
_response.ResponseMessage = Convert.ToString(dt.Rows[0]["msg"]);
|
|
|
|
List<ReceiverModel> obj = new List<ReceiverModel>();
|
|
foreach (DataRow item in dt.Rows)
|
|
{
|
|
obj.Add(new ReceiverModel
|
|
{
|
|
Id = Convert.ToString(item["Id"]),
|
|
Name = Convert.ToString(item["Name"]),
|
|
Mobile = Convert.ToString(item["Mobile"]),
|
|
Country = Convert.ToString(item["Country"]),
|
|
TransactionType = Convert.ToString(item["TransactionType"])
|
|
});
|
|
}
|
|
_response.ReceiverModel = obj;
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
_response.ResponseCode = ResponseHelper.EXCEPTION;
|
|
_response.ResponseMessage = "Exception occured: " + ex.Message;
|
|
|
|
_logger.Error("ACCOUNTREPOSITORY | GETCUSTOMERRECEIVERLIST | EXCEPTION | " + JsonConvert.SerializeObject(_response));
|
|
}
|
|
return await Task.FromResult(_response);
|
|
}
|
|
|
|
public async Task<CustomerTransactionList> GetCustomerTransactionList(bool ShowAll, LoginResponse loginDetails)
|
|
{
|
|
CustomerTransactionList _response = new CustomerTransactionList();
|
|
try
|
|
{
|
|
var sql = "EXEC PROC_DYNAMIC_TABLE";
|
|
sql += " @Flag = " + _dbHelper.FilterString("CustomerTxn");
|
|
sql += ",@ShowAll = " + _dbHelper.FilterString(ShowAll.ToString());
|
|
|
|
_logger.Debug("ACCOUNTREPOSITORY | GETCUSTOMERTRANSACTIONLIST | 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("ACCOUNTREPOSITORY | GETCUSTOMERTRANSACTIONLIST | DB RESPONSE | " + JsonConvert.SerializeObject(_response));
|
|
}
|
|
else
|
|
{
|
|
_response.ResponseCode = Convert.ToInt16(dt.Rows[0]["errorCode"]);
|
|
_response.ResponseMessage = Convert.ToString(dt.Rows[0]["msg"]);
|
|
|
|
List<CustomerTransaction> obj = new List<CustomerTransaction>();
|
|
foreach (DataRow item in dt.Rows)
|
|
{
|
|
obj.Add(new CustomerTransaction
|
|
{
|
|
Id = Convert.ToString(item["Id"]),
|
|
Amount = Convert.ToString(item["Amount"]),
|
|
PaymentMethod = Convert.ToString(item["PaymentMethod"]),
|
|
PBankName = Convert.ToString(item["PBankName"]),
|
|
PCurrency = Convert.ToString(item["PCurrency"]),
|
|
TransactionDay = Convert.ToString(item["TransactionDay"]),
|
|
TransactionMonth = Convert.ToString(item["TransactionMonth"]),
|
|
Status = Convert.ToString(item["Status"])
|
|
});
|
|
}
|
|
_response.CustomerTransaction = obj;
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
_response.ResponseCode = ResponseHelper.EXCEPTION;
|
|
_response.ResponseMessage = "Exception occured: " + ex.Message;
|
|
|
|
_logger.Error("ACCOUNTREPOSITORY | GETCUSTOMERTRANSACTIONLIST | EXCEPTION | " + JsonConvert.SerializeObject(_response));
|
|
}
|
|
return await Task.FromResult(_response);
|
|
}
|
|
|
|
public async Task<DropDownModel> GetDynamicDropDown(string flag, LoginResponse loginDetails, string selectedValue1 = "")
|
|
{
|
|
DropDownModel _response = new DropDownModel();
|
|
try
|
|
{
|
|
var sql = "EXEC PROC_DYNAMIC_TABLE";
|
|
sql += " @Flag = " + _dbHelper.FilterString(flag);
|
|
sql += ", @selectedValue1 = " + _dbHelper.FilterString(selectedValue1);
|
|
|
|
_logger.Debug("ACCOUNTREPOSITORY | GETCUSTOMERTRANSACTIONLIST | 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("ACCOUNTREPOSITORY | GETCUSTOMERTRANSACTIONLIST | DB RESPONSE | " + JsonConvert.SerializeObject(_response));
|
|
}
|
|
else
|
|
{
|
|
_response.ResponseCode = Convert.ToInt16(dt.Rows[0]["errorCode"]);
|
|
_response.ResponseMessage = Convert.ToString(dt.Rows[0]["msg"]);
|
|
|
|
List<DropDownListModel> obj = new List<DropDownListModel>();
|
|
foreach (DataRow item in dt.Rows)
|
|
{
|
|
obj.Add(new DropDownListModel
|
|
{
|
|
Id = Convert.ToString(item["Id"]),
|
|
Text = Convert.ToString(item["Text"])
|
|
});
|
|
}
|
|
_response.dropDownList = obj;
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
_response.ResponseCode = ResponseHelper.EXCEPTION;
|
|
_response.ResponseMessage = "Exception occured: " + ex.Message;
|
|
|
|
_logger.Error("ACCOUNTREPOSITORY | GETCUSTOMERTRANSACTIONLIST | EXCEPTION | " + JsonConvert.SerializeObject(_response));
|
|
}
|
|
return await Task.FromResult(_response);
|
|
}
|
|
}
|
|
}
|