CampaignConstants.php 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. <?php
  2. /**
  3. * 消耗活动常量
  4. * Created by: PhpStorm
  5. * User: lytian
  6. * Date: 2019/11/6
  7. * Time: 14:08
  8. */
  9. namespace app\main\constants;
  10. class CampaignConstants
  11. {
  12. //消耗活动开关
  13. const CAMPAIGN_IS_OPEN = 'CIO:';
  14. //领奖周期 3天
  15. const CAMPAIGN_PERIOD_DAY = 3;
  16. //挑战赛活动前缀
  17. const CAMPAIGN_READ_KEY = 'MR:';
  18. //最新有效读书挑战赛活动RedisKey
  19. const CAMPAIGN_READ_LAST_KEY = 'MRLATEST';
  20. //用户场次前缀
  21. const USER_MATCH_KEY_PREFIX = 'MC:';
  22. //用户阅读记录计数
  23. const USER_MATCH_READ_PREFIX = 'UCR:';
  24. //用户第一次点击补卡的时间
  25. const USER_CLICK_CSIGN_PREFIX = 'UMCS:';
  26. //补卡需要的订单支付
  27. const USER_USER_PAY_PREFIX = 'UMO:';
  28. //活动下的各个场次
  29. const CAMPAIGN_MATCH_KEY_PREFIX = 'CMK:';
  30. //记录用户第一次进入页面得时间
  31. const USER_MATCH_FIRST_LOGIN = 'UMF:';
  32. //最近一次结束得场次获奖记录
  33. const LAST_AWARD_MATCH = 'MCL:';
  34. //接口加锁
  35. const CAMPAIGN_USER_ONLY = 'LK:';
  36. //记录每个场次的当天打卡人数
  37. const MATCH_SIGN_NUM_TODAY = 'MCS:';
  38. //记录最近报名的20个
  39. const MATCH_SIGN_USER_INFO = 'MC_USERLIST';
  40. // 最近阅读(我的书架)
  41. const CAMPAIGN_POPUP_POSITION_ONE = 1;
  42. // 个人中心
  43. const CAMPAIGN_POPUP_POSITION_TWO = 2;
  44. // 书城首页
  45. const CAMPAIGN_POPUP_POSITION_THR = 3;
  46. /**
  47. * 获取用户最后一次参与的场次的redis key
  48. * @param $user_id
  49. * @return string
  50. */
  51. public static function getUserMatchKey($user_id)
  52. {
  53. return self::USER_MATCH_KEY_PREFIX.$user_id;
  54. }
  55. /**
  56. * 获取用户阅读记录计数
  57. * @param $user_id
  58. * @param null $date
  59. * @return string
  60. */
  61. public static function getUserMatchReadKey($user_id, $date = null)
  62. {
  63. $date = is_null($date) ? date("Ymd") : $date;
  64. return self::USER_MATCH_READ_PREFIX.$user_id.':'.$date;
  65. }
  66. /**
  67. * 获取用户当日首次点击补卡的时间
  68. * @param $user_id
  69. * @param null $date
  70. * @return string
  71. */
  72. public static function getUserClickCSignKey($user_id, $date = null)
  73. {
  74. $date = is_null($date) ? date("Ymd") : $date;
  75. return self::USER_CLICK_CSIGN_PREFIX.$user_id.':'.$date;
  76. }
  77. /**
  78. * 补卡时需要支付订单
  79. * @param $user_id
  80. * @param null $date
  81. * @return string
  82. */
  83. public static function getUserPayOrderKey($user_id, $date = null)
  84. {
  85. $date = is_null($date) ? date("Ymd") : $date;
  86. return self::USER_USER_PAY_PREFIX.$user_id.':'.$date;
  87. }
  88. /**
  89. * @param $activeId
  90. * @return string
  91. */
  92. public static function getCampaignRedisKey( $activeId ){
  93. return self::CAMPAIGN_READ_KEY.$activeId;
  94. }
  95. /**
  96. * @param $activeId
  97. * @param $matchDate
  98. * @param $kandian
  99. * @return string
  100. */
  101. public static function getCampaignMatchRedisKey( $matchDate, $kandian ){
  102. return self::CAMPAIGN_MATCH_KEY_PREFIX.$matchDate.$kandian;
  103. }
  104. /**
  105. * 今天的场次的打卡人数
  106. * @param $matchId
  107. * @return string
  108. */
  109. public static function getMatchSignNumToday( $matchId ){
  110. return self::MATCH_SIGN_NUM_TODAY.date('Ymd').':'.$matchId;
  111. }
  112. /**
  113. * USER_MATCH_FIRST_LOGIN
  114. * wud
  115. */
  116. public static function getUserMatchFirstLogin( $userId )
  117. {
  118. return self::USER_MATCH_FIRST_LOGIN.date('Ymd').':'.$userId;
  119. }
  120. /**
  121. *
  122. */
  123. public static function getLastAwardMatch()
  124. {
  125. return self::LAST_AWARD_MATCH.date('Ymd');
  126. }
  127. }