Configuration.php 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. <?php
  2. namespace app\api\controller\commission;
  3. use app\common\Service\ShopConfigService;
  4. use app\api\controller\Base;
  5. class Configuration extends Base
  6. {
  7. protected $noNeedLogin = ['index'];
  8. protected $noNeedRight = ['*'];
  9. /**
  10. * 获取分销配置
  11. *
  12. * @return void
  13. */
  14. public function index()
  15. {
  16. // try {
  17. // 获取分销配置
  18. $commissionConfig = ShopConfigService::getConfigs('shop.commission');
  19. // 处理become_agent字段(如果是JSON字符串需要解析)
  20. if (isset($commissionConfig['become_agent']) && is_string($commissionConfig['become_agent'])) {
  21. $commissionConfig['become_agent'] = json_decode($commissionConfig['become_agent'], true) ?: ['type' => 'apply', 'value' => ''];
  22. }
  23. // 构建返回的配置数据
  24. $config = [
  25. // 基础配置
  26. 'level' => intval($commissionConfig['level'] ?? 2),
  27. 'self_buy' => intval($commissionConfig['self_buy'] ?? 0),
  28. 'invite_lock' => $commissionConfig['invite_lock'] ?? 'share',
  29. 'agent_check' => intval($commissionConfig['agent_check'] ?? 0),
  30. 'upgrade_jump' => intval($commissionConfig['upgrade_jump'] ?? 1),
  31. 'upgrade_check' => intval($commissionConfig['upgrade_check'] ?? 0),
  32. // 成为分销商条件
  33. 'become_agent' => $commissionConfig['become_agent'] ?? ['type' => 'apply', 'value' => ''],
  34. 'need_form' => intval($commissionConfig['need_form'] ?? 0),
  35. 'background_image' => !empty($commissionConfig['background_image']) ? cdnurl($commissionConfig['background_image'], true) : '',
  36. 'show_protocol' => intval($commissionConfig['show_protocol'] ?? 1),
  37. 'apply_protocol' => $commissionConfig['apply_protocol'] ?? '申请协议',
  38. // 结算配置
  39. 'reward_type' => $commissionConfig['reward_type'] ?? 'pay_price',
  40. 'reward_event' => $commissionConfig['reward_event'] ?? 'paid',
  41. 'refund_commission_reward' => intval($commissionConfig['refund_commission_reward'] ?? 1),
  42. 'refund_commission_order' => intval($commissionConfig['refund_commission_order'] ?? 1),
  43. // 分享配置
  44. 'share_title' => $commissionConfig['share_title'] ?? '我发现了一个好商品',
  45. 'share_description' => $commissionConfig['share_description'] ?? '快来看看这个优质商品,价格优惠,质量保证!',
  46. 'share_image' => !empty($commissionConfig['share_image']) ? cdnurl($commissionConfig['share_image'], true) : '',
  47. ];
  48. $this->success('获取成功', $config);
  49. // } catch (\Exception $e) {
  50. // $this->error('获取配置失败: ' . $e->getMessage());
  51. // }
  52. }
  53. }