'基础设置', 'settlement' => '结算', 'words' => '自定义文字', 'background' => '页面背景图', ]; /** * 转义数组格式 * @param $value * @return mixed */ public function getValuesAttr($value) { return json_decode($value, true); } /** * 转义成json格式 * @param $value * @return false|string */ public function setValuesAttr($value) { return json_encode($value); } /** * 获取指定项设置 * @param $key * @param null $app_id * @return array|mixed */ public static function getItem($key, $app_id = null) { $data = static::getAll($app_id); return isset($data[$key]) ? $data[$key]['values'] : []; } /** * 获取VIP专区设置 */ public static function getAll($app_id = null) { $self = new static; is_null($app_id) && $app_id = $self::$app_id; if (!$data = Cache::get('vip_setting_' . $app_id)) { $data = array_column($self->select()->toArray(), null, 'key'); Cache::tag('cache')->set('vip_setting_' . $app_id, $data); } return array_merge_multiple($self->defaultData(), $data); } /** * 获取设置项信息 */ public static function detail($key) { return (new static())->find(compact('key')); } /** * 是否开启VIP专区功能 */ public static function isOpen($app_id = null) { return static::getItem('basic', $app_id)['is_open']; } /** * 更新系统设置 */ public function edit($data) { $this->startTrans(); try { foreach ($data as $key => $values) $this->saveValues($key, $values); $this->commit(); // 删除系统设置缓存 Cache::delete('vip_setting_' . self::$app_id); return true; } catch (\Exception $e) { $this->error = $e->getMessage(); $this->rollback(); return false; } } /** * 保存设置项 */ private function saveValues($key, $values) { $where['key'] = $key; $res = $this->where($where)->select()->count(); $data = [ 'describe' => $this->describe[$key], 'values' => $values, 'app_id' => self::$app_id, ]; if ($res == 1) { return self::update($data, $where); } if ($res == 0) { $data['key'] = $key; return self::create($data); } } /** * 默认配置 * @return array[] */ public function defaultData() { return [ 'basic' => [ 'key' => 'basic', 'describe' => '基础设置', 'values' => [ // 是否开启VIP专区功能 'is_open' => '0', // 参数值:1开启 0关闭 // 成为VIP需要购买的商品ID 'become__buy_product_ids' => [], //直推多少用户享受平台佣金 'referee_buy_count' => '0', // VIP专区补贴比例 'subsidy_rate' => '10', // 平台直推佣金比例 'platform_commission_rate' => '5', 'jcaward'=>'0', 'pjaward'=>'0', 'pjaward_level'=>1, 'referee_grade_ids'=>[], 'referee_grade_count'=>0 ], ], 'settlement' => [ 'key' => 'settlement', 'describe' => '结算', 'values' => [ // 提现方式 'pay_type' => [], // 参数值:10微信支付 20支付宝支付 30银行卡支付 // 微信支付自动打款 'wechat_pay_auto' => '0', // 微信支付自动打款:1开启 0关闭 // 最低提现额度 'min_money' => '10.00', // 佣金结算天数 'settle_days' => '10', 'fee_rate' => '0', 'explain' => '' ] ], 'words' => [ 'key' => 'words', 'describe' => '自定义文字', 'values' => [ 'index' => [ 'title' => [ 'default' => 'VIP专区', 'value' => 'VIP专区' ], 'words' => [ 'vip_user' => [ 'default' => 'VIP用户', 'value' => 'VIP用户' ], 'not_vip' => [ 'default' => '您还不是VIP用户', 'value' => '您还不是VIP用户' ], 'apply_now' => [ 'default' => '立即加入', 'value' => '立即加入' ], 'referee' => [ 'default' => '推荐人', 'value' => '推荐人' ], 'money' => [ 'default' => '可提现佣金', 'value' => '可提现' ], 'freeze_money' => [ 'default' => '待提现佣金', 'value' => '待提现' ], 'total_money' => [ 'default' => '已提现金额', 'value' => '已提现金额' ], 'cash' => [ 'default' => '去提现', 'value' => '去提现' ], ] ], 'order' => [ 'title' => [ 'default' => 'vip专区订单', 'value' => 'vip专区订单' ], 'words' => [ 'all' => [ 'default' => '全部', 'value' => '全部' ], 'unsettled' => [ 'default' => '未结算', 'value' => '未结算' ], 'settled' => [ 'default' => '已结算', 'value' => '已结算' ], ] ], 'apply' => [ 'title' => [ 'default' => '申请成为vip专区用户', 'value' => '申请成为vip专区用户' ], 'words' => [ 'title' => [ 'default' => '请填写申请信息', 'value' => '请填写申请信息' ], 'license' => [ 'default' => 'vip专区用户申请协议', 'value' => 'vip专区用户申请协议' ], 'submit' => [ 'default' => '申请成为vip专区用户', 'value' => '申请成为vip专区用户' ], 'wait_audit' => [ 'default' => '您的申请已受理,正在进行信息核验,请耐心等待。', 'value' => '您的申请已受理,正在进行信息核验,请耐心等待。' ], 'goto_mall' => [ 'default' => '去商城逛逛', 'value' => '去商城逛逛' ], ] ], 'team' => [ 'title' => [ 'default' => '我的团队', 'value' => '我的团队' ], 'words' => [ 'total_team' => [ 'default' => '团队总人数', 'value' => '团队总人数' ], 'first' => [ 'default' => '一级团队', 'value' => '一级团队' ], 'second' => [ 'default' => '二级团队', 'value' => '二级团队' ], 'third' => [ 'default' => '三级团队', 'value' => '三级团队' ], ] ], 'qrcode' => [ 'title' => [ 'default' => '推广二维码', 'value' => '推广二维码' ] ], 'cash_list' => [ 'title' => [ 'default' => '提现明细', 'value' => '提现明细' ], 'words' => [ 'all' => [ 'default' => '全部', 'value' => '全部' ], 'apply_10' => [ 'default' => '审核中', 'value' => '审核中' ], 'apply_20' => [ 'default' => '审核通过', 'value' => '审核通过' ], 'apply_40' => [ 'default' => '已打款', 'value' => '已打款' ], 'apply_30' => [ 'default' => '驳回', 'value' => '驳回' ], ] ], 'cash_apply' => [ 'title' => [ 'default' => '申请提现', 'value' => '申请提现' ], 'words' => [ 'capital' => [ 'default' => '可提现佣金', 'value' => '可提现佣金' ], 'money' => [ 'default' => '提现金额', 'value' => '提现金额' ], 'money_placeholder' => [ 'default' => '请输入要提取的金额', 'value' => '请输入要提取的金额' ], 'min_money' => [ 'default' => '最低提现佣金', 'value' => '最低提现佣金' ], 'submit' => [ 'default' => '提交申请', 'value' => '提交申请' ], ] ], ] ], 'background' => [ 'key' => 'background', 'describe' => '页面背景图', 'values' => [ // VIP专区首页 'index' => self::$base_url . 'image/vip/vip-bg.jpg', // 申请提现页 'cash_apply' => self::$base_url . 'image/vip/vip-bg.jpg', ], ], ]; } }