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.
414 lines
18 KiB
414 lines
18 KiB
using System;
|
|
using System.Data;
|
|
using System.Text;
|
|
using Swift.DAL.BL.Remit.Transaction;
|
|
using Swift.web.Library;
|
|
|
|
|
|
namespace Swift.web.Responsive.Reports.UserWise
|
|
{
|
|
public partial class View : System.Web.UI.Page
|
|
{
|
|
private const string ViewFunctionId = "40121400";
|
|
private readonly RemittanceLibrary _sl = new RemittanceLibrary();
|
|
TranReportDao _rptDao = new TranReportDao();
|
|
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
Authenticate();
|
|
string reportName = GetStatic.ReadQueryString("reportName", "").ToLower();
|
|
string mode = GetStatic.ReadQueryString("mode", "").ToLower();
|
|
if (mode == "download")
|
|
{
|
|
string format = GetStatic.ReadQueryString("format", "xls");
|
|
Response.Clear();
|
|
Response.ClearContent();
|
|
Response.ClearHeaders();
|
|
Response.ContentType = "application/vnd.ms-excel";
|
|
Response.AddHeader("Content-Disposition", "inline; filename=" + reportName + "." + format);
|
|
exportDiv.Visible = false;
|
|
}
|
|
if (reportName == "uwdetail")
|
|
LoadReport();
|
|
else if (reportName == "uwsummary")
|
|
LoadReportSummary();
|
|
else if (reportName == "agentuserwise")
|
|
LoadReportAgentUserWise();
|
|
else if (reportName == "detail")
|
|
ShowUserWiseTranDetail();
|
|
}
|
|
private void Authenticate()
|
|
{
|
|
_sl.CheckAuthentication(ViewFunctionId);
|
|
}
|
|
private void PrintFilter(ref DataTable filter)
|
|
{
|
|
var html = new StringBuilder("Filter Applied:</br>");
|
|
|
|
foreach (DataRow dr in filter.Rows)
|
|
{
|
|
html.Append(dr[0] + "=" + dr[1] + " | ");
|
|
}
|
|
filters.InnerHtml = html.ToString();
|
|
}
|
|
|
|
private void PrintHead(ref DataTable reportHead)
|
|
{
|
|
var html = new StringBuilder("");
|
|
foreach (DataRow dr in reportHead.Rows)
|
|
html.Append(dr[0].ToString());
|
|
head.InnerHtml = html.ToString();
|
|
|
|
}
|
|
|
|
private string GetAgentId()
|
|
{
|
|
return GetStatic.ReadQueryString("agent", "");
|
|
}
|
|
private string GetBranchId()
|
|
{
|
|
return GetStatic.ReadQueryString("branch", "");
|
|
}
|
|
private string GetUserName()
|
|
{
|
|
return GetStatic.ReadQueryString("userName", "");
|
|
}
|
|
private string GetFromDate()
|
|
{
|
|
return GetStatic.ReadQueryString("fromDate", "");
|
|
}
|
|
private string GetToDate()
|
|
{
|
|
return GetStatic.ReadQueryString("toDate", "");
|
|
}
|
|
private string GetFlag()
|
|
{
|
|
return GetStatic.ReadQueryString("flag", "");
|
|
}
|
|
private string GetRecCountry()
|
|
{
|
|
return GetStatic.ReadQueryString("rCountry", "");
|
|
}
|
|
private void LoadReport()
|
|
{
|
|
head.InnerHtml = "";
|
|
var ds = _rptDao.UserWiseReport("detail", GetStatic.GetCountry(), GetStatic.GetAgent(), GetBranchId(), GetUserName(), GetFromDate(), GetToDate(), GetRecCountry(), GetStatic.GetUser());
|
|
|
|
var dtHead = ds.Tables[0];
|
|
var dt = ds.Tables[1];
|
|
var filter = ds.Tables[3];
|
|
var reportHead = ds.Tables[4];
|
|
|
|
PrintFilter(ref filter);
|
|
PrintHead(ref reportHead);
|
|
|
|
int cols = dt.Columns.Count;
|
|
|
|
StringBuilder str = new StringBuilder("<table class=\"table table-responsive table-bordered table-striped\" >");
|
|
str.Append("<tr>");
|
|
str.AppendLine("<th>S.N.</th>");
|
|
for (int i = 1; i < cols - 1; i++)
|
|
{
|
|
str.AppendLine("<th align=\"left\">" + dt.Columns[i].ColumnName + "</th>");
|
|
}
|
|
str.AppendLine("</tr>");
|
|
if (dtHead.Rows.Count > 0)
|
|
{
|
|
double[] total = new double[9];
|
|
|
|
foreach (DataRow dr in dtHead.Rows)
|
|
{
|
|
str.AppendLine(PrintRegionBody(ref dt, dr[0].ToString(), ref total));
|
|
}
|
|
|
|
str.Append("<tr>");
|
|
str.Append("<td colspan = '2'><center><b>Grand Total</b></center></td>");
|
|
|
|
for (int i = 2; i < 9; i++)
|
|
{
|
|
if (i == 2 || i == 4 || i == 6 || i == 8)
|
|
str.Append("<td align = 'center'><b>" + total[i].ToString() + "</b></td>");
|
|
else if (i == 3 || i == 7)
|
|
str.Append("<td align = 'right'><b>" + total[i].ToString() + "</b></td>");
|
|
else
|
|
str.Append("<td align = 'right'><b>" + GetStatic.ParseMinusValue(GetStatic.ParseDouble(total[i].ToString())) + "</b></td>");
|
|
}
|
|
str.Append("</tr>");
|
|
}
|
|
else
|
|
{
|
|
str.Append("<tr>");
|
|
str.Append("<td colspan = '" + cols + "'><center><b>No Record Found!</b></center></td>");
|
|
str.Append("</tr>");
|
|
}
|
|
|
|
|
|
rptDiv.InnerHtml = str.ToString();
|
|
}
|
|
private string PrintRegionBody(ref DataTable dt, string regionName, ref Double[] total)
|
|
{
|
|
double[] subTotal = new double[9];
|
|
DataRow[] rows = dt.Select("HEAD='" + regionName + "'");
|
|
|
|
var html = new StringBuilder();
|
|
|
|
|
|
html.Append("<tr>");
|
|
html.Append("<td></td>");
|
|
html.Append("<td colspan='5'><b>User Name: " + regionName + "</b></td>");
|
|
|
|
html.Append("</tr>");
|
|
int bag_sno = 0;
|
|
foreach (DataRow dr in rows)
|
|
{
|
|
|
|
for (int i = 2; i < 9; i++)
|
|
{
|
|
var data = GetStatic.ParseDouble(dr[i].ToString());
|
|
subTotal[i] += data;
|
|
total[i] += data;
|
|
}
|
|
|
|
html.Append("<tr>");
|
|
html.Append("<td align=\"center\" style=\"border=\"0\";\" nowrap='nowrap'>" + (++bag_sno).ToString() + "</td>");
|
|
html.Append("<td align=\"left\" style=\"border=\"0\";\" nowrap='nowrap'>" + dr["Branch"].ToString() + "</td>");
|
|
html.Append("<td align=\"center\" style=\"border=\"0\";\"><a href=\"../../Reports.aspx?reportName=userwiserpt&rCountry=" + GetRecCountry() + "&branch=" + dr["agentId"].ToString() + "&type=Send&userName=" + regionName + "&fromDate=" + GetFromDate() + "&toDate=" + GetToDate() + "\">" + dr["#Send Trans"].ToString() + "</a></td>");
|
|
html.Append("<td align=\"right\" style=\"border=\"0\";\">" + dr["Send Amount"].ToString() + "</td>");
|
|
html.Append("<td align=\"center\" style=\"border=\"0\";\"><a href=\"../../Reports.aspx?reportName=userwiserpt&rCountry=" + GetRecCountry() + "&branch=" + dr["agentId"].ToString() + "&type=Paid&userName=" + regionName + "&fromDate=" + GetFromDate() + "&toDate=" + GetToDate() + "\">" + dr["#Paid Trans"].ToString() + "</a></td>");
|
|
html.Append("<td align=\"right\" style=\"border=\"0\";\">" + GetStatic.ParseMinusValue(GetStatic.ParseDouble(dr["Paid Amount"].ToString())) + "</td>");
|
|
html.Append("<td align=\"center\" style=\"border=\"0\";\"><a href=\"../../Reports.aspx?reportName=userwiserpt&rCountry=" + GetRecCountry() + "&branch=" + dr["agentId"].ToString() + "&type=Approved&userName=" + regionName + "&fromDate=" + GetFromDate() + "&toDate=" + GetToDate() + "\">" + dr["#Approved Trans"].ToString() + "</a></td>");
|
|
html.Append("<td align=\"right\" style=\"border=\"0\";\">" + dr["Approved Amount"].ToString() + "</td>");
|
|
html.Append("<td align=\"center\" style=\"border=\"0\";\"><a href=\"ModifyHistory.aspx?reportName=modifyHistory&rCountry=" + GetRecCountry() + "&branch=" + dr["agentId"].ToString() + "&type=all&userName=" + regionName + "&fromDate=" + GetFromDate() + "&toDate=" + GetToDate() + "\">" + dr["#Amendment Count"].ToString() + "</a></td>");
|
|
html.Append("</tr>");
|
|
}
|
|
|
|
html.Append("<tr>");
|
|
html.Append("<td colspan = '2'><center><b>Sub Total</b></center></td>");
|
|
|
|
for (int i = 2; i < 9; i++)
|
|
{
|
|
if (i == 2 || i == 4 || i == 6 || i == 8)
|
|
html.Append("<td align = 'center'><b>" + subTotal[i].ToString() + "</b></td>");
|
|
else if (i == 3 || i == 7)
|
|
html.Append("<td align = 'right'><b>" + subTotal[i].ToString() + "</b></td>");
|
|
else
|
|
html.Append("<td align = 'right'><b>" + GetStatic.ParseMinusValue(GetStatic.ParseDouble(subTotal[i].ToString())) + "</b></td>");
|
|
}
|
|
|
|
html.Append("</tr>");
|
|
return html.ToString();
|
|
}
|
|
private void LoadReportSummary()
|
|
{
|
|
var ds = _rptDao.UserWiseReport("summary", GetStatic.GetCountry(), GetStatic.GetAgent(), GetBranchId(), GetUserName(), GetFromDate(), GetToDate(), GetRecCountry(), GetStatic.GetUser());
|
|
var dt = ds.Tables[0];
|
|
var filter = ds.Tables[2];
|
|
var reportHead = ds.Tables[3];
|
|
|
|
PrintFilter(ref filter);
|
|
PrintHead(ref reportHead);
|
|
int cols = dt.Columns.Count;
|
|
|
|
double[] sum = new double[cols];
|
|
|
|
StringBuilder str = new StringBuilder("<table class=\"table table-responsive table-bordered table-striped \"");
|
|
str.Append("<tr>");
|
|
str.AppendLine("<th>S.N.</th>");
|
|
for (int i = 0; i < cols; i++)
|
|
{
|
|
str.AppendLine("<th align=\"left\">" + dt.Columns[i].ColumnName + "</th>");
|
|
}
|
|
str.AppendLine("</tr>");
|
|
if (dt.Rows.Count > 0)
|
|
{
|
|
int bag_sno = 0;
|
|
foreach (DataRow row in dt.Rows)
|
|
{
|
|
str.Append("<tr>");
|
|
str.Append("<td align=\"center\" style=\"border=\"0\";\" nowrap='nowrap'>" + (++bag_sno).ToString() + "</td>");
|
|
for (int i = 0; i < cols; i++)
|
|
{
|
|
if (i > 0 && i < cols)
|
|
{
|
|
double currVal;
|
|
double.TryParse(row[i].ToString(), out currVal);
|
|
sum[i] += currVal;
|
|
}
|
|
|
|
if (i == 1 || i == 3 || i == 5 || i == 7)
|
|
{
|
|
str.Append("<td align = 'center'>" + row[i].ToString() + "</td>");
|
|
}
|
|
else if (i == 2 || i == 6)
|
|
{
|
|
str.Append("<td align = 'right'>" + row[i].ToString() + "</td>");
|
|
}
|
|
else if (i == 4)
|
|
{
|
|
str.Append("<td align = 'right'>" + GetStatic.ParseMinusValue(GetStatic.ParseDouble(row[i].ToString())) + "</td>");
|
|
}
|
|
else
|
|
{
|
|
str.Append("<td align = 'left'>" + row[i].ToString() + "</td>");
|
|
}
|
|
}
|
|
str.Append("</tr>");
|
|
}
|
|
str.Append("<tr>");
|
|
str.Append("<td align=\"center\" colspan='2'><b>Total</b></td>");
|
|
for (int i = 1; i < cols; i++)
|
|
{
|
|
if (i == 1 || i == 3 || i == 5 || i == 7)
|
|
{
|
|
str.Append("<td align=\"center\"><b>" + sum[i].ToString() + "</b></td>");
|
|
}
|
|
else if (i == 2 || i == 6)
|
|
{
|
|
str.Append("<td align = 'right'>" + sum[i].ToString() + "</td>");
|
|
}
|
|
else if (i == 4)
|
|
{
|
|
str.Append("<td align = 'right'><b>" + GetStatic.ParseMinusValue(GetStatic.ParseDouble(sum[i].ToString())) + "</b></td>");
|
|
}
|
|
}
|
|
str.Append("</tr>");
|
|
}
|
|
else
|
|
{
|
|
str.Append("<tr>");
|
|
str.Append("<td colspan = '" + cols + "'><center><b>No Record Found!</b></center></td>");
|
|
str.Append("</tr>");
|
|
}
|
|
|
|
|
|
rptDiv.InnerHtml = str.ToString();
|
|
}
|
|
private void LoadReportAgentUserWise()
|
|
{
|
|
var ds = _rptDao.GetUserWiseTransactionReport("A", GetStatic.GetUser(), GetFromDate(), GetToDate(), GetStatic.GetAgentId(), GetUserName());
|
|
var dt = ds.Tables[0];
|
|
var filter = ds.Tables[2];
|
|
var reportHead = ds.Tables[3];
|
|
|
|
PrintFilter(ref filter);
|
|
PrintHead(ref reportHead);
|
|
int cols = dt.Columns.Count;
|
|
|
|
double[] sum = new double[cols];
|
|
|
|
StringBuilder str = new StringBuilder("<table class=\"table table-responsive table-striped table-bordered \"");
|
|
str.Append("<tr>");
|
|
str.AppendLine("<th>S.N.</th>");
|
|
for (int i = 0; i < cols; i++)
|
|
{
|
|
str.AppendLine("<th align=\"left\">" + dt.Columns[i].ColumnName + "</th>");
|
|
}
|
|
str.AppendLine("</tr>");
|
|
if (dt.Rows.Count > 0)
|
|
{
|
|
int bag_sno = 0;
|
|
foreach (DataRow row in dt.Rows)
|
|
{
|
|
str.Append("<tr>");
|
|
str.Append("<td align=\"center\" style=\"border=\"0\";\" nowrap='nowrap'>" + (++bag_sno).ToString() + "</td>");
|
|
for (int i = 0; i < cols; i++)
|
|
{
|
|
if (i > 0 && i < cols)
|
|
{
|
|
double currVal;
|
|
double.TryParse(row[i].ToString(), out currVal);
|
|
sum[i] += currVal;
|
|
}
|
|
|
|
if (i == 1)
|
|
{
|
|
str.Append("<td align=\"center\"><b><a href=\"#\" onclick=\"OpenInNewWindow('" +
|
|
GetStatic.GetUrlRoot() +
|
|
"/Remit/Transaction/Reports/UserWiseTran/SearchUserWise.aspx?reportName=detail&flag=s&fromDate=" +
|
|
GetFromDate() + "&toDate=" + GetToDate() + "&userName=" + row["User Name"] + "&agentId=" + GetStatic.GetAgentId() + "')\">" + row[i].ToString() + "</a></b></td>");
|
|
//str.Append("<td align = 'center'>" + row[i].ToString() + "</td>");
|
|
}
|
|
else if (i == 3)
|
|
{
|
|
str.Append("<td align=\"center\"><b><a href=\"#\" onclick=\"OpenInNewWindow('" + GetStatic.GetUrlRoot() + "/Remit/Transaction/Reports/UserWiseTran/SearchUserWise.aspx?reportName=detail&flag=p&fromDate=" + GetFromDate() + "&toDate=" + GetToDate() + "&userName=" + row["User Name"] + "&agentId=" + GetStatic.GetAgentId() + "')\">" + row[i].ToString() + "</a></b></td>");
|
|
//str.Append("<td align = 'center'>" + row[i].ToString() + "</td>");
|
|
}
|
|
else if (i == 2 || i == 4)
|
|
{
|
|
str.Append("<td align = 'right'>" + GetStatic.ParseMinusValue(GetStatic.ParseDouble(row[i].ToString())) + "</td>");
|
|
}
|
|
else
|
|
{
|
|
str.Append("<td align = 'left'>" + row[i].ToString() + "</td>");
|
|
}
|
|
}
|
|
str.Append("</tr>");
|
|
}
|
|
str.Append("<tr>");
|
|
str.Append("<td align=\"center\" colspan='2'><b>Total</b></td>");
|
|
for (int i = 1; i < cols; i++)
|
|
{
|
|
if (i == 1 || i == 3)
|
|
{
|
|
str.Append("<td align=\"center\"><b>" + sum[i].ToString() + "</b></td>");
|
|
}
|
|
else
|
|
{
|
|
str.Append("<td align = 'right'><b>" + GetStatic.ParseMinusValue(GetStatic.ParseDouble(sum[i].ToString())) + "</b></td>");
|
|
}
|
|
}
|
|
str.Append("</tr>");
|
|
}
|
|
else
|
|
{
|
|
str.Append("<tr>");
|
|
str.Append("<td colspan = '" + cols + "'><center><b>No Record Found!</b></center></td>");
|
|
str.Append("</tr>");
|
|
}
|
|
rptDiv.InnerHtml = str.ToString();
|
|
}
|
|
private void ShowUserWiseTranDetail()
|
|
{
|
|
var ds = _rptDao.GetUserWiseTransactionReport(GetFlag(), GetStatic.GetUser(), GetFromDate(), GetToDate(), GetAgentId(), GetUserName());
|
|
var dt = ds.Tables[0];
|
|
var filter = ds.Tables[2];
|
|
var reportHead = ds.Tables[3];
|
|
|
|
PrintFilter(ref filter);
|
|
PrintHead(ref reportHead);
|
|
int cols = dt.Columns.Count;
|
|
|
|
double[] sum = new double[cols];
|
|
|
|
StringBuilder str = new StringBuilder("<table class='table table-responsive table-bordered table-striped' ");
|
|
str.Append("<tr>");
|
|
str.AppendLine("<th>S.N.</th>");
|
|
for (int i = 0; i < cols; i++)
|
|
{
|
|
str.AppendLine("<th align=\"left\">" + dt.Columns[i].ColumnName + "</th>");
|
|
}
|
|
str.AppendLine("</tr>");
|
|
if (dt.Rows.Count > 0)
|
|
{
|
|
int bag_sno = 0;
|
|
foreach (DataRow row in dt.Rows)
|
|
{
|
|
str.Append("<tr>");
|
|
str.Append("<td align=\"center\" style=\"border=\"0\";\" nowrap='nowrap'>" + (++bag_sno).ToString() + "</td>");
|
|
for (int i = 0; i < cols; i++)
|
|
{
|
|
str.Append("<td align = 'left'>" + row[i].ToString() + "</td>");
|
|
}
|
|
str.Append("</tr>");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
str.Append("<tr>");
|
|
str.Append("<td colspan = '" + cols + "'><center><b>No Record Found!</b></center></td>");
|
|
str.Append("</tr>");
|
|
}
|
|
rptDiv.InnerHtml = str.ToString();
|
|
}
|
|
}
|
|
}
|