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.
 
 
 
 
 

181 lines
7.9 KiB

using Swift.web.Library;
using System;
using System.Data;
using System.Text;
namespace Swift.web.AgentNew
{
public partial class AgentMain : System.Web.UI.MasterPage
{
private RemittanceLibrary rl = new RemittanceLibrary();
private string VaultTransferViewFunctionId = "20198000";
protected void Page_Load(object sender, EventArgs e)
{
//rl.CheckSession();
if (!IsPostBack)
{
if (GetStatic.ReadSession("IsForTablet", "false") == "false")
{
PopulateMenu();
userName.Text = GetStatic.GetAgentName() + " (" + GetStatic.ReadSession("user", "") + ")";
PopulateNotification();
}
else
{
PopulateStaticMenus();
}
}
}
private void PopulateStaticMenus()
{
string tabletMenu = "<li><a href=\"/AgentNew/Dashboard.aspx\">Dashboard</a></li>" +
"<li><a href='#'>JME Tablet Menu<span class='caret'></span></a>" +
"<ul>";
//"<li><a href='/AgentNew/TabletMenu/CustomerPendingList.aspx'>Document Pending List</a></li>";
if (rl.HasRight("20400000"))
tabletMenu += "<li><a href='/AgentNew/Transaction/ApproveCustomerFromAgent/AddCustomerFromAgent.aspx'>Add Customer</a></li>";
if (rl.HasRight("20440000"))
tabletMenu += "<li><a href='/AgentNew/TabletMenu/AddBeneficiary.aspx'>Add Beneficiary</a></li>";
if (rl.HasRight("20410000"))
tabletMenu += "<li><a href='/AgentNew/Transaction/ApproveAgentTransaction/SendMoneyRequest.aspx'>Send Money Request</a></li>";
tabletMenu += "</ul></li>";
menu.InnerHtml = tabletMenu;
}
protected void PopulateNotification()
{
string sql = "EXEC proc_notification @user = " + rl.FilterString(getUser()) + ", @portal='agent', @branch_id=" + rl.FilterString(GetStatic.GetBranch());
DataTable dt = rl.ExecuteDataTable(sql);
if (null == dt)
{
return;
}
if (dt.Rows.Count == 0)
{
return;
}
StringBuilder sb = new StringBuilder();
int counter = 0;
foreach (DataRow item in dt.Rows)
{
counter += Convert.ToInt16(item["count"].ToString());
sb.AppendLine("<li class=\"clearfix\">");
sb.AppendLine("<a href=\"" + item["link"].ToString() + "\">");
sb.AppendLine("<span class=\"pull-left\">");
sb.AppendLine("<i class=\"fa fa-bell\" style='color:#0e96ec'></i>");
sb.AppendLine("</span>");
sb.AppendLine("<span class=\"media-body\">");
sb.AppendLine(item["msg"].ToString());
sb.AppendLine("<em>" + item["msg1"].ToString() + "</em>");
sb.AppendLine("</span>");
sb.AppendLine("</a></li>");
}
countNotification.InnerHtml = counter.ToString();
notiUL.InnerHtml = "<li class=\"notify-title\">" + counter.ToString() + " New Notification(s)</li>" + sb.ToString();
}
protected string getUser()
{
return GetStatic.GetUser();
}
protected void PopulateMenu()
{
StringBuilder sb = new StringBuilder();
sb = (StringBuilder)Session[GetStatic.GetAgent() + "Menu"];
if (sb ==null || string.IsNullOrEmpty(sb.ToString()) || string.IsNullOrWhiteSpace(sb.ToString()))
{
sb = new StringBuilder();
string sql = "exec menu_proc @flag = 'agent', @user = '" + GetStatic.GetUser() + "'";
DataSet ds = rl.ExecuteDataset(sql);
DataTable menuGroup = ds.Tables[0];
sb.AppendLine("<li><a href=\"/AgentNew/Dashboard.aspx\">Dashboard</a></li> ");
if (ds.Tables[0].Rows.Count == 0 || ds.Tables[1].Rows.Count == 0)
{
menu.InnerHtml = sb.ToString();
return;
}
for (int i = 0; i <= menuGroup.Rows.Count; i++)
{
if (menuGroup.Rows.Count != 0)
{
string menuGroupName = menuGroup.Rows[0]["AgentMenuGroup"].ToString();
DataRow[] rows = ds.Tables[1].Select("AgentMenuGroup = ('" + menuGroupName + "')");
if (rows.Length > 0)
sb.AppendLine(GetMenuContents(menuGroupName, rows));
DataRow[] rowsToRemove = menuGroup.Select("AgentMenuGroup = ('" + menuGroupName + "')");
foreach (DataRow row in rowsToRemove)
{
menuGroup.Rows.Remove(row);
}
}
i = 0;
}
sb.AppendLine("<li><a href=\"/AgentNew/Logout.aspx\" style='background-color:#333'>Logout</a></li> ");
Session[GetStatic.GetAgent() + "Menu"] = sb;
}
menu.InnerHtml = sb.ToString();
}
private string GetMenuContents(string menuGroup, DataRow[] dr)
{
StringBuilder sb = new StringBuilder("");
DataTable dt = CreateDataTable();
foreach (DataRow row in dr)
{
dt.ImportRow(row);
}
sb.AppendLine("<li><a href=\"#\">" + menuGroup + "<span class=\"caret\"></span></a> ");
sb.AppendLine("<ul>");
for (int i = 0; i <= dt.Rows.Count; i++)
{
if (dt.Rows.Count != 0)
{
DataRow[] menuList = dt.Select("AgentMenuGroup = ('" + dt.Rows[0]["AgentMenuGroup"].ToString() + "')");
string subMainMenu = menuList[0]["AgentMenuGroup"].ToString();
foreach (DataRow row in menuList)
{
//sb.AppendLine("<li><a tabindex=\"-1\" href=\"" + row["linkPage"].ToString() + "\" target=\"mainFrame\">" + row["menuName"].ToString() + "</a></li>");
//sb.AppendLine("<li><a href=\"" + row["linkPage"].ToString() + "\" target=\"mainFrame\">" + row["menuName"].ToString() + "</a></li>");
sb.AppendLine("<li><a href=\"" + row["linkPage"].ToString() + "\">" + row["menuName"].ToString() + "</a></li>");
}
DataRow[] rows = dt.Select("AgentMenuGroup = ('" + dt.Rows[0]["AgentMenuGroup"].ToString() + "')");
foreach (DataRow row in rows)
{
dt.Rows.Remove(row);
}
}
i = 0;
}
sb.AppendLine("</ul></li>");
return sb.ToString();
}
private DataTable CreateDataTable()
{
DataTable dt = new DataTable();
DataColumn linkPage = new DataColumn("linkPage", Type.GetType("System.String"));
DataColumn menuName = new DataColumn("menuName", Type.GetType("System.String"));
DataColumn agentMenuGroup = new DataColumn("AgentMenuGroup", Type.GetType("System.String"));
dt.Columns.Add(linkPage);
dt.Columns.Add(agentMenuGroup);
dt.Columns.Add(menuName);
return dt;
}
public string GetAPIPartnerId()
{
string partnerIds = GetStatic.ReadWebConfig("transfast", "") + "," + GetStatic.ReadWebConfig("jmeNepal", "") + "," + GetStatic.ReadWebConfig("donga", "") + "," + GetStatic.ReadWebConfig("brac", "") + "," + GetStatic.ReadWebConfig("cebuana", "") + "," + GetStatic.ReadWebConfig("wing", "");
return partnerIds;
}
}
}