MerchantQrCodeDbconn.cs 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using MySystem.MainModels;
  5. namespace MySystem
  6. {
  7. public class MerchantQrCodeDbconn
  8. {
  9. public readonly static MerchantQrCodeDbconn Instance = new MerchantQrCodeDbconn();
  10. #region 获取单个字段
  11. public MerchantQrCode Get(int Id)
  12. {
  13. string key = "MerchantQrCode:" + Id;
  14. if (RedisDbconn.Instance.Exists(key))
  15. {
  16. MerchantQrCode obj = RedisDbconn.Instance.Get<MerchantQrCode>(key);
  17. if (obj != null)
  18. {
  19. return obj;
  20. }
  21. }
  22. WebCMSEntities db = new WebCMSEntities();
  23. MerchantQrCode order = db.MerchantQrCode.FirstOrDefault(m => m.Id == Id);
  24. if (order != null)
  25. {
  26. RedisDbconn.Instance.Set(key, order);
  27. RedisDbconn.Instance.SetExpire(key, Library.function.get_Random(1800, 5400));
  28. }
  29. return order;
  30. }
  31. public MerchantQrCode Get(string SnNo)
  32. {
  33. string key = "MerchantQrCode:" + SnNo;
  34. if (RedisDbconn.Instance.Exists(key))
  35. {
  36. MerchantQrCode obj = RedisDbconn.Instance.Get<MerchantQrCode>(key);
  37. if (obj != null)
  38. {
  39. return obj;
  40. }
  41. }
  42. WebCMSEntities db = new WebCMSEntities();
  43. MerchantQrCode order = db.MerchantQrCode.FirstOrDefault(m => m.SnNo == SnNo);
  44. if (order != null)
  45. {
  46. RedisDbconn.Instance.Set(key, order);
  47. RedisDbconn.Instance.SetExpire(key, Library.function.get_Random(1800, 5400));
  48. }
  49. return order;
  50. }
  51. #endregion
  52. #region 获取列表
  53. public List<MerchantQrCode> GetList(int MerchantId, int pageNum = 1, int pageSize = 10)
  54. {
  55. string key = "MerchantQrCodeList:" + MerchantId;
  56. List<MerchantQrCode> list = new List<MerchantQrCode>();
  57. if (RedisDbconn.Instance.Exists(key))
  58. {
  59. list = RedisDbconn.Instance.GetList<MerchantQrCode>(key, pageNum, pageSize);
  60. if (list.Count > 0)
  61. {
  62. return list;
  63. }
  64. }
  65. WebCMSEntities db = new WebCMSEntities();
  66. var mysqllist = db.MerchantQrCode.Where(m => m.MerchantId == MerchantId).ToList();
  67. if (mysqllist.Count > 0)
  68. {
  69. List<MerchantQrCode> newlist = new List<MerchantQrCode>();
  70. foreach (MerchantQrCode sub in mysqllist)
  71. {
  72. newlist.Add(sub);
  73. }
  74. RedisDbconn.Instance.Clear(key);
  75. foreach (MerchantQrCode sub in newlist)
  76. {
  77. RedisDbconn.Instance.AddRightList(key, sub);
  78. }
  79. RedisDbconn.Instance.SetExpire(key, Library.function.get_Random(1800, 5400));
  80. }
  81. db.Dispose();
  82. return list;
  83. }
  84. #endregion
  85. }
  86. }