MemberActiveEnum.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. <?php
  2. namespace addons\TinyShop\common\enums;
  3. use common\enums\BaseEnum;
  4. /**
  5. * Class MemberActiveEnum
  6. * @package addons\TinyShop\common\enums
  7. */
  8. class MemberActiveEnum extends BaseEnum
  9. {
  10. const ACTIVE = 1;
  11. const ACTIVE_HALF = 2;
  12. const SLEEP_HALF = 3;
  13. const SLEEP = 4;
  14. /**
  15. * @return string[]
  16. */
  17. public static function getMap(): array
  18. {
  19. return [
  20. self::ACTIVE => '活跃顾客',
  21. self::ACTIVE_HALF => '半活跃顾客',
  22. self::SLEEP_HALF => '半沉睡顾客',
  23. self::SLEEP => '沉睡顾客',
  24. ];
  25. }
  26. /**
  27. * @param $key
  28. * @return array
  29. */
  30. public static function getTime($key)
  31. {
  32. $data = [];
  33. $day = 24 * 3600;
  34. switch ($key) {
  35. case self::ACTIVE :
  36. $data = [
  37. 'start_time' => time() - $day * 90,
  38. 'end_time' => time(),
  39. 'explain' => '3个月内有消费',
  40. ];
  41. break;
  42. case self::ACTIVE_HALF :
  43. $data = [
  44. 'start_time' => time() - $day * 180,
  45. 'end_time' => time() - $day * 90,
  46. 'explain' => '3-6个月内有消费',
  47. ];
  48. break;
  49. case self::SLEEP_HALF :
  50. $data = [
  51. 'start_time' => time() - $day * 270,
  52. 'end_time' => time() - $day * 180,
  53. 'explain' => '6-9个月内有消费',
  54. ];
  55. break;
  56. case self::SLEEP :
  57. $data = [
  58. 'start_time' => 0,
  59. 'end_time' => time() - $day * 270,
  60. 'explain' => '9个月以上没消费',
  61. ];
  62. break;
  63. }
  64. return $data;
  65. }
  66. }
粤ICP备19079148号