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.

124 lines
5.6 KiB

  1. using System.Data;
  2. using Swift.DAL.SwiftDAL;
  3. using System.Text;
  4. namespace Swift.DAL.BL.Remit.AgentRating
  5. {
  6. public class AgentRatingDao : RemittanceDao
  7. {
  8. public DbResult SaveAgentForRating(string user, string agentId, string agentType, string fromDate, string toDate)
  9. {
  10. string sql = "EXEC proc_agentRating";
  11. sql += " @flag = 'i'";
  12. sql += ", @user = " + FilterString(user);
  13. sql += ", @agentId = " + FilterString(agentId);
  14. sql += ", @agentType = " + FilterString(agentType);
  15. sql += ", @fromDate = " + FilterString(fromDate);
  16. sql += ", @toDate = " + FilterString(toDate);
  17. sql += ", @isActive='Y'";
  18. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  19. }
  20. public DataSet ratingCriteria(string user, string agentId, string agentType, string arDetailId)
  21. {
  22. string sql = "EXEC proc_agentRating";
  23. sql += " @flag = 'rc'";
  24. sql += ", @user = " + FilterString(user);
  25. sql += ", @agentId = " + FilterString(agentId);
  26. sql += ", @arDetailId = " + FilterString(arDetailId);
  27. sql += ", @agentType = " + FilterString(agentType);
  28. DataSet ds = ExecuteDataset(sql);
  29. if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
  30. return null;
  31. return ds;
  32. }
  33. public DataSet ratingCriteriaPreview(string user, string agentId, string agentType, string arDetailId, string actionType)
  34. {
  35. var flag = (actionType == "preview" || actionType == "rating") ? "rc-preview" : "rc";
  36. string sql = "EXEC proc_agentRating";
  37. sql += " @flag = " + FilterString(flag);
  38. sql += ", @user = " + FilterString(user);
  39. sql += ", @agentId = " + FilterString(agentId);
  40. sql += ", @arDetailId = " + FilterString(arDetailId);
  41. sql += ", @agentType = " + FilterString(agentType);
  42. DataSet ds = ExecuteDataset(sql);
  43. if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
  44. return null;
  45. return ds;
  46. }
  47. public DataSet SaveAgentRating(string user, StringBuilder sb, string agentId, string agentType, string arDetailId, string isRatingCompleted, string ratingComment, string ratingBy)
  48. {
  49. string sql = "EXEC proc_agentRating @flag='i-ar'";
  50. sql = sql + " ,@user=" + FilterString(user);
  51. sql = sql + ", @agentId=" + FilterString(agentId);
  52. sql = sql + ", @agentType=" + FilterString(agentType);
  53. sql = sql + ", @arDetailId=" + FilterString(arDetailId);
  54. sql = sql + ", @isRatingCompleted=" + FilterString(isRatingCompleted);
  55. sql = sql + " ,@ratingComment=" + FilterString(ratingComment);
  56. sql = sql + " ,@ratingBy=" + FilterString(ratingBy);
  57. sql = sql + ", @xml='" + sb + "'";
  58. return ExecuteDataset(sql);
  59. }
  60. public DbResult SaveRatingSummary(string user, StringBuilder sb, string arDetailId, string agentType)
  61. {
  62. string sql = "EXEC proc_agentRating @flag = 'summary'";
  63. sql = sql + " ,@user=" + FilterString(user);
  64. sql = sql + ", @arDetailId=" + FilterString(arDetailId);
  65. sql = sql + ", @agentType=" + FilterString(agentType);
  66. sql = sql + ", @xml='" + sb + "'";
  67. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  68. }
  69. public DbResult SaveRatingReview(string user, string reviewerComment, string arDetailId)
  70. {
  71. string sql = "EXEC proc_agentRating @flag = 'review'";
  72. sql = sql + " ,@user=" + FilterString(user);
  73. sql = sql + " ,@reviewerComment=" + FilterString(reviewerComment);
  74. sql = sql + ", @arDetailId=" + FilterString(arDetailId);
  75. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  76. }
  77. public DbResult SaveAgentComment(string user, string comment, string arDetailId)
  78. {
  79. string sql = "EXEC proc_agentRating @flag = 'agentcomment'";
  80. sql = sql + " ,@user=" + FilterString(user);
  81. sql = sql + " ,@ratingComment=" + FilterString(comment);
  82. sql = sql + ", @arDetailId=" + FilterString(arDetailId);
  83. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  84. }
  85. public DbResult ApproveAgentRating(string user, string approverComment, string arDetailId)
  86. {
  87. string sql = "EXEC proc_agentRating @flag = 'approve'";
  88. sql = sql + " ,@user=" + FilterString(user);
  89. sql = sql + " ,@approverComment=" + FilterString(approverComment);
  90. sql = sql + ", @arDetailId=" + FilterString(arDetailId);
  91. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  92. }
  93. public DbResult InactiveAgentRating(string user, string arDetailId, string agentId)
  94. {
  95. string sql = "EXEC proc_agentRating";
  96. sql += " @flag = 'inactive'";
  97. sql += ", @user = " + FilterString(user);
  98. sql += ", @arDetailId = " + FilterString(arDetailId);
  99. sql += ", @agentId = " + FilterString(agentId);
  100. sql += ", @isActive='N'";
  101. return ParseDbResult(ExecuteDataset(sql).Tables[0]);
  102. }
  103. public DataTable GetAgentRatingInformation(string user, string ratingId)
  104. {
  105. string sql = "EXEC proc_agentRating";
  106. sql += " @flag = 'getArInfoByArdId'";
  107. sql += ", @user = " + FilterString(user);
  108. sql += ", @ardId = " + FilterString(ratingId);
  109. return ExecuteDataTable(sql);
  110. }
  111. }
  112. }