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.

114 lines
3.5 KiB

  1. using Swift.DAL.OtherServices;
  2. using Swift.web.Library;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Data;
  6. using System.Threading;
  7. using System.Web.Script.Serialization;
  8. namespace Swift.web.OtherServices.LuckyDraw
  9. {
  10. public partial class DoLuckyDraw : System.Web.UI.Page
  11. {
  12. private const string ViewFunctionId = "20174100";
  13. private LuckyDrawDao db = new LuckyDrawDao();
  14. private readonly SwiftLibrary sl = new SwiftLibrary();
  15. protected void Page_Load(object sender, EventArgs e)
  16. {
  17. string reqMethod = Request.Form["MethodName"];
  18. if (!IsPostBack)
  19. {
  20. hdnType.Value = GetStatic.ReadQueryString("type", "").ToLower();
  21. GetImage();
  22. if (reqMethod == "StartLuckydraw")
  23. {
  24. Thread.Sleep(3000);
  25. GetNumber();
  26. }
  27. Authenticate();
  28. }
  29. }
  30. private void Authenticate()
  31. {
  32. sl.CheckAuthentication(ViewFunctionId);
  33. }
  34. private void GetImage()
  35. {
  36. //var dr = db.GetLuckyDrawType(hdnType.Value);
  37. //if (null == dr)
  38. //{
  39. // main.Visible = false;
  40. // GetStatic.AlertMessage(Page, "Lucky Draw is Not Setup.Please First Set Up the Lucky Draw!!");
  41. // divDetails.Visible = false;
  42. // return;
  43. //}
  44. var root = GetStatic.GetUrlRoot();
  45. mainImage.ImageUrl = GetStatic.GetUrlRoot() + "/Images/luckydraw/daily-start.jpg";
  46. //if (dr["luckyDrawType"].ToString() == "Sender_Daily")
  47. //{
  48. // mainImage.ImageUrl = GetStatic.GetUrlRoot() + "/Images/luckydraw/daily-start.jpg";
  49. //}
  50. //else
  51. //{
  52. // divDetails.Visible = false;
  53. //}
  54. }
  55. private void Start()
  56. {
  57. GetNumber();
  58. }
  59. private void GetNumber()
  60. {
  61. var flag = GetStatic.ReadFormData("flag", "");
  62. var dr = db.GetLuckyNumber(flag, GetStatic.GetUser());
  63. if (null == dr)
  64. {
  65. Response.Write("");
  66. Response.End();
  67. return;
  68. }
  69. var json = DataTableToJson(dr);
  70. //var dic = new Dictionary<string, string>();
  71. //foreach (DataColumn col in dr.Columns)
  72. //{
  73. // dic.Add(col.ColumnName, dr[col].ToString());
  74. //}
  75. //var sb = new StringBuilder();
  76. //new JavaScriptSerializer().Serialize(dic, sb);
  77. Response.ContentType = "text/plain";
  78. //var json = sb.ToString();
  79. Response.Write(json);
  80. Response.End();
  81. }
  82. public static string DataTableToJson(DataTable table)
  83. {
  84. if (table == null)
  85. return "";
  86. var list = new List<Dictionary<string, object>>();
  87. foreach (DataRow row in table.Rows)
  88. {
  89. var dict = new Dictionary<string, object>();
  90. foreach (DataColumn col in table.Columns)
  91. {
  92. dict[col.ColumnName] = string.IsNullOrEmpty(row[col].ToString()) ? "" : row[col];
  93. }
  94. list.Add(dict);
  95. }
  96. var serializer = new JavaScriptSerializer();
  97. string json = serializer.Serialize(list);
  98. return json;
  99. }
  100. }
  101. }