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.
263 lines
12 KiB
263 lines
12 KiB
using Swift.DAL.Remittance.Partner;
|
|
using Swift.web.Library;
|
|
using System;
|
|
using System.Data;
|
|
using System.Text;
|
|
|
|
namespace Swift.web.Remit.AgeingReport
|
|
{
|
|
public partial class ReceivablesAgeing : System.Web.UI.Page
|
|
{
|
|
protected PartnerDao _dao = new PartnerDao();
|
|
private readonly SwiftLibrary sl = new SwiftLibrary();
|
|
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
sl.CheckSession();
|
|
if (!IsPostBack)
|
|
{
|
|
PopulateReport1();
|
|
}
|
|
}
|
|
|
|
private void PopulateReport()
|
|
{
|
|
string asOnDate = GetStatic.ReadQueryString("asOnDate", "");
|
|
|
|
DataSet ds = _dao.GetAgentAgeingReport(GetStatic.GetUser(), asOnDate);
|
|
|
|
if (ds == null)
|
|
{
|
|
return;
|
|
}
|
|
|
|
DataTable drTbl = ds.Tables[1];
|
|
DataTable crTbl = ds.Tables[0];
|
|
|
|
int sNo = 0;
|
|
string accNum = "";
|
|
double belowFourDaysTotal = 0;
|
|
double overFourDaysTotal = 0;
|
|
double overOneMonthTotal = 0;
|
|
double overThreeMonthTotal = 0;
|
|
double overSixMonthTotal = 0;
|
|
double outStandingTotal = 0;
|
|
StringBuilder sb = new StringBuilder();
|
|
foreach (DataRow item in drTbl.Rows)
|
|
{
|
|
sNo++;
|
|
accNum = item["ACCOUNT_NUMBER"].ToString();
|
|
DataRow[] rows = crTbl.Select("ACC_NUM = ('" + accNum + "')");
|
|
double[] amt = GetAmountArray(item, GetDoubleValue(rows[0][0].ToString()));
|
|
if (amt[0] != 0)
|
|
{
|
|
sb.AppendLine("<tr>");
|
|
sb.AppendLine("<td>" + sNo.ToString() + "</td>");
|
|
sb.AppendLine("<td>" + item["AGENT_NAME"].ToString() + "</td>");
|
|
sb.AppendLine("<td align='right'>" + GetStatic.GetNegativeFigureOnBrac((amt[0]).ToString()) + "</td>");
|
|
sb.AppendLine("<td align='right'>" + GetStatic.GetNegativeFigureOnBrac((amt[1]).ToString()) + "</td>");
|
|
sb.AppendLine("<td align='right'>" + GetStatic.GetNegativeFigureOnBrac((amt[2]).ToString()) + "</td>");
|
|
sb.AppendLine("<td align='right'>" + GetStatic.GetNegativeFigureOnBrac((amt[3]).ToString()) + "</td>");
|
|
sb.AppendLine("<td align='right'>" + GetStatic.GetNegativeFigureOnBrac((amt[4]).ToString()) + "</td>");
|
|
sb.AppendLine("<td align='right'>" + GetStatic.GetNegativeFigureOnBrac((amt[5]).ToString()) + "</td>");
|
|
sb.AppendLine("</tr>");
|
|
|
|
outStandingTotal += (amt[0]);
|
|
belowFourDaysTotal += (amt[1]);
|
|
overFourDaysTotal += (amt[2]);
|
|
overOneMonthTotal += (amt[3]);
|
|
overThreeMonthTotal += (amt[4]);
|
|
overSixMonthTotal += (amt[5]);
|
|
}
|
|
}
|
|
sb.AppendLine("<tr>");
|
|
sb.AppendLine("<td align='right' colspan='2'><b>Grand Total</b></td>");
|
|
sb.AppendLine("<td align='right'><b>" + GetStatic.GetNegativeFigureOnBrac(outStandingTotal.ToString()) + "</b></td>");
|
|
sb.AppendLine("<td align='right'><b>" + GetStatic.GetNegativeFigureOnBrac(belowFourDaysTotal.ToString()) + "</b></td>");
|
|
sb.AppendLine("<td align='right'><b>" + GetStatic.GetNegativeFigureOnBrac(overFourDaysTotal.ToString()) + "</b></td>");
|
|
sb.AppendLine("<td align='right'><b>" + GetStatic.GetNegativeFigureOnBrac(overOneMonthTotal.ToString()) + "</b></td>");
|
|
sb.AppendLine("<td align='right'><b>" + GetStatic.GetNegativeFigureOnBrac(overThreeMonthTotal.ToString()) + "</b></td>");
|
|
sb.AppendLine("<td align='right'><b>" + GetStatic.GetNegativeFigureOnBrac(overSixMonthTotal.ToString()) + "</b></td>");
|
|
sb.AppendLine("</tr>");
|
|
ageingRptBody.InnerHtml = sb.ToString();
|
|
}
|
|
|
|
private void PopulateReport1()
|
|
{
|
|
string asOnDate = GetStatic.ReadQueryString("asOnDate", "");
|
|
|
|
DataSet ds = _dao.GetAgentAgeingReport(GetStatic.GetUser(), asOnDate);
|
|
|
|
if (ds == null)
|
|
{
|
|
return;
|
|
}
|
|
|
|
DataTable drTbl = ds.Tables[1];
|
|
DataTable crTbl = ds.Tables[0];
|
|
|
|
int sNo = 0;
|
|
string accNum = "";
|
|
double belowFourDaysTotal = 0;
|
|
double overFourDaysTotal = 0;
|
|
double overOneMonthTotal = 0;
|
|
double overThreeMonthTotal = 0;
|
|
double overSixMonthTotal = 0;
|
|
double outStandingTotal = 0;
|
|
double below100Days = 0;
|
|
double over100Days = 0;
|
|
StringBuilder sb = new StringBuilder();
|
|
foreach (DataRow item in drTbl.Rows)
|
|
{
|
|
sNo++;
|
|
accNum = item["ACCOUNT_NUMBER"].ToString();
|
|
DataRow[] rows = crTbl.Select("ACC_NUM = ('" + accNum + "')");
|
|
double[] amt = GetAmountArray(item, GetDoubleValue(rows[0][0].ToString()));
|
|
double[] amt100Days = GetAmountArrayFor100Days(item, GetDoubleValue(rows[0][0].ToString()));
|
|
if (amt[0] != 0)
|
|
{
|
|
sb.AppendLine("<tr>");
|
|
sb.AppendLine("<td>" + sNo.ToString() + "</td>");
|
|
sb.AppendLine("<td>" + item["AGENT_NAME"].ToString() + "</td>");
|
|
sb.AppendLine("<td align='right'>" + GetStatic.GetNegativeFigureOnBrac((amt[0]).ToString()) + "</td>");
|
|
sb.AppendLine("<td align='right'>" + GetStatic.GetNegativeFigureOnBrac((amt[1]).ToString()) + "</td>");
|
|
sb.AppendLine("<td align='right'>" + GetStatic.GetNegativeFigureOnBrac((amt[2]).ToString()) + "</td>");
|
|
sb.AppendLine("<td align='right'>" + GetStatic.GetNegativeFigureOnBrac((amt[3]).ToString()) + "</td>");
|
|
sb.AppendLine("<td align='right'>" + GetStatic.GetNegativeFigureOnBrac((amt[4]).ToString()) + "</td>");
|
|
sb.AppendLine("<td align='right'>" + GetStatic.GetNegativeFigureOnBrac((amt[5]).ToString()) + "</td>");
|
|
sb.AppendLine("<td align='right'>" + GetStatic.GetNegativeFigureOnBrac((amt100Days[1]).ToString()) + "</td>");
|
|
sb.AppendLine("<td align='right'>" + GetStatic.GetNegativeFigureOnBrac((amt100Days[2]).ToString()) + "</td>");
|
|
sb.AppendLine("</tr>");
|
|
|
|
outStandingTotal += (amt[0]);
|
|
belowFourDaysTotal += (amt[1]);
|
|
overFourDaysTotal += (amt[2]);
|
|
overOneMonthTotal += (amt[3]);
|
|
overThreeMonthTotal += (amt[4]);
|
|
overSixMonthTotal += (amt[5]);
|
|
|
|
below100Days += amt100Days[1];
|
|
over100Days += amt100Days[2];
|
|
}
|
|
}
|
|
sb.AppendLine("<tr>");
|
|
sb.AppendLine("<td align='right' colspan='2'><b>Grand Total</b></td>");
|
|
sb.AppendLine("<td align='right'><b>" + GetStatic.GetNegativeFigureOnBrac(outStandingTotal.ToString()) + "</b></td>");
|
|
sb.AppendLine("<td align='right'><b>" + GetStatic.GetNegativeFigureOnBrac(belowFourDaysTotal.ToString()) + "</b></td>");
|
|
sb.AppendLine("<td align='right'><b>" + GetStatic.GetNegativeFigureOnBrac(overFourDaysTotal.ToString()) + "</b></td>");
|
|
sb.AppendLine("<td align='right'><b>" + GetStatic.GetNegativeFigureOnBrac(overOneMonthTotal.ToString()) + "</b></td>");
|
|
sb.AppendLine("<td align='right'><b>" + GetStatic.GetNegativeFigureOnBrac(overThreeMonthTotal.ToString()) + "</b></td>");
|
|
sb.AppendLine("<td align='right'><b>" + GetStatic.GetNegativeFigureOnBrac(overSixMonthTotal.ToString()) + "</b></td>");
|
|
sb.AppendLine("<td align='right'><b>" + GetStatic.GetNegativeFigureOnBrac(below100Days.ToString()) + "</b></td>");
|
|
sb.AppendLine("<td align='right'><b>" + GetStatic.GetNegativeFigureOnBrac(over100Days.ToString()) + "</b></td>");
|
|
sb.AppendLine("</tr>");
|
|
ageingRptBody.InnerHtml = sb.ToString();
|
|
}
|
|
|
|
private double[] GetAmountArrayFor100Days(DataRow item, double crAmount)
|
|
{
|
|
double[] amt = new double[3];
|
|
|
|
amt[0] = GetDoubleValue(item["TOTAL_OUT_STANDING"].ToString()) - crAmount;
|
|
crAmount = GetDoubleValue(item["OVER_100_DAYS"].ToString()) - crAmount;
|
|
if (crAmount < 0)
|
|
{
|
|
amt[2] = 0;
|
|
amt[1] = GetDoubleValue(item["BELOW_100_DAYS"].ToString()) + crAmount;
|
|
}
|
|
else
|
|
{
|
|
amt[2] = crAmount;
|
|
amt[1] = GetDoubleValue(item["BELOW_100_DAYS"].ToString());
|
|
}
|
|
|
|
//if (GetDoubleValue(item["OVER_100_DAYS"].ToString()) < crAmount)
|
|
//{
|
|
// amt[2] = 0;
|
|
// amt[1] = GetDoubleValue(item["BELOW_100_DAYS"].ToString()) - crAmount;
|
|
//}
|
|
//else
|
|
//{
|
|
// amt[2] = GetDoubleValue(item["OVER_100_DAYS"].ToString()) - crAmount;
|
|
// amt[1] = GetDoubleValue(item["BELOW_100_DAYS"].ToString());
|
|
//}
|
|
|
|
return amt;
|
|
}
|
|
|
|
private double[] GetAmountArray(DataRow item, double crAmount)
|
|
{
|
|
double[] amt = new double[6];
|
|
|
|
amt[0] = GetDoubleValue(item["TOTAL_OUT_STANDING"].ToString()) - crAmount;
|
|
if (GetDoubleValue(item["OVER_SIX_MONTH"].ToString()) < crAmount)
|
|
{
|
|
crAmount = GetDoubleValue(item["OVER_SIX_MONTH"].ToString()) - crAmount;
|
|
if (crAmount < 0)
|
|
{
|
|
amt[5] = 0;
|
|
crAmount = GetDoubleValue(item["OVER_THREE_MONTH"].ToString()) + crAmount;
|
|
if (crAmount < 0)
|
|
{
|
|
amt[4] = 0;
|
|
crAmount = GetDoubleValue(item["OVER_ONE_MONTH"].ToString()) + crAmount;
|
|
if (crAmount < 0)
|
|
{
|
|
amt[3] = 0;
|
|
crAmount = GetDoubleValue(item["OVER_FOUR_DAYS"].ToString()) + crAmount;
|
|
if (crAmount < 0)
|
|
{
|
|
amt[2] = 0;
|
|
amt[1] = GetDoubleValue(item["BELOW_FOUR_DAYS"].ToString()) + crAmount;
|
|
}
|
|
else
|
|
{
|
|
amt[2] = crAmount;
|
|
amt[1] = GetDoubleValue(item["BELOW_FOUR_DAYS"].ToString());
|
|
}
|
|
}
|
|
else
|
|
{
|
|
amt[3] = crAmount;
|
|
amt[2] = GetDoubleValue(item["OVER_FOUR_DAYS"].ToString());
|
|
amt[1] = GetDoubleValue(item["BELOW_FOUR_DAYS"].ToString());
|
|
}
|
|
|
|
}
|
|
else
|
|
{
|
|
amt[4] = crAmount;
|
|
amt[3] = GetDoubleValue(item["OVER_ONE_MONTH"].ToString());
|
|
amt[2] = GetDoubleValue(item["OVER_FOUR_DAYS"].ToString());
|
|
amt[1] = GetDoubleValue(item["BELOW_FOUR_DAYS"].ToString());
|
|
}
|
|
}
|
|
else
|
|
{
|
|
amt[4] = crAmount;
|
|
amt[3] = GetDoubleValue(item["OVER_THREE_MONTH"].ToString());
|
|
amt[2] = GetDoubleValue(item["OVER_ONE_MONTH"].ToString());
|
|
amt[2] = GetDoubleValue(item["OVER_FOUR_DAYS"].ToString());
|
|
amt[1] = GetDoubleValue(item["BELOW_FOUR_DAYS"].ToString());
|
|
}
|
|
}
|
|
else
|
|
{
|
|
amt[5] = GetDoubleValue(item["OVER_SIX_MONTH"].ToString()) - crAmount;
|
|
amt[4] = GetDoubleValue(item["OVER_THREE_MONTH"].ToString());
|
|
amt[3] = GetDoubleValue(item["OVER_ONE_MONTH"].ToString());
|
|
amt[2] = GetDoubleValue(item["OVER_FOUR_DAYS"].ToString());
|
|
amt[1] = GetDoubleValue(item["BELOW_FOUR_DAYS"].ToString());
|
|
}
|
|
|
|
return amt;
|
|
}
|
|
|
|
public double GetDoubleValue(string inPutVal)
|
|
{
|
|
double outPut = 0;
|
|
Double.TryParse(inPutVal, out outPut);
|
|
return outPut;
|
|
}
|
|
}
|
|
}
|