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.

92 lines
3.6 KiB

  1. using Swift.DAL.AccountReport;
  2. using Swift.DAL.Remittance.CashAndVault;
  3. using Swift.DAL.SwiftDAL;
  4. using Swift.web.Library;
  5. using System;
  6. namespace Swift.web.AgentNew.CashTransfer
  7. {
  8. public partial class Transfer : System.Web.UI.Page
  9. {
  10. private string ViewFunctionId = "20210000";
  11. private readonly RemittanceLibrary _sl = new RemittanceLibrary();
  12. private AccountStatementDAO cavDao = new AccountStatementDAO();
  13. private CashAndVaultDao cashDao = new CashAndVaultDao();
  14. protected void Page_Load(object sender, EventArgs e)
  15. {
  16. Authenticate();
  17. if (!IsPostBack)
  18. {
  19. PopulateDDL();
  20. Misc.MakeNumericTextbox(ref amount);
  21. transferDate.Text = DateTime.Today.ToString("yyyy-MM-dd");
  22. PopulateAvailableBalance();
  23. }
  24. }
  25. private void PopulateAvailableBalance()
  26. {
  27. var row = cashDao.GetBranchCashDetails(GetStatic.GetUser(), GetStatic.GetSettlingAgent(), "limit-detail-a");
  28. availableBalance.Text = GetStatic.ShowDecimal(row["cashAtBranch"].ToString());
  29. }
  30. public void PopulateDDL()
  31. {
  32. string sql = "EXEC PROC_VAULTTRANSFER @flag = 'VAULT-ACC-AGENT', @user = " + _sl.FilterString(GetStatic.GetUser()) + ", @agentId = " + _sl.FilterString(GetStatic.GetSettlingAgent());
  33. _sl.SetDDL(ref fromAccountDDL, sql, "ACCT_NUM", "ACCT_NAME", "", "");
  34. }
  35. private void Authenticate()
  36. {
  37. _sl.CheckAuthentication(ViewFunctionId);
  38. }
  39. protected void transferButton_Click(object sender, EventArgs e)
  40. {
  41. var amountVal = amount.Text;
  42. var tDateVal = transferDate.Text;
  43. var userIdAndAgentId = cashDao.GetUserIdAndBranch(GetStatic.GetUser(), amountVal, "vault");
  44. if (userIdAndAgentId["errorCode"].ToString() != "0")
  45. {
  46. GetStatic.AlertMessage(this, userIdAndAgentId["msg"].ToString());
  47. return;
  48. }
  49. var res = cashDao.TransferFromVault(GetStatic.GetUser(), amountVal, tDateVal, userIdAndAgentId["userId"].ToString()
  50. , userIdAndAgentId["agentId"].ToString(), paymentModeDDL.SelectedValue, fromAccountDDL.SelectedValue, toAccDDL.SelectedValue);
  51. var dbres = new DbResult();
  52. if (paymentModeDDL.SelectedValue != "cv")
  53. {
  54. if (res != null)
  55. {
  56. dbres = _sl.ParseDbResult(res);
  57. }
  58. else
  59. {
  60. dbres.SetError("1", "Error saving data!", "");
  61. }
  62. }
  63. if (res == null && paymentModeDDL.SelectedValue == "cv")
  64. {
  65. dbres.SetError("0", "Transfer to vault saved successfully", "");
  66. }
  67. GetStatic.SetMessage(dbres);
  68. Response.Redirect("CashTransferList.aspx");
  69. }
  70. protected void paymentModeDDL_SelectedIndexChanged(object sender, EventArgs e)
  71. {
  72. string paymentMode = paymentModeDDL.SelectedValue;
  73. if (!string.IsNullOrEmpty(paymentMode))
  74. {
  75. string sql = "EXEC PROC_VAULTTRANSFER @flag = 'VAULT-ADMIN', @AGENTID = " + _sl.FilterString(GetStatic.GetSettlingAgent()) + ", @user = " + _sl.FilterString(GetStatic.GetUser()) + ", @param1 = " + _sl.FilterString(paymentMode);
  76. _sl.SetDDL(ref toAccDDL, sql, "ACCT_NUM", "ACCT_NAME", "", "Select Account");
  77. }
  78. else
  79. {
  80. toAccDDL.Items.Clear();
  81. }
  82. }
  83. }
  84. }