feat(pay): content cashier coupon and rebate discount chain
Wire zibll-style cash content discounts: VIP list price → buyer 推广折扣 → coupon, then commission on final pay. Reuse AKSRT_Coupon, add Invite::get_referrer, cashier UI, and paid-time coupon burn + rebate_log.
This commit is contained in:
@@ -23,6 +23,8 @@ export const paidSchema = {
|
||||
payment_download_post_log: 50,
|
||||
payment_download_remote_size: 2048,
|
||||
payment_download_remote_ext: 'zip,rar,7z',
|
||||
coupon_post_s: false,
|
||||
coupon_desc: '',
|
||||
},
|
||||
groups: [
|
||||
{
|
||||
@@ -72,5 +74,14 @@ export const paidSchema = {
|
||||
{ key: 'payment_download_remote_ext', label: '远程文件格式限制', type: 'input', default: 'zip,rar,7z', help: '逗号分隔扩展名', dependsOn: { key: 'payment_download_remote_s', value: true } },
|
||||
],
|
||||
},
|
||||
{
|
||||
key: 'coupon',
|
||||
title: '内容优惠码',
|
||||
icon: 'fas fa-ticket-alt',
|
||||
fields: [
|
||||
{ key: 'coupon_post_s', label: '全站内容允许优惠码', type: 'switch', default: false, help: '开启后所有付费内容收银台可用优惠码;关闭时仅单篇勾选「允许优惠码」的文章可用。' },
|
||||
{ key: 'coupon_desc', label: '优惠码说明', type: 'textarea', default: '', dependsOn: { key: 'coupon_post_s', value: true }, help: '展示在内容收银台优惠码输入框下方。' },
|
||||
],
|
||||
},
|
||||
],
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user