feeeei
|
57b7dbdc85
|
feat(affiliate): 提取记录支持登记线下提现
管理员在站外给邀请人打款后,系统里原本无法扣减对应的返利额度,用户仍可把
这部分额度转入余额。现在可在「邀请返利 → 提取记录」点「登记线下提现」,
从该用户的可提取返利额度中扣除已打款金额:
- POST /api/v1/admin/affiliates/users/:user_id/withdraw,请求体只含 amount,
金额按 8 位小数舍入后校验
- 先解冻已到期的冻结额度,再以 aff_quota >= amount 为条件原子扣减,写入
action=withdraw 的流水并带额度快照;额度不足返回 AFFILIATE_QUOTA_INSUFFICIENT
- 不新增字段与迁移:线下提现复用已有 action 列区分,操作人由管理端审计日志记录
- 提取记录同时列出转入余额与线下提现,新增「类型」列
- 弹窗选择用户后展示可提取额度,支持一键填入全部;从未产生返利的用户按 0 处理
返利记录改为 LEFT JOIN 订单与被邀请人,兑换码、管理员充值来源的返利也会出现
在明细中,接口里订单相关字段与被邀请人 ID 可为 null。
|
2026-09-17 23:42:02 +08:00 |
|
Wesley Liddick
|
18328aed05
|
Merge pull request #7212 from wucm667/feat/issue-7203-redemption-pagination
feat(redeem): paginate user redemption history
|
2026-09-17 16:43:06 +08:00 |
|
Wesley Liddick
|
5050471822
|
Merge pull request #7239 from Liu8Can/fix/register-promo-code-flicker
fix: prevent promo code field flash on registration
|
2026-09-17 16:41:35 +08:00 |
|
Wesley Liddick
|
cd1834e0a9
|
Merge pull request #7262 from ouchihao/codex/bug-refund-balance-warning
fix(payment): base refund balance warnings on the requested amount
|
2026-09-17 16:41:00 +08:00 |
|
Wesley Liddick
|
0932e8ce0a
|
Merge pull request #7266 from ouchihao/codex/bug-subscription-loading-reset
fix(subscriptions): reset loading when clearing state
|
2026-09-17 16:40:44 +08:00 |
|
Wesley Liddick
|
ffa43607e5
|
Merge pull request #7236 from ouchihao/codex/bug-payment-amount-input
fix(payment): restore accepted text after invalid amount input
|
2026-09-17 16:40:33 +08:00 |
|
Wesley Liddick
|
57e9f6a4b8
|
Merge pull request #7238 from ouchihao/codex/bug-model-tag-tab-navigation
fix(channels): allow tabbing out of an empty model input
|
2026-09-17 16:40:23 +08:00 |
|
Wesley Liddick
|
71c0eb5126
|
Merge pull request #7184 from ouchihao/codex/bug-totp-error-messages
fix(totp): display normalized API error messages
|
2026-09-17 16:40:07 +08:00 |
|
Wesley Liddick
|
10fd1ada28
|
Merge pull request #7182 from ouchihao/codex/bug-orders-filter-page
fix(payment): reset the order page when changing status
|
2026-09-17 16:39:53 +08:00 |
|
Wesley Liddick
|
53fd5f8351
|
Merge pull request #7183 from ouchihao/codex/bug-proxy-test-dedup
fix(proxies): reuse in-flight test guards during batch testing
|
2026-09-17 16:39:34 +08:00 |
|
Wesley Liddick
|
55bde0857f
|
Merge pull request #7185 from ouchihao/codex/bug-announcement-read-results
fix(announcements): preserve successful bulk read results
|
2026-09-17 16:39:16 +08:00 |
|
Wesley Liddick
|
5f75e0d2a7
|
Merge pull request #7186 from ouchihao/codex/bug-clipboard-fallback-error
fix(clipboard): report errors thrown by the copy fallback
|
2026-09-17 16:38:55 +08:00 |
|
Wesley Liddick
|
efd86c63e6
|
Merge pull request #7235 from ouchihao/codex/bug-totp-setup-input-sync
fix(auth): keep TOTP setup digits in sync with state
|
2026-09-17 16:38:37 +08:00 |
|
Wesley Liddick
|
ea68c0e82c
|
Merge pull request #7263 from ouchihao/codex/bug-dialog-title-ids
fix(ui): keep dialog title IDs unique across instances
|
2026-09-17 16:38:16 +08:00 |
|
Wesley Liddick
|
40e7ce7fbf
|
Merge pull request #7265 from ouchihao/codex/bug-payment-config-await
fix(payment): await in-flight configuration requests
|
2026-09-17 16:37:54 +08:00 |
|
Wesley Liddick
|
131893e449
|
Merge pull request #7237 from ouchihao/codex/bug-platform-quota-negative
fix(admin): reject negative platform quota limits before saving
|
2026-09-17 16:36:34 +08:00 |
|
chihao.ou
|
406be7c518
|
fix(subscriptions): reset loading when clearing state
|
2026-09-17 14:59:43 +08:00 |
|
chihao.ou
|
b51f0759d4
|
fix(payment): await in-flight configuration requests
|
2026-09-17 14:58:46 +08:00 |
|
chihao.ou
|
be313735dc
|
fix(ui): keep dialog title IDs unique across instances
|
2026-09-17 14:56:58 +08:00 |
|
chihao.ou
|
017e9e98d1
|
fix(payment): base refund balance warnings on the requested amount
|
2026-09-17 14:56:33 +08:00 |
|
DanielSong
|
fe36f4a914
|
fix: prevent promo code field flash on registration
|
2026-09-16 18:34:52 +08:00 |
|
chihao.ou
|
f8e5a0d94f
|
fix(channels): allow tabbing out of an empty model input
|
2026-09-16 18:19:41 +08:00 |
|
chihao.ou
|
0838e0e610
|
fix(admin): reject negative platform quota limits before saving
|
2026-09-16 18:17:29 +08:00 |
|
chihao.ou
|
98321a054e
|
fix(payment): restore accepted text after invalid amount input
|
2026-09-16 18:17:14 +08:00 |
|
chihao.ou
|
ee9ac3e45f
|
fix(auth): keep TOTP setup digits in sync with state
|
2026-09-16 18:15:28 +08:00 |
|
chihao.ou
|
1a32b91eb2
|
fix(pagination): handle numeric jump input
|
2026-09-16 18:15:12 +08:00 |
|
wucm667
|
a9ed218989
|
feat(redeem): paginate user redemption history
|
2026-09-16 13:19:15 +08:00 |
|
chihao.ou
|
130ba634ad
|
fix(clipboard): report errors thrown by the copy fallback
|
2026-09-15 20:08:45 +08:00 |
|
chihao.ou
|
6a4938bdfb
|
fix(announcements): preserve successful bulk read results
|
2026-09-15 20:06:33 +08:00 |
|
chihao.ou
|
14636d2f0e
|
fix(totp): display normalized API error messages
|
2026-09-15 20:06:18 +08:00 |
|
chihao.ou
|
0ed735d3ba
|
fix(proxies): reuse in-flight test guards during batch testing
|
2026-09-15 20:04:49 +08:00 |
|
chihao.ou
|
21532add46
|
fix(payment): reset the order page when changing status
|
2026-09-15 20:04:35 +08:00 |
|
hezhaoqian1
|
55a95d4c67
|
feat: filter API key groups by provider
|
2026-09-15 11:16:17 +08:00 |
|
Wesley Liddick
|
badfad8b72
|
Merge pull request #6257 from 88766lawrence/fix/oauth-promo-code-6216
fix(auth): preserve promo codes through OAuth registration
|
2026-09-15 09:01:39 +08:00 |
|
Wesley Liddick
|
325213ae66
|
Revert "fix(batch-image): scope access cache to the current user"
|
2026-09-15 08:59:52 +08:00 |
|
Wesley Liddick
|
0a215c9318
|
Merge pull request #7110 from ouchihao/codex/bug-batch-image-access-session
fix(batch-image): scope access cache to the current user
|
2026-09-15 08:59:23 +08:00 |
|
Wesley Liddick
|
1920a7d687
|
Merge pull request #7091 from SavitarC/feat/subscription-bulk-actions
feat: 支持订阅管理批量操作
|
2026-09-15 08:57:27 +08:00 |
|
Wesley Liddick
|
a444551a6d
|
Merge pull request #6654 from ouchihao/codex/issue-2229-register-confirm-password
feat(auth): require password confirmation during registration
|
2026-09-15 08:56:56 +08:00 |
|
Wesley Liddick
|
0bba06d64a
|
Merge pull request #6691 from yan9651688/feat/api-key-bulk-edit
feat(keys): add bulk editing to API key management
|
2026-09-15 08:56:07 +08:00 |
|
Wesley Liddick
|
dd2e6b3680
|
Merge pull request #7076 from Shen-An/fix/antigravity-refresh-warning
fix(admin): surface partial Antigravity refresh warnings
|
2026-09-15 08:54:06 +08:00 |
|
Wesley Liddick
|
f7e959ae5f
|
Merge pull request #7111 from ouchihao/codex/bug-proxy-clear-credentials
fix(proxy): allow explicitly clearing stored credentials
|
2026-09-15 08:52:58 +08:00 |
|
chihao.ou
|
28a4ea914d
|
fix(proxy): allow explicitly clearing stored credentials
|
2026-09-13 17:23:24 +08:00 |
|
chihao.ou
|
5ecfaa4837
|
fix(batch-image): scope access cache to the current user
|
2026-09-13 17:22:56 +08:00 |
|
chihao.ou
|
06af9f871c
|
fix(monitor): honor the selected auto-refresh interval
|
2026-09-13 17:20:56 +08:00 |
|
SavitarC
|
3d6c207723
|
feat: 支持订阅管理批量操作
|
2026-09-13 11:49:03 +08:00 |
|
Wesley Liddick
|
bdb42e22f8
|
Merge pull request #7064 from xlplbo/codex/openai-ws-v2-pool-capacity
fix(openai-ws): 对齐新版 ctx_pool 连接容量计算
|
2026-09-12 20:13:03 +08:00 |
|
Wesley Liddick
|
9383e0b154
|
Merge pull request #7057 from Sjeary/codex/issue-7042-max-context-window
fix(codex): 保留本地模型目录的最大上下文窗口
|
2026-09-12 20:11:40 +08:00 |
|
Wesley Liddick
|
c7ed614240
|
Merge pull request #7001 from SavitarC/feat/ops-token-stats-all-platforms
feat(ops): 扩展 Token 请求统计至所有平台
|
2026-09-12 19:34:45 +08:00 |
|
Wesley Liddick
|
a59f0c7fac
|
Merge pull request #5833 from xuhaihan/fix/openai-fast-missing-tier
fix(openai): force priority when fast tier is omitted
|
2026-09-12 19:31:21 +08:00 |
|
Wesley Liddick
|
0a378f3432
|
Merge pull request #7026 from ouchihao/codex/bug-key-quota-reset-state
fix(keys): sync status after resetting quota
|
2026-09-12 19:30:40 +08:00 |
|