Gpkl12Bll.cs 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  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 Gpkl12Bll
  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<Basekl12Info> GetList(GPEnum gpenum,int pagesize,int n = 30)
  24. {
  25. string key = $"DATA-{gpenum.ToString()}-{pagesize*n}";
  26. List<Basekl12Info> list = cache.GetObject<List<Basekl12Info>>(key);
  27. if (list == null)
  28. {
  29. #region 获取数据
  30. switch (gpenum)
  31. {
  32. case GPEnum.fcsckl12:
  33. list = Fcsckl12Data.GetList(pagesize * n);
  34. break;
  35. case GPEnum.fclnkl12:
  36. list = Fclnkl12Data.GetList(pagesize * n);
  37. break;
  38. case GPEnum.fczjkl12:
  39. list = Fczjkl12Data.GetList(pagesize * n);
  40. break;
  41. }
  42. #endregion
  43. cache.AddObject(key, list, (int)CacheTime.Mintime);
  44. }
  45. return list;
  46. }
  47. /// <summary>
  48. /// 获取指定时间内的数据
  49. /// </summary>
  50. /// <param name="gpenum">枚举</param>
  51. /// <param name="sqi">开始时间</param>
  52. /// <param name="eqi">结束时间</param>
  53. /// <returns></returns>
  54. public static List<Basekl12Info> GetDayKjList(GPEnum gpenum,DateTime sqi, DateTime eqi)
  55. {
  56. string key = $"DATA-{gpenum.ToString()}-{sqi}-{eqi}";
  57. List<Basekl12Info> list = cache.GetObject<List<Basekl12Info>>(key);
  58. if (list == null)
  59. {
  60. #region 获取数据
  61. switch (gpenum)
  62. {
  63. case GPEnum.fcsckl12:
  64. list = Fcsckl12Data.GetOneDayKjList(sqi, eqi);
  65. break;
  66. case GPEnum.fclnkl12:
  67. list = Fclnkl12Data.GetOneDayKjList(sqi, eqi);
  68. break;
  69. case GPEnum.fczjkl12:
  70. list = Fczjkl12Data.GetOneDayKjList(sqi, eqi);
  71. break;
  72. }
  73. #endregion
  74. cache.AddObject(key, list, (int)CacheTime.Expert);
  75. }
  76. return list;
  77. }
  78. }
  79. }