WriteOffEnum.php 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. <?php
  2. namespace addons\WriteOff\common\enums;
  3. use common\enums\AddonsEnum;
  4. class WriteOffEnum{
  5. const ADDONS_NAME = AddonsEnum::ADDONS_NAME_WRITE_Off;
  6. const WRITE_OFF_PRIZE = 'write_off_prize';
  7. const MANAGE_PRIZE = 'manage_prize';
  8. const PROMOTE_PRIZE = 'promote_prize';
  9. const ACHIEVEMENT_PROMOTE_PRIZE = 'achievement_promote_prize';
  10. public static function getTypeMap($key = 0)
  11. {
  12. $data = [
  13. self::WRITE_OFF_PRIZE => '核销奖励',
  14. self::MANAGE_PRIZE => '管理奖励',
  15. self::PROMOTE_PRIZE => '促销奖励',
  16. self::ACHIEVEMENT_PROMOTE_PRIZE => '业绩促销奖励',
  17. ];
  18. return !empty($data[$key]) ? $data[$key] : $data;
  19. }
  20. public static function generateTradeNo($prefix = '')
  21. {
  22. $randLen = 6;
  23. $id = base_convert(substr(uniqid(), 0 - $randLen), 16, 10);
  24. if (strlen($id) > 10) {
  25. $id = substr($id, -10);
  26. } elseif (strlen($id) < 10) {
  27. $rLen = 10 - strlen($id);
  28. $id = $id . rand(pow(10, $rLen - 1), pow(10, $rLen) - 1);
  29. }
  30. $dateTimeStr = date('YmdHis');
  31. return $prefix . $dateTimeStr . $id;
  32. }
  33. }