Drop dual-read payment runtime fallbacks, align PHP schema to Vue keys, read gateway credentials only from aksrt_settings with enable toggles, expose configured adapters at checkout, fix credits pay signatures, and apply order expiry settings. Wire orphan order/card-pass/withdrawal schema pages; delete unused Payment* wrappers.
73 lines
3.8 KiB
JavaScript
73 lines
3.8 KiB
JavaScript
export const affiliateSchema = {
|
|
key: 'payment.affiliate',
|
|
title: '推广返佣',
|
|
icon: 'fas fa-share-alt',
|
|
description: '配置返佣比例、归因窗口和结算说明。',
|
|
defaults: {
|
|
pay_rebate_s: false,
|
|
pay_rebate_ratio: 10,
|
|
payment_affiliate_window_days: 30,
|
|
payment_affiliate_require_paid_order: true,
|
|
pay_rebate_self_s: true,
|
|
pay_rebate_show_users: true,
|
|
payment_affiliate_user_ratio: 10,
|
|
pay_rebate_ratio_vip_1: 0,
|
|
pay_rebate_ratio_vip_2: 0,
|
|
pay_rebate_poster_s: true,
|
|
pay_rebate_poster_img: '',
|
|
pay_rebate_poster_title: '',
|
|
pay_rebate_poster_desc: '',
|
|
pay_rebate_text_desc: '',
|
|
pay_rebate_text_details_title: '',
|
|
pay_rebate_text_details: '',
|
|
pay_rebate_text_discount: '',
|
|
},
|
|
groups: [
|
|
{
|
|
key: 'policy',
|
|
title: '返佣策略',
|
|
icon: 'fas fa-project-diagram',
|
|
fields: [
|
|
{ key: 'pay_rebate_s', label: '启用推广返佣结构', type: 'switch', default: false },
|
|
{ key: 'pay_rebate_ratio', label: '返佣比例(%)', type: 'number', default: 10, min: 0, max: 100, dependsOn: { key: 'pay_rebate_s', value: true } },
|
|
{ key: 'payment_affiliate_window_days', label: '归因窗口(天)', type: 'number', default: 30, min: 1, max: 365, dependsOn: { key: 'pay_rebate_s', value: true } },
|
|
{ key: 'payment_affiliate_require_paid_order', label: '仅对已支付订单返佣', type: 'switch', default: true, dependsOn: { key: 'pay_rebate_s', value: true } },
|
|
{ key: 'pay_rebate_self_s', label: '自购返佣', type: 'switch', default: true, dependsOn: { key: 'pay_rebate_s', value: true } },
|
|
{ key: 'pay_rebate_show_users', label: '显示推广用户', type: 'switch', default: true, dependsOn: { key: 'pay_rebate_s', value: true } },
|
|
],
|
|
},
|
|
{
|
|
key: 'user-ratio',
|
|
title: '用户返佣比例',
|
|
icon: 'fas fa-users-cog',
|
|
fields: [
|
|
{ key: 'payment_affiliate_user_ratio', label: '普通用户比例(%)', type: 'number', default: 10, min: 0, max: 100, dependsOn: { key: 'pay_rebate_s', value: true } },
|
|
{ key: 'pay_rebate_ratio_vip_1', label: 'VIP1比例(%)', type: 'number', default: 0, min: 0, max: 100, dependsOn: { key: 'pay_rebate_s', value: true } },
|
|
{ key: 'pay_rebate_ratio_vip_2', label: 'VIP2比例(%)', type: 'number', default: 0, min: 0, max: 100, dependsOn: { key: 'pay_rebate_s', value: true } },
|
|
],
|
|
},
|
|
{
|
|
key: 'poster',
|
|
title: '推广海报',
|
|
icon: 'fas fa-image',
|
|
fields: [
|
|
{ key: 'pay_rebate_poster_s', label: '启用推广海报', type: 'switch', default: true, dependsOn: { key: 'pay_rebate_s', value: true } },
|
|
{ key: 'pay_rebate_poster_img', label: '海报背景图', type: 'media', default: '', dependsOn: { key: 'pay_rebate_s', value: true } },
|
|
{ key: 'pay_rebate_poster_title', label: '海报标题', type: 'input', default: '', dependsOn: { key: 'pay_rebate_s', value: true } },
|
|
{ key: 'pay_rebate_poster_desc', label: '海报描述', type: 'input', default: '', dependsOn: { key: 'pay_rebate_s', value: true } },
|
|
],
|
|
},
|
|
{
|
|
key: 'text',
|
|
title: '文案设置',
|
|
icon: 'fas fa-pen-fancy',
|
|
fields: [
|
|
{ key: 'pay_rebate_text_desc', label: '返佣说明', type: 'textarea', default: '', dependsOn: { key: 'pay_rebate_s', value: true } },
|
|
{ key: 'pay_rebate_text_details_title', label: '明细标题', type: 'input', default: '', dependsOn: { key: 'pay_rebate_s', value: true } },
|
|
{ key: 'pay_rebate_text_details', label: '明细说明', type: 'textarea', default: '', dependsOn: { key: 'pay_rebate_s', value: true } },
|
|
{ key: 'pay_rebate_text_discount', label: '折扣文案', type: 'input', default: '', dependsOn: { key: 'pay_rebate_s', value: true } },
|
|
],
|
|
},
|
|
],
|
|
}
|