Order.php 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. <?php
  2. namespace addons\RandFee\common\enums;
  3. use common\enums\AddonsEnum;
  4. use common\models\common\Addons;
  5. use common\models\order\Order as OrderModel;
  6. use ReflectionClass;
  7. class Order
  8. {
  9. /**
  10. * 普通订单
  11. */
  12. const DEFAULT = OrderModel::DEFAULT;
  13. /**
  14. * 订单类型
  15. */
  16. /* const TYPES = [
  17. [
  18. 'value' => self::DEFAULT,
  19. 'name' => '普通订单',
  20. ],
  21. [
  22. 'value' => 'group', // 暂定
  23. 'name' => '拼团订单',
  24. ],
  25. [
  26. 'value' => 'lucky_group', // 暂定
  27. 'name' => '幸运拼团订单',
  28. ],
  29. [
  30. 'value' => 'course', // 暂定
  31. 'name' => '课程订单',
  32. ],
  33. ]; */
  34. /**
  35. * 获取类型
  36. *
  37. * @return array
  38. */
  39. public static function getTypes()
  40. {
  41. $ref = new ReflectionClass(AddonsEnum::class);
  42. $types[] = [
  43. 'value' => self::DEFAULT,
  44. 'name' => '普通订单',
  45. ];
  46. $ref->getConstant('ADDONS_NAME_GROUP_BUY') && $types[] = [
  47. 'value' => $ref->getConstant('ADDONS_NAME_GROUP_BUY'),
  48. 'name' => '拼团订单',
  49. ];
  50. $ref->getConstant('ADDONS_NAME_LUCKY_GROUP') && $types[] = [
  51. 'value' => $ref->getConstant('ADDONS_NAME_LUCKY_GROUP'), // 暂定
  52. 'name' => '幸运拼团订单',
  53. ];
  54. $ref->getConstant('ADDONS_NAME_COURSE') && $types[] = [
  55. 'value' => $ref->getConstant('ADDONS_NAME_COURSE'), // 暂定
  56. 'name' => '课程订单',
  57. ];
  58. if (Addons::isInstall(AddonsEnum::ADDONS_NAME_GROUP_BUY_RABATE)) {
  59. $types[] = [
  60. 'value' => AddonsEnum::ADDONS_NAME_GROUP_BUY_RABATE,
  61. 'name' => '拼团推三返一订单',
  62. ];
  63. }
  64. return $types;
  65. }
  66. /**
  67. * 返回类型名称
  68. *
  69. * @param string $key
  70. * @return string
  71. */
  72. public static function getName($key)
  73. {
  74. $types = self::getTypes();
  75. $new = [];
  76. foreach ($types as $type) {
  77. $new[$type['value']] = $type['name'];
  78. }
  79. return isset($new[$key]) ? $new[$key] : '';
  80. }
  81. }