feat(payment): align VIP/balance/order schema keys with Zibll

Extract payment readers into AKSRT_Settings_Payment_Runtime and store
canonical Zibll option IDs (pay_user_vip_*, pay_balance_*, pay_box_position,
pay_mark, pay_rebate_*, pay_income_*) in aksrt_settings with no legacy
payment_* dual-read. Update PHP/JS payment schemas and VIP sidebar gate.
This commit is contained in:
kate522 committed 2026-07-11 17:13:29 +08:00
1 parent 80d2c5fbc3
commit d9fbacbce6
12 files changed
+703 -554

No files matched your search

+46 -59
View File
@@ -2,44 +2,42 @@ export const vipSchema = {
key: 'payment.vip',
title: 'VIP会员',
icon: 'fas fa-crown',
description: '配置会员名称、套餐和付费权益说明。',
description: '对齐 Zibll 双级会员:pay_user_vip_1 / pay_user_vip_2 与下载权益。',
defaults: {
payment_vip_enabled: false,
payment_vip_name: 'VIP会员',
payment_vip_badge_text: 'VIP',
payment_vip_desc: '',
pay_user_vip_1_s: true,
pay_user_vip_1_name: '一级会员',
pay_user_vip_2_s: true,
pay_user_vip_2_name: '二级会员',
pay_user_vip_desc: '',
payment_vip_packages: '30|30|月卡\n365|365|年卡',
payment_vip_help: '会员权益以免扣下载和身份展示为主,开通后立即生效。',
payment_vip_download_limit: 0,
payment_vip_download_speed: 0,
payment_vip_discount: 100,
payment_vip_pass_charge: false,
payment_vip_pass_charge_desc: '',
payment_vip_renew: true,
payment_vip_renew_desc: '',
payment_vip_renew_price_type: 'discount',
payment_vip_renew_discount: 8,
payment_vip_renew_reduce: 20,
payment_vip_upgrade: true,
payment_vip_upgrade_desc: '',
payment_vip_upgrade_product: '',
payment_vip_month_price: 0,
payment_vip_year_price: 0,
payment_vip_permanent_price: 0,
payment_vip_unit_price: 0,
payment_vip_unit_tag: '元',
payment_vip_jump_price: 0,
pay_download_limit: 0,
pay_download_speed: 0,
pay_download_limit_vip_1: 0,
pay_download_speed_vip_1: 0,
pay_download_limit_vip_2: 0,
pay_download_speed_vip_2: 0,
pay_vip_pass_charge_s: false,
pay_vip_pass_charge_desc: '',
vip_renew: true,
vip_renew_desc: '',
vip_renew_price_type: 'discount',
vip_renew_discount: 8,
vip_renew_reduce: 20,
vip_upgrade: true,
vip_upgrade_desc: '',
vip_upgrade_product: '',
},
groups: [
{
key: 'basic',
title: '会员基础',
title: '会员等级',
icon: 'fas fa-user-shield',
fields: [
{ key: 'payment_vip_enabled', label: '启用会员结构', type: 'switch', default: false },
{ key: 'payment_vip_name', label: '会员名称', type: 'input', default: 'VIP会员', dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_badge_text', label: '会员徽标文案', type: 'input', default: 'VIP', dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_desc', label: '会员说明', type: 'textarea', default: '', dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'pay_user_vip_1_s', label: '启用一级会员', type: 'switch', default: true },
{ key: 'pay_user_vip_1_name', label: '一级会员名称', type: 'input', default: '一级会员', dependsOn: { key: 'pay_user_vip_1_s', value: true } },
{ key: 'pay_user_vip_2_s', label: '启用二级会员', type: 'switch', default: true },
{ key: 'pay_user_vip_2_name', label: '二级会员名称', type: 'input', default: '二级会员', dependsOn: { key: 'pay_user_vip_2_s', value: true } },
{ key: 'pay_user_vip_desc', label: '会员说明', type: 'textarea', default: '' },
],
},
{
@@ -47,20 +45,22 @@ export const vipSchema = {
title: '会员套餐',
icon: 'fas fa-gem',
fields: [
{ key: 'payment_vip_packages', label: '套餐列表', type: 'textarea', default: '30|30|月卡\n365|365|年卡', help: '每行一个套餐:价格|时长(天)|标题', dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_help', label: '权益说明', type: 'textarea', default: '会员权益以免扣下载和身份展示为主,开通后立即生效。', dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_packages', label: '套餐列表', type: 'textarea', default: '30|30|月卡\n365|365|年卡', help: '每行一个套餐:价格|时长(天)|标题' },
],
},
{
key: 'benefit',
title: '会员权益',
title: '下载权益',
icon: 'fas fa-gift',
fields: [
{ key: 'payment_vip_download_limit', label: '下载限制', type: 'number', default: 0, min: 0, max: 9999, help: '0为不限制', dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_download_speed', label: '下载速度(KB/s)', type: 'number', default: 0, min: 0, max: 99999, help: '0为不限制', dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_discount', label: '折扣(%)', type: 'number', default: 100, min: 1, max: 100, dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_pass_charge', label: '积分充值免扣', type: 'switch', default: false, dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_pass_charge_desc', label: '积分充值说明', type: 'textarea', default: '', dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'pay_download_limit', label: '普通用户下载限制', type: 'number', default: 0, min: 0, max: 9999, help: '0为不限制' },
{ key: 'pay_download_speed', label: '普通用户下载速度(KB/s)', type: 'number', default: 0, min: 0, max: 99999, help: '0为不限制' },
{ key: 'pay_download_limit_vip_1', label: '一级会员下载限制', type: 'number', default: 0, min: 0, max: 9999, dependsOn: { key: 'pay_user_vip_1_s', value: true } },
{ key: 'pay_download_speed_vip_1', label: '一级会员下载速度(KB/s)', type: 'number', default: 0, min: 0, max: 99999, dependsOn: { key: 'pay_user_vip_1_s', value: true } },
{ key: 'pay_download_limit_vip_2', label: '二级会员下载限制', type: 'number', default: 0, min: 0, max: 9999, dependsOn: { key: 'pay_user_vip_2_s', value: true } },
{ key: 'pay_download_speed_vip_2', label: '二级会员下载速度(KB/s)', type: 'number', default: 0, min: 0, max: 99999, dependsOn: { key: 'pay_user_vip_2_s', value: true } },
{ key: 'pay_vip_pass_charge_s', label: '会员卡密兑换', type: 'switch', default: false },
{ key: 'pay_vip_pass_charge_desc', label: '卡密兑换说明', type: 'textarea', default: '', dependsOn: { key: 'pay_vip_pass_charge_s', value: true } },
],
},
{
@@ -68,11 +68,11 @@ export const vipSchema = {
title: '续费设置',
icon: 'fas fa-sync-alt',
fields: [
{ key: 'payment_vip_renew', label: '允许续费', type: 'switch', default: true, dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_renew_desc', label: '续费说明', type: 'textarea', default: '', dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_renew_price_type', label: '续费价格类型', type: 'radio', default: 'discount', options: [{ label: '相同价格', value: 'same' }, { label: '折扣价格', value: 'discount' }, { label: '优惠立减', value: 'reduce' }], dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_renew_discount', label: '续费折扣(%)', type: 'number', default: 8, min: 1, max: 100, dependsOn: { key: 'payment_vip_renew_price_type', value: 'discount' } },
{ key: 'payment_vip_renew_reduce', label: '续费减免金额', type: 'number', default: 20, min: 0, max: 9999, dependsOn: { key: 'payment_vip_renew_price_type', value: 'reduce' } },
{ key: 'vip_renew', label: '允许续费', type: 'switch', default: true },
{ key: 'vip_renew_desc', label: '续费说明', type: 'textarea', default: '', dependsOn: { key: 'vip_renew', value: true } },
{ key: 'vip_renew_price_type', label: '续费价格类型', type: 'radio', default: 'discount', options: [{ label: '相同价格', value: 'same' }, { label: '折扣价格', value: 'discount' }, { label: '优惠立减', value: 'reduce' }], dependsOn: { key: 'vip_renew', value: true } },
{ key: 'vip_renew_discount', label: '续费折扣(%)', type: 'number', default: 8, min: 1, max: 100, dependsOn: { key: 'vip_renew_price_type', value: 'discount' } },
{ key: 'vip_renew_reduce', label: '续费减免金额', type: 'number', default: 20, min: 0, max: 9999, dependsOn: { key: 'vip_renew_price_type', value: 'reduce' } },
],
},
{
@@ -80,22 +80,9 @@ export const vipSchema = {
title: '升级设置',
icon: 'fas fa-arrow-up',
fields: [
{ key: 'payment_vip_upgrade', label: '允许升级', type: 'switch', default: true, dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_upgrade_desc', label: '升级说明', type: 'textarea', default: '', dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_upgrade_product', label: '升级产品', type: 'input', default: '', dependsOn: { key: 'payment_vip_enabled', value: true } },
],
},
{
key: 'price',
title: '价格设置',
icon: 'fas fa-yen-sign',
fields: [
{ key: 'payment_vip_month_price', label: '月卡价格', type: 'number', default: 0, min: 0, max: 99999, dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_year_price', label: '年卡价格', type: 'number', default: 0, min: 0, max: 99999, dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_permanent_price', label: '永久价格', type: 'number', default: 0, min: 0, max: 99999, dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_unit_price', label: '单位价格', type: 'number', default: 0, min: 0, max: 99999, dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_unit_tag', label: '单位标签', type: 'input', default: '元', dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'payment_vip_jump_price', label: '跳转价格', type: 'number', default: 0, min: 0, max: 99999, dependsOn: { key: 'payment_vip_enabled', value: true } },
{ key: 'vip_upgrade', label: '允许升级', type: 'switch', default: true },
{ key: 'vip_upgrade_desc', label: '升级说明', type: 'textarea', default: '', dependsOn: { key: 'vip_upgrade', value: true } },
{ key: 'vip_upgrade_product', label: '升级产品', type: 'input', default: '', dependsOn: { key: 'vip_upgrade', value: true } },
],
},
],