Factory.php 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. <?php
  2. /**
  3. *
  4. * @copyright ©2020 点小铺
  5. * @author hanj
  6. * @link: https://dyuit.com
  7. * Created by VSCode
  8. */
  9. namespace app\api\service\order\source\checkout;
  10. use app\api\service\Basics;
  11. use app\common\enum\order\OrderSource as OrderSourceEnum;
  12. /**
  13. * 订单结算台扩展工厂类
  14. * Class Factory
  15. * @package app\common\service\stock
  16. */
  17. class Factory extends Basics
  18. {
  19. // 订单来源的结算台服务类
  20. private static $class = [
  21. OrderSourceEnum::MASTER => 'Master',
  22. OrderSourceEnum::BARGAIN => 'Bargain',
  23. OrderSourceEnum::SHARP => 'Sharp',
  24. ];
  25. /**
  26. * 根据订单来源获取商品库存类
  27. * @param $user
  28. * @param $goodsList
  29. * @param int $orderSource
  30. * @return mixed
  31. */
  32. public static function getFactory($user, $goodsList, $orderSource = OrderSourceEnum::MASTER)
  33. {
  34. $className = __NAMESPACE__ . '\\' . static::$class[$orderSource];
  35. return new $className($user, $goodsList);
  36. }
  37. }