Gpk3Bll.cs 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using CP.Cache;
  7. using CP.Model;
  8. namespace CP.Business
  9. {
  10. public class Gpk3Bll
  11. {
  12. /// <summary>
  13. /// 缓存
  14. /// </summary>
  15. static WMCache cache = WMCache.GetCacheService();
  16. /// <summary>
  17. /// 获取最近多少天数据
  18. /// </summary>
  19. /// <param name="gpenum">高频枚举类型</param>
  20. /// <param name="pagesize">每天的开奖期数</param>
  21. /// <param name="n">多少天</param>
  22. /// <returns></returns>
  23. public static List<Basek3Info> GetList(GPEnum gpenum,int pagesize,int n = 30)
  24. {
  25. string key = $"DATA-{gpenum.ToString()}-{pagesize*n}";
  26. List<Basek3Info> list = cache.GetObject<List<Basek3Info>>(key);
  27. if (list == null)
  28. {
  29. #region 获取数据
  30. switch (gpenum)
  31. {
  32. case GPEnum.fcahk3:
  33. list = Fcahk3Data.GetList(pagesize * n);
  34. break;
  35. case GPEnum.fcbjk3:
  36. list = Fcbjk3Data.GetList(pagesize * n);
  37. break;
  38. case GPEnum.fcfjk3:
  39. list = Fcfjk3Data.GetList(pagesize * n);
  40. break;
  41. case GPEnum.fcgsk3:
  42. list = Fcgsk3Data.GetList(pagesize * n);
  43. break;
  44. case GPEnum.fcgxk3:
  45. list = Fcgxk3Data.GetList(pagesize * n);
  46. break;
  47. case GPEnum.fcgzk3:
  48. list = Fcgzk3Data.GetList(pagesize * n);
  49. break;
  50. case GPEnum.fchnk3:
  51. list = Fchnk3Data.GetList(pagesize * n);
  52. break;
  53. case GPEnum.fchebk3:
  54. list = Fchebk3Data.GetList(pagesize * n);
  55. break;
  56. case GPEnum.fchbk3:
  57. list = Fchbk3Data.GetList(pagesize * n);
  58. break;
  59. case GPEnum.fcjlk3:
  60. list = Fcjlk3Data.GetList(pagesize * n);
  61. break;
  62. case GPEnum.fcjsk3:
  63. list = Fcjsk3Data.GetList(pagesize * n);
  64. break;
  65. case GPEnum.fcjxk3:
  66. list = Fcjxk3Data.GetList(pagesize * n);
  67. break;
  68. case GPEnum.fcnmgk3:
  69. list = Fcnmgk3Data.GetList(pagesize * n);
  70. break;
  71. case GPEnum.fcqhk3:
  72. list = Fcqhk3Data.GetList(pagesize * n);
  73. break;
  74. case GPEnum.fcshk3:
  75. list = Fcshk3Data.GetList(pagesize * n);
  76. break;
  77. }
  78. #endregion
  79. cache.AddObject(key, list, (int)CacheTime.Mintime);
  80. }
  81. return list;
  82. }
  83. /// <summary>
  84. /// 获取指定时间内的数据
  85. /// </summary>
  86. /// <param name="gpenum">枚举</param>
  87. /// <param name="sqi">开始时间</param>
  88. /// <param name="eqi">结束时间</param>
  89. /// <returns></returns>
  90. public static List<Basek3Info> GetDayKjList(GPEnum gpenum,DateTime sqi, DateTime eqi)
  91. {
  92. string key = $"DATA-{gpenum.ToString()}-{sqi}-{eqi}";
  93. List<Basek3Info> list = cache.GetObject<List<Basek3Info>>(key);
  94. if (list == null)
  95. {
  96. #region 获取数据
  97. switch (gpenum)
  98. {
  99. case GPEnum.fcahk3:
  100. list = Fcahk3Data.GetOneDayKjList(sqi, eqi);
  101. break;
  102. case GPEnum.fchebk3:
  103. list = Fchebk3Data.GetOneDayKjList(sqi, eqi);
  104. break;
  105. case GPEnum.fchbk3:
  106. list = Fchbk3Data.GetOneDayKjList(sqi, eqi);
  107. break;
  108. case GPEnum.fcjlk3:
  109. list = Fcjlk3Data.GetOneDayKjList(sqi, eqi);
  110. break;
  111. case GPEnum.fcjsk3:
  112. list = Fcjsk3Data.GetOneDayKjList(sqi, eqi);
  113. break;
  114. case GPEnum.fcnmgk3:
  115. list = Fcnmgk3Data.GetOneDayKjList(sqi, eqi);
  116. break;
  117. }
  118. #endregion
  119. cache.AddObject(key, list, (int)CacheTime.Expert);
  120. }
  121. return list;
  122. }
  123. }
  124. }