MarketingEnum.php 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. <?php
  2. namespace addons\TinyShop\common\enums;
  3. use common\enums\BaseEnum;
  4. /**
  5. * 营销类型类型
  6. *
  7. * Class MarketingEnum
  8. * @package addons\TinyShop\common\enums
  9. * @author jianyan74 <751393839@qq.com>
  10. */
  11. class MarketingEnum extends BaseEnum
  12. {
  13. const ASSOCIATION_SOLITAIRE = 'association_solitaire';
  14. const GIVE_POINT = 'give_point';
  15. const GIVE_GROWTH = 'give_growth';
  16. const USE_POINT = 'use_point';
  17. const COUPON = 'coupon';
  18. const COUPON_IN = 'coupon_in'; // 参加的商品
  19. const COUPON_NOT_IN = 'coupon_not_in'; // 不参加的商品
  20. const LADDER_PREFERENTIAL = 'ladder_preferential';
  21. const MEMBER_DISCOUNT = 'member_discount';
  22. const MEMBER_FIRST_BUY = 'member_first_buy';
  23. const MEMBER_REGISTER = 'member_register';
  24. const MEMBER_INVITE = 'member_invite';
  25. const MEMBER_RECHARGE_CONFIG = 'member_recharge_config';
  26. const MEMBER_CARD = 'member_card';
  27. // 营销
  28. const DISCOUNT = 'discount';
  29. const SEC_KILL = 'sec_kill';
  30. const FULL_GIVE = 'full_give';
  31. const FULL_MAIL = 'full_mail';
  32. const COMBINATION = 'combination';
  33. const BARGAIN = 'bargain';
  34. const GROUP_BUY = 'group_buy';
  35. const WHOLESALE = 'wholesale';
  36. const SECOND_HALF_DISCOUNT = 'second_half_discount';
  37. const BALE = 'bale';
  38. const PLUS_BUY = 'plus_buy';
  39. const PLUS_BUY_JOIN = 'plus_buy_join'; // 参加的商品
  40. const PLUS_BUY_TRADE = 'plus_buy_trade'; // 换购的商品
  41. const PRE_SELL = 'pre_sell';
  42. const PRE_SELL_DEDUCTION = 'pre_sell_deduction';
  43. const PLATFORM_COUPON = 'platform_coupon';
  44. const GIFT = 'gift';
  45. const POINT_EXCHANGE = 'point_exchange';
  46. // 其他(下单方式)
  47. const BUY_NOW = 'buy_now';
  48. const BUY_AGAIN = 'buy_again';
  49. const CART = 'cart';
  50. const TO_STORE = 'to_store';
  51. /**
  52. * @return array
  53. */
  54. public static function getMap(): array
  55. {
  56. return [
  57. // 1级权重
  58. self::DISCOUNT => '限时折扣',
  59. self::SEC_KILL => '限时秒杀',
  60. self::COMBINATION => '组合套餐',
  61. self::BARGAIN => '砍价',
  62. self::GROUP_BUY => '团购', // 满N件享折扣
  63. self::WHOLESALE => '拼团',
  64. self::SECOND_HALF_DISCOUNT => '第"2"件半价',
  65. self::BALE => '打包一口价',
  66. // 2级权重
  67. self::LADDER_PREFERENTIAL => '阶梯优惠',
  68. self::MEMBER_DISCOUNT => '会员折扣',
  69. // 3级权重
  70. self::FULL_GIVE => '满减送',
  71. self::GIVE_POINT => '赠送积分',
  72. self::GIVE_GROWTH => '赠送成长值',
  73. self::MEMBER_RECHARGE_CONFIG => '充值套餐',
  74. self::PLUS_BUY => '超值换购',
  75. // 4级权重
  76. self::FULL_MAIL => '满额包邮',
  77. self::MEMBER_FIRST_BUY => '新用户',
  78. self::COUPON => '优惠券',
  79. self::USE_POINT => '积分抵扣',
  80. self::PLATFORM_COUPON => '平台优惠券',
  81. // 5级权重
  82. self::PRE_SELL => '预售',
  83. self::PRE_SELL_DEDUCTION => '预付金膨胀',
  84. self::ASSOCIATION_SOLITAIRE => '社群接龙',
  85. self::PLUS_BUY_JOIN => '参与超值换购',
  86. self::PLUS_BUY_TRADE => '超值换购',
  87. self::POINT_EXCHANGE => '积分兑换',
  88. // 其他(下单方式)
  89. self::BUY_NOW => '立即购买',
  90. self::BUY_AGAIN => '再次购买',
  91. self::CART => '购物车',
  92. ];
  93. }
  94. /**
  95. * @return array
  96. */
  97. public static function getBackendSearchMap(): array
  98. {
  99. return [
  100. self::DISCOUNT => '限时折扣',
  101. self::SEC_KILL => '限时秒杀',
  102. self::BARGAIN => '砍价',
  103. self::GROUP_BUY => '团购',
  104. self::WHOLESALE => '拼团',
  105. self::PRE_SELL => '预售',
  106. self::SECOND_HALF_DISCOUNT => '第"2"件半价',
  107. self::BALE => '打包一口价',
  108. self::POINT_EXCHANGE => '积分兑换',
  109. ];
  110. }
  111. /**
  112. * 获取一般的营销类型 (购物车)
  113. *
  114. * @return array
  115. */
  116. public static function ordinaryMarketing()
  117. {
  118. return [
  119. MarketingEnum::BALE,
  120. MarketingEnum::SECOND_HALF_DISCOUNT,
  121. MarketingEnum::DISCOUNT,
  122. MarketingEnum::GROUP_BUY,
  123. ];
  124. }
  125. /**
  126. * 会员价互斥营销
  127. *
  128. * @return string[]
  129. */
  130. public static function notMemberDiscount()
  131. {
  132. return [
  133. MarketingEnum::PRE_SELL,
  134. MarketingEnum::DISCOUNT,
  135. MarketingEnum::SEC_KILL,
  136. MarketingEnum::WHOLESALE,
  137. MarketingEnum::BARGAIN,
  138. MarketingEnum::GROUP_BUY,
  139. MarketingEnum::COMBINATION,
  140. MarketingEnum::BALE,
  141. MarketingEnum::SECOND_HALF_DISCOUNT,
  142. MarketingEnum::POINT_EXCHANGE,
  143. ];
  144. }
  145. /**
  146. * 独立库存
  147. *
  148. * 砍价不算单独的(提前扣过了)
  149. *
  150. * @return string[]
  151. */
  152. public static function independenceStock()
  153. {
  154. return [
  155. MarketingEnum::SEC_KILL,
  156. MarketingEnum::POINT_EXCHANGE,
  157. ];
  158. }
  159. /**
  160. * 独立库存
  161. *
  162. * 主要用户商品详情显示
  163. *
  164. * @return string[]
  165. */
  166. public static function independenceStockByAll()
  167. {
  168. return [
  169. MarketingEnum::BARGAIN,
  170. MarketingEnum::SEC_KILL,
  171. MarketingEnum::POINT_EXCHANGE,
  172. ];
  173. }
  174. }
粤ICP备19079148号