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.
147 lines
6.0 KiB
147 lines
6.0 KiB
using System.Data;
|
|
using Swift.DAL.SwiftDAL;
|
|
|
|
namespace Swift.DAL.BL.Remit.CreditRiskManagement.CreditLimit
|
|
{
|
|
public class CreditLimitDao : RemittanceDao
|
|
{
|
|
public DbResult Update(string user, string crLimitId, string agentId, string currency, string limitAmt,
|
|
string perTopUpAmt, string maxLimitAmt, string expiryDate, string todaysAddedMaxLimit,
|
|
string perToupRequest, string maxTopupRequest)
|
|
{
|
|
string sql = "EXEC proc_creditLimit";
|
|
sql += " @flag = " + (crLimitId == "0" || crLimitId == "" ? "'i'" : "'u'");
|
|
sql += ", @user = " + FilterString(user);
|
|
sql += ", @crLimitId = " + FilterString(crLimitId);
|
|
sql += ", @agentId = " + FilterString(agentId);
|
|
sql += ", @currency = " + FilterString(currency);
|
|
sql += ", @limitAmt = " + FilterString(limitAmt);
|
|
sql += ", @perTopUpAmt = " + FilterString(perTopUpAmt);
|
|
sql += ", @maxLimitAmt = " + FilterString(maxLimitAmt);
|
|
sql += ", @expiryDate = " + FilterString(expiryDate);
|
|
sql += ", @todaysAddedMaxLimit = " + FilterString(todaysAddedMaxLimit);
|
|
sql += ", @perToupRequest = " + FilterString(perToupRequest);
|
|
sql += ", @maxTopupRequest = " + FilterString(maxTopupRequest);
|
|
return ParseDbResult(ExecuteDataset(sql).Tables[0]);
|
|
}
|
|
|
|
public DbResult Delete(string user, string crLimitId)
|
|
{
|
|
string sql = "EXEC proc_creditLimit";
|
|
sql += " @flag = 'd'";
|
|
sql += ", @user = " + FilterString(user);
|
|
sql += ", @crLimitId = " + FilterString(crLimitId);
|
|
|
|
return ParseDbResult(ExecuteDataset(sql).Tables[0]);
|
|
}
|
|
|
|
public DataRow SelectById(string user, string crLimitId)
|
|
{
|
|
string sql = "EXEC proc_creditLimit";
|
|
sql += " @flag = 'a'";
|
|
sql += ", @user = " + FilterString(user);
|
|
sql += ", @crLimitId = " + FilterString(crLimitId);
|
|
|
|
DataSet ds = ExecuteDataset(sql);
|
|
if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
|
|
return null;
|
|
return ds.Tables[0].Rows[0];
|
|
}
|
|
|
|
public DataSet LoadGrid(string user, string pageNumber, string pageSize, string sortBy,
|
|
string sortOrder, string hasChanged, string agentName, string agentCountry, string agentDistrict)
|
|
{
|
|
var sql = "EXEC proc_creditLimit @flag = 'simpleGrid'";
|
|
sql += ", @user = " + FilterString(user);
|
|
sql += ", @pageNumber = " + FilterString(pageNumber);
|
|
sql += ", @pageSize = " + FilterString(pageSize);
|
|
sql += ", @sortBy = " + FilterString(sortBy);
|
|
sql += ", @sortOrder = " + FilterString(sortOrder);
|
|
sql += ", @hasChanged = " + FilterString(hasChanged);
|
|
sql += ", @agentName = " + FilterString(agentName);
|
|
sql += ", @agentCountry = " + FilterString(agentCountry);
|
|
sql += ", @agentDistrict = " + FilterString(agentDistrict);
|
|
|
|
return ExecuteDataset(sql);
|
|
}
|
|
|
|
public DataRow SelectAgentAcDetail(string user, string agentId)
|
|
{
|
|
string sql = "EXEC proc_creditLimit @flag = 'detail'";
|
|
sql += ", @user = " + FilterString(user);
|
|
sql += ", @agentId = " + FilterString(agentId);
|
|
|
|
DataSet ds = ExecuteDataset(sql);
|
|
if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
|
|
return null;
|
|
return ds.Tables[0].Rows[0];
|
|
}
|
|
|
|
public DataSet SelectCreditLimitAuthority(string user)
|
|
{
|
|
var sql = "EXEC proc_topUpLimit @flag = 'cla'";
|
|
sql += ", @user = " + FilterString(user);
|
|
|
|
DataSet ds = ExecuteDataset(sql);
|
|
if (ds == null || ds.Tables.Count == 0)
|
|
return null;
|
|
return ds;
|
|
}
|
|
|
|
//Extra Limit Dao
|
|
public DbResult UpdateExtraLimit(string user, string agentId, string todaysAddedMaxLimit)
|
|
{
|
|
string sql = "EXEC proc_extraLimit";
|
|
sql += " @flag = 'i'";
|
|
sql += ", @user = " + FilterString(user);
|
|
sql += ", @agentId = " + FilterString(agentId);
|
|
sql += ", @extraLimit = " + FilterString(todaysAddedMaxLimit);
|
|
return ParseDbResult(ExecuteDataset(sql).Tables[0]);
|
|
}
|
|
|
|
public DataRow SelectByIdForExtraLimit(string user, string agentId)
|
|
{
|
|
string sql = "EXEC proc_extraLimit";
|
|
sql += " @flag = 'a'";
|
|
sql += ", @user = " + FilterString(user);
|
|
sql += ", @agentId = " + FilterString(agentId);
|
|
|
|
DataSet ds = ExecuteDataset(sql);
|
|
if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
|
|
return null;
|
|
return ds.Tables[0].Rows[0];
|
|
}
|
|
|
|
public DataSet ShowPedningRequest(string user, string agentId)
|
|
{
|
|
var sql = "EXEC proc_extraLimit @flag='s1'";
|
|
sql += ", @user = " + FilterString(user);
|
|
sql += ", @agentId = " + FilterString(agentId);
|
|
|
|
DataSet ds = ExecuteDataset(sql);
|
|
if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
|
|
return null;
|
|
return ds;
|
|
}
|
|
|
|
public DbResult ApproveExtraLimit(string user, string id)
|
|
{
|
|
string sql = "EXEC proc_extraLimit";
|
|
sql += " @flag = 'approve'";
|
|
sql += ", @user = " + FilterString(user);
|
|
sql += ", @rowId = " + FilterString(id);
|
|
|
|
return ParseDbResult(ExecuteDataset(sql).Tables[0]);
|
|
}
|
|
|
|
public DbResult RejectExtraLimit(string user, string id)
|
|
{
|
|
string sql = "EXEC proc_extraLimit";
|
|
sql += " @flag = 'reject'";
|
|
sql += ", @user = " + FilterString(user);
|
|
sql += ", @rowId = " + FilterString(id);
|
|
|
|
return ParseDbResult(ExecuteDataset(sql).Tables[0]);
|
|
}
|
|
}
|
|
}
|