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.

180 lines
6.5 KiB

  1. using Swift.DAL.BL.Remit.Transaction.PayTransaction;
  2. using Swift.DAL.BL.Remit.Transaction.ThirdParty;
  3. using Swift.DAL.BL.System.GeneralSettings;
  4. using Swift.DAL.SwiftDAL;
  5. using Swift.web.Library;
  6. using System;
  7. using System.Data;
  8. using System.Text;
  9. using System.Web.Script.Serialization;
  10. namespace Swift.web.AgentPanel.Pay.PayTransaction
  11. {
  12. public partial class PaySearch : System.Web.UI.Page
  13. {
  14. private readonly StaticDataDdl _sdd = new StaticDataDdl();
  15. private readonly PayDao _obj = new PayDao();
  16. private readonly RemittanceLibrary _rl = new RemittanceLibrary();
  17. private const string ViewFunctionId = "40101300";
  18. private const string ProcessFunctionId = "40101310";
  19. private string _partnerId = "";
  20. protected void Page_Load(object sender, EventArgs e)
  21. {
  22. Authenticate();
  23. // _sdd.CheckPayTransactionAllowedTime();
  24. if (!IsPostBack)
  25. {
  26. string reqMethod = Request.Form["MethodName"];
  27. if (string.IsNullOrWhiteSpace(reqMethod))
  28. {
  29. loadDDL();
  30. }
  31. switch (reqMethod)
  32. {
  33. case "search":
  34. SearchTxnPriority();
  35. break;
  36. }
  37. }
  38. PopulatePayoutMessage();
  39. }
  40. private void Authenticate()
  41. {
  42. _sdd.CheckAuthentication(ViewFunctionId + "," + ProcessFunctionId);
  43. }
  44. private void loadDDL()
  45. {
  46. _sdd.SetDDL(ref partner, "EXEC [proc_dropDownLists2] @flag = 'provider'", "value", "text", "", "");
  47. }
  48. private void SearchTxnPriority()
  49. {
  50. var branchId = GetStatic.GetBranch();
  51. var controlNo = Request.Form["controlNo"];
  52. _partnerId = Request.Form["partener"];
  53. var dr = new DbResult();
  54. //if (string.IsNullOrWhiteSpace((_partnerId)))
  55. //{
  56. // var dt = _obj.SearchTxnPriority(GetStatic.GetUser(), controlNo);
  57. // if (dt != null)
  58. // {
  59. // foreach (DataRow row in dt.Rows)
  60. // {
  61. // _partnerId = row["ID"].ToString();
  62. // if (!_partnerId.Contains("IME"))
  63. // {
  64. // dr = GetStatus(_partnerId, controlNo);
  65. // if (dr.ErrorCode.Equals("0"))
  66. // {
  67. // dr.ErrorCode = "1";
  68. // break;
  69. // }
  70. // }
  71. // dr = SelectByPinNo(_partnerId, controlNo, branchId);
  72. // if (dr.ErrorCode.Equals("0"))
  73. // break;
  74. // }
  75. // }
  76. // else
  77. // {
  78. // dr.ErrorCode = "1";
  79. // dr.Msg = "Transaction Not Found.";
  80. // }
  81. //}
  82. //else
  83. //{
  84. // dr = SelectByPinNo(_partnerId, controlNo, branchId);
  85. //}
  86. dr = SelectByPinNo(_partnerId, controlNo, branchId);
  87. dr.Extra2 = _partnerId;
  88. dr.Extra = branchId;
  89. ReturnJson(ref dr);
  90. }
  91. private DbResult GetStatus(string partnerId, string controlNo)
  92. {
  93. return new TransactionUtilityDao().GetTxnStatus(GetStatic.GetUser(), partnerId, controlNo);
  94. }
  95. private DbResult SelectByPinNo(string partnerId, string controlNo, string branchId)
  96. {
  97. if (GetPartnerIdArr(partnerId)[0].Equals("IME-D"))
  98. {
  99. var dbResult = _obj.CheckValidationDom(GetStatic.GetUser(), controlNo, branchId, partnerId);
  100. if (dbResult.ErrorCode.Equals("1"))
  101. _rl.ManageInvalidControlNoAttempt(Page, GetStatic.GetUser(), "N");
  102. if (dbResult.ErrorCode == "1000")
  103. _sdd.ManageInvalidControlNoAttempt(Page, GetStatic.GetUser(), "N");
  104. return dbResult;
  105. }
  106. if (GetPartnerIdArr(partnerId)[0].Equals("IME-I"))
  107. {
  108. var dbResult = _obj.CheckPinValidationIntl(GetStatic.GetUser(), controlNo, branchId, partnerId);
  109. if (dbResult.ErrorCode.Equals("1"))
  110. _rl.ManageInvalidControlNoAttempt(Page, GetStatic.GetUser(), "N");
  111. if (dbResult.ErrorCode == "1000")
  112. _sdd.ManageInvalidControlNoAttempt(Page, GetStatic.GetUser(), "N");
  113. return dbResult;
  114. }
  115. return new DbResult();
  116. }
  117. protected string[] GetPartnerIdArr(string partnerAndSubPartner)
  118. {
  119. if (!string.IsNullOrEmpty(partnerAndSubPartner))
  120. {
  121. return partnerAndSubPartner.Split('|');
  122. }
  123. else
  124. {
  125. return null;
  126. }
  127. }
  128. private void ReturnJson(ref DbResult dr)
  129. {
  130. var json = new JavaScriptSerializer().Serialize(dr);
  131. Response.Write(json);
  132. Response.End();
  133. }
  134. private void PopulatePayoutMessage()
  135. {
  136. var obj = new TxnMessageSettingDao();
  137. var ds = obj.SelectByFlag(GetStatic.GetUser(), "Pay");
  138. if (ds == null)
  139. {
  140. dvContent.Visible = false;
  141. return;
  142. }
  143. if (ds.Tables[0].Rows.Count > 0)
  144. {
  145. var dt = ds.Tables[0];
  146. int cols = dt.Columns.Count;
  147. var str = new StringBuilder("<table class='trnLog' border=\"1\" cellspacing=0 cellpadding=\"3\">");
  148. str.Append("<tr>");
  149. str.Append("<th><div align=\"left\">देश</div></th>");
  150. str.Append("<th><div align=\"left\">&nbsp;</div></th>");
  151. str.Append("<th><div align=\"left\">BRN कोडको विवरण</div></th>");
  152. str.Append("</tr>");
  153. foreach (DataRow dr in dt.Rows)
  154. {
  155. str.Append("<tr>");
  156. for (int i = 0; i < cols - 1; i++)
  157. {
  158. str.Append("<td align=\"left\">" + dr[i].ToString() + "</td>");
  159. }
  160. str.Append("</tr>");
  161. }
  162. str.Append("</table>");
  163. dvContent.InnerHtml = str.ToString();
  164. }
  165. }
  166. }
  167. }