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.

105 lines
3.7 KiB

  1. using Swift.DAL.Treasury;
  2. using Swift.web.Library;
  3. using System;
  4. using System.Data;
  5. using System.Text;
  6. namespace Swift.web.BillVoucher.FundTransfer
  7. {
  8. public partial class Transfer : System.Web.UI.Page
  9. {
  10. private const string ViewFuntionId = "20153000";
  11. private readonly SwiftLibrary _sdd = new SwiftLibrary();
  12. private readonly RemittanceLibrary _sl = new RemittanceLibrary();
  13. private IFundTransferDao _sd = new FundTransferDao();
  14. protected void Page_Load(object sender, EventArgs e)
  15. {
  16. Authenticate();
  17. date.Text = DateTime.Now.ToString("yyyy-MM-dd");
  18. date.Attributes.Add("readonly", "readonly");
  19. _sl.CheckSession();
  20. if (!IsPostBack)
  21. {
  22. PopulateDDL();
  23. }
  24. }
  25. private void Authenticate()
  26. {
  27. _sdd.CheckAuthentication(ViewFuntionId);
  28. }
  29. private void PopulateDDL()
  30. {
  31. _sdd.SetDDL(ref ddlTransferFrom, "EXEC proc_dropDownList @FLAG='BankList'", "RowId", "BankName", "", "Select Bank");
  32. _sdd.SetDDL(ref ddlTransferFundTo, "EXEC proc_dropDownList @FLAG='RPartner'", "rowId", "nameOfPartner", "", "Select Partner");
  33. }
  34. protected void btnSearch_Click(object sender, EventArgs e)
  35. {
  36. var dt = _sd.GetDealSummaryToTransfer(ddlTransferFrom.Text);
  37. if (dt == null)
  38. return;
  39. var ids = GetIds(dt);
  40. var sb = new StringBuilder("<div class='table-responsive'><table class='table table-striped'>");
  41. sb.Append("<thead>");
  42. sb.Append("<tr>");
  43. sb.Append("<th>Bank Name</th>");
  44. sb.Append("<th>Remaining To Transfer</th>");
  45. sb.Append("<th>Transfer Amount</th>");
  46. sb.Append("</tr>");
  47. sb.Append("</thead>");
  48. sb.Append("<tbody>");
  49. foreach (DataRow dr in dt.Rows)
  50. {
  51. sb.Append("<tr>");
  52. sb.Append("<td>" + dr["BankName"] + "</td>");
  53. sb.Append("<td><span id=\"amt_" + dr["BankId"].ToString().Replace(" ", "") + "\">" + GetStatic.ShowDecimal(dr["RemainingtoTransfer"].ToString()) + "</span></td>");
  54. sb.Append("<td><input type=\"text\" name='txt_amt' id=\"txt_" + dr["BankId"].ToString().Replace(" ", "") + "\" onchange=\"Calculate('" + ids + "')\"/>" + "</td>");
  55. sb.Append("</tr>");
  56. }
  57. sb.Append("</tbody>");
  58. sb.Append("</table></div>");
  59. remainToTransfer.InnerHtml = sb.ToString();
  60. }
  61. private string GetIds(DataTable dt)
  62. {
  63. string ids = "";
  64. int i = 0;
  65. foreach (DataRow item in dt.Rows)
  66. {
  67. if (i == 0)
  68. {
  69. ids += item["BankId"].ToString().Replace(" ", "");
  70. }
  71. else
  72. {
  73. ids += "," + item["BankId"].ToString().Replace(" ", "");
  74. }
  75. i++;
  76. }
  77. hdnBankId.Value = ids;
  78. return ids;
  79. }
  80. protected void btnTransfer_Click(object sender, EventArgs e)
  81. {
  82. string tAmt = Request.Form["txt_amt"];
  83. string ids = hdnBankId.Value;
  84. var dbResult = _sd.SaveFundTransfer(ddlTransferFundTo.Text, tAmt, ids, GetStatic.GetUser(), date.Text);
  85. if (dbResult.ErrorCode == "1")
  86. {
  87. GetStatic.AlertMessage(this, dbResult.Msg);
  88. }
  89. else
  90. {
  91. divMsg.Visible = true;
  92. divMsg.InnerHtml = dbResult.Msg;
  93. remainToTransfer.InnerHtml = "";
  94. ddlTransferFundTo.Text = "";
  95. }
  96. }
  97. }
  98. }