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.

153 lines
7.6 KiB

  1. using System.Data;
  2. using Swift.DAL.SwiftDAL;
  3. namespace Swift.DAL.BL.Remit.ExchangeRate
  4. {
  5. public class SpExRateDao : SwiftDao
  6. {
  7. public DbResult Update(string user, string spExRateId, string cCountry, string cAgent, string cAgentGroup, string cBranch, string cBranchGroup,
  8. string pCountry, string pAgent, string pAgentGroup, string pBranch, string pBranchGroup, string cCurrency, string pCurrency,
  9. string cRateFactor, string pRateFactor, string cRate, string pRate, string cCurrHOMargin, string pCurrHOMargin, string cCurrAgentMargin, string pCurrAgentMargin,
  10. string cHOTolMax, string cHOTolMin, string pHOTolMax, string pHOTolMin,
  11. string cAgentTolMax, string cAgentTolMin, string pAgentTolMax, string pAgentTolMin, string crossRate, string crossRateFactor, string effectiveFrom, string effectiveTo)
  12. {
  13. var sql = "EXEC proc_spExRate";
  14. sql += " @flag = " + (spExRateId == "0" || spExRateId == "" ? "'i'" : "'u'");
  15. sql += ", @user = " + FilterString(user);
  16. sql += ", @spExRateId = " + FilterString(spExRateId);
  17. sql += ", @cCountry = " + FilterString(cCountry);
  18. sql += ", @cAgent = " + FilterString(cAgent);
  19. sql += ", @cAgentGroup = " + FilterString(cAgentGroup);
  20. sql += ", @cBranch = " + FilterString(cBranch);
  21. sql += ", @cBranchGroup = " + FilterString(cBranchGroup);
  22. sql += ", @pCountry = " + FilterString(pCountry);
  23. sql += ", @pAgent = " + FilterString(pAgent);
  24. sql += ", @pAgentGroup = " + FilterString(pAgentGroup);
  25. sql += ", @pBranch = " + FilterString(pBranch);
  26. sql += ", @pBranchGroup = " + FilterString(pBranchGroup);
  27. sql += ", @cCurrency = " + FilterString(cCurrency);
  28. sql += ", @pCurrency = " + FilterString(pCurrency);
  29. sql += ", @cRateFactor = " + FilterString(cRateFactor);
  30. sql += ", @pRateFactor = " + FilterString(pRateFactor);
  31. sql += ", @cRate = " + FilterString(cRate);
  32. sql += ", @pRate = " + FilterString(pRate);
  33. sql += ", @cCurrHOMargin = " + FilterString(cCurrHOMargin);
  34. sql += ", @pCurrHOMargin = " + FilterString(pCurrHOMargin);
  35. sql += ", @cCurrAgentMargin = " + FilterString(cCurrAgentMargin);
  36. sql += ", @pCurrAgentMargin = " + FilterString(pCurrAgentMargin);
  37. sql += ", @cHOTolMax = " + FilterString(cHOTolMax);
  38. sql += ", @cHoTolMin = " + FilterString(cHOTolMin);
  39. sql += ", @pHOTolMax = " + FilterString(pHOTolMax);
  40. sql += ", @pHoTolMin = " + FilterString(pHOTolMin);
  41. sql += ", @cAgentTolMax = " + FilterString(cAgentTolMax);
  42. sql += ", @cAgentTolMin = " + FilterString(cAgentTolMin);
  43. sql += ", @pAgentTolMax = " + FilterString(pAgentTolMax);
  44. sql += ", @pAgentTolMin = " + FilterString(pAgentTolMin);
  45. sql += ", @crossRate = " + FilterString(crossRate);
  46. sql += ", @effectiveFrom = " + FilterString(effectiveFrom);
  47. sql += ", @effectiveTo = " + FilterString(effectiveTo);
  48. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  49. }
  50. public DbResult Delete(string user, string spExRateId)
  51. {
  52. var sql = "EXEC proc_spExRate";
  53. sql += " @flag = 'd'";
  54. sql += ", @user = " + FilterString(user);
  55. sql += ", @spExRateId = " + FilterString(spExRateId);
  56. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  57. }
  58. public DataRow SelectById(string user, string spExRateId)
  59. {
  60. var sql = "EXEC proc_spExRate";
  61. sql += " @flag = 'a'";
  62. sql += ", @user = " + FilterString(user);
  63. sql += ", @spExRateId = " + FilterString(spExRateId);
  64. var ds = ExecuteDataset(sql);
  65. if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
  66. return null;
  67. return ds.Tables[0].Rows[0];
  68. }
  69. public DataRow SelectCurrencyRate(string user, string tranType, string currency, string country, string agent, string rateType)
  70. {
  71. var sql = "EXEC proc_spExRate";
  72. sql += " @flag = 'cr'";
  73. sql += ", @user = " + FilterString(user);
  74. sql += ", @tranType = " + FilterString(tranType);
  75. sql += ", @currency = " + FilterString(currency);
  76. sql += ", @country = " + FilterString(country);
  77. sql += ", @agent = " + FilterString(agent);
  78. sql += ", @rateType = " + FilterString(rateType);
  79. var ds = ExecuteDataset(sql);
  80. if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
  81. return null;
  82. return ds.Tables[0].Rows[0];
  83. }
  84. public DataSet LoadGrid(string user, string sortBy, string sortOrder, string pageSize, string pageNumber, string currency, string country, string agent)
  85. {
  86. var sql = "EXEC proc_spExRate @flag = 's'";
  87. sql += ", @user = " + FilterString(user);
  88. sql += ", @sortBy = " + FilterString(sortBy);
  89. sql += ", @sortOrder = " + FilterString(sortOrder);
  90. sql += ", @pageSize = " + FilterString(pageSize);
  91. sql += ", @pageNumber = " + FilterString(pageNumber);
  92. sql += ", @cCurrency = " + FilterString(currency);
  93. sql += ", @cCountryName = " + FilterString(country);
  94. sql += ", @cAgentName = " + FilterString(agent);
  95. return ExecuteDataset(sql);
  96. }
  97. public DataSet LoadGridApprove(string user, string setupType, string pageNumber, string pageSize,
  98. string sortBy, string sortOrder, string hasChanged, string currency, string country, string agent)
  99. {
  100. var sql = "EXEC proc_spExRate @flag = 'm'";
  101. sql += ", @user = " + FilterString(user);
  102. sql += ", @sortBy = " + FilterString(sortBy);
  103. sql += ", @sortOrder = " + FilterString(sortOrder);
  104. sql += ", @pageSize = " + FilterString(pageSize);
  105. sql += ", @pageNumber = " + FilterString(pageNumber);
  106. sql += ", @cCurrency = " + FilterString(currency);
  107. sql += ", @cCountryName = " + FilterString(country);
  108. sql += ", @cAgentName = " + FilterString(agent);
  109. return ExecuteDataset(sql);
  110. }
  111. public DbResult Approve(string user, string defExRateIds)
  112. {
  113. var sql = "EXEC proc_spExRate @flag = 'approve'";
  114. sql += ", @user = " + FilterString(user);
  115. sql += ", @spExRateIds = " + FilterString(defExRateIds);
  116. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  117. }
  118. public DbResult Reject(string user, string defExRateIds)
  119. {
  120. var sql = "EXEC proc_spExRate @flag = 'reject'";
  121. sql += ", @user = " + FilterString(user);
  122. sql += ", @spExRateIds = " + FilterString(defExRateIds);
  123. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  124. }
  125. public DataRow SelectRateMask(string user, string currency, string factor)
  126. {
  127. var sql = "EXEC proc_defExRate";
  128. sql += " @flag = 'rateMask'";
  129. sql += ", @user = " + FilterString(user);
  130. sql += ", @currency = " + FilterString(currency);
  131. sql += ", @factor = " + FilterString(factor);
  132. var ds = ExecuteDataset(sql);
  133. if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
  134. return null;
  135. return ds.Tables[0].Rows[0];
  136. }
  137. }
  138. }