萝卜
|
7b143e1a11
|
Admin subscriptions: batch mark expired with safety guards
|
2026-03-17 00:27:04 +08:00 |
|
萝卜
|
4fb0d6b050
|
chore(subscription): disable-on-submit for batch activate form
|
2026-03-16 20:53:52 +08:00 |
|
萝卜
|
44b916ecb3
|
fix(subscription): syncable orders link locks unsynced scope
|
2026-03-16 20:20:59 +08:00 |
|
萝卜
|
1c5f56bee0
|
chore(admin-site-subscription): failed reason keyword max len uses config
|
2026-03-16 18:11:31 +08:00 |
|
萝卜
|
d9e6ecec4a
|
refactor(site-subscriptions): refine tool help copy for attach mode
|
2026-03-16 11:37:05 +08:00 |
|
萝卜
|
bc7300d61b
|
refactor(site-subscriptions): hide renew tool link in attach mode
|
2026-03-16 11:25:53 +08:00 |
|
萝卜
|
ff676333f3
|
refactor(site-subscriptions): dedupe show page back actions
|
2026-03-16 11:05:00 +08:00 |
|
萝卜
|
e0b1a707fb
|
chore(admin-ui): hide renew tool link in expiry view
|
2026-03-16 10:05:19 +08:00 |
|
萝卜
|
50fb0486e0
|
refactor(admin-ui): dedupe subscription show page header order links
|
2026-03-16 09:53:47 +08:00 |
|
萝卜
|
32884c7c42
|
chore(admin-ui): unify export button label for plans and subscriptions
|
2026-03-16 07:30:19 +08:00 |
|
萝卜
|
99985a0755
|
chore(admin-ui): dedupe subscription show platform order links
|
2026-03-16 07:20:20 +08:00 |
|
萝卜
|
999f6a2b1b
|
chore(admin-ui): site subscription show uses page header
|
2026-03-16 04:57:27 +08:00 |
|
萝卜
|
0600f52b75
|
chore(admin-ui): site subscriptions index uses page header
|
2026-03-16 04:55:02 +08:00 |
|
萝卜
|
1b21865820
|
chore(admin-ui): subscription show related orders use list card and admin pagination
|
2026-03-16 04:09:40 +08:00 |
|
萝卜
|
7f331faf04
|
chore(admin-ui): add admin pagination template and styles
|
2026-03-16 01:55:22 +08:00 |
|
萝卜
|
7d291a7906
|
chore(admin-ui): unify list table empty state styling and class usage
|
2026-03-16 01:40:28 +08:00 |
|
萝卜
|
6cb53435b1
|
chore(admin-ui): introduce list-card component and apply to subscriptions index
|
2026-03-16 01:13:32 +08:00 |
|
萝卜
|
5cc48e14a1
|
chore(admin-ui): reuse filters-card on site subscriptions index
|
2026-03-16 01:08:55 +08:00 |
|
萝卜
|
0b9f1dd4e5
|
feat(admin-ui): 订阅/套餐筛选区可折叠并记忆状态
|
2026-03-15 18:01:34 +08:00 |
|
萝卜
|
dbe90c1703
|
feat(admin): 订阅绑定按钮防重复提交(JS disable-on-submit)
|
2026-03-15 17:29:41 +08:00 |
|
萝卜
|
973576f045
|
feat(admin): 订阅列表支持一键绑定到订单(续费缺订阅治理)
|
2026-03-15 17:09:11 +08:00 |
|
萝卜
|
46f1a7a2ff
|
feat(admin): 订阅详情页补齐续费缺订阅治理入口(同站点/同套餐)
|
2026-03-15 08:01:35 +00:00 |
|
萝卜
|
b7c119097b
|
订阅详情续费下单链接补齐 require_subscription=1 并更新测试
|
2026-03-15 03:26:29 +00:00 |
|
萝卜
|
c4df488e76
|
SiteSubscription index: row renew links carry require_subscription flag
|
2026-03-15 03:18:07 +00:00 |
|
萝卜
|
9872296968
|
SiteSubscription index: refine renewal entry copy and align tests
|
2026-03-15 02:47:55 +00:00 |
|
萝卜
|
015d3bec25
|
SiteSubscription index: renewal create links carry require_subscription flag
|
2026-03-15 02:29:28 +00:00 |
|
萝卜
|
41463407aa
|
Expiry governance: nudge renewal requires subscription context
|
2026-03-15 02:23:19 +00:00 |
|
萝卜
|
09cb6e9c6d
|
Subscriptions: add renewal CTA on expiry governance view
|
2026-03-15 01:03:50 +00:00 |
|
萝卜
|
a88a07755b
|
Subscriptions: add expiry governance block on index
|
2026-03-15 00:55:09 +00:00 |
|
萝卜
|
e6779b2b13
|
Site subscriptions show: add status governance form
|
2026-03-14 23:37:06 +00:00 |
|
萝卜
|
6c5705443d
|
Site subscriptions: add status toggle action on index
|
2026-03-14 23:34:31 +00:00 |
|
萝卜
|
0b5b990f5d
|
Site subscriptions index: use BackUrl for orders count link
|
2026-03-14 23:15:22 +00:00 |
|
萝卜
|
918dc8035e
|
Site subscriptions show: build index link via BackUrl helpers
|
2026-03-14 23:04:58 +00:00 |
|
萝卜
|
1e6e15a4ec
|
Site subscriptions show: build self filter links via BackUrl::currentPathWithQuery
|
2026-03-14 22:59:17 +00:00 |
|
萝卜
|
e378973f05
|
Subscriptions: unify back safety guard in show
|
2026-03-14 22:42:47 +00:00 |
|
萝卜
|
4ec66d644c
|
feat(subscriptions): add cross links in status summary cards
|
2026-03-14 22:25:32 +00:00 |
|
萝卜
|
8c04a8fef8
|
feat(subscriptions): add cross links between expiry summary cards
|
2026-03-14 22:18:23 +00:00 |
|
萝卜
|
c1341c15b6
|
feat(subscriptions): make summary cards clickable for governance navigation
|
2026-03-14 21:59:33 +00:00 |
|
萝卜
|
c37e7a8fa5
|
refactor(subscriptions): use BackUrl::withBack for links on index
|
2026-03-14 20:14:33 +00:00 |
|
萝卜
|
3975a87cb9
|
refactor(subscriptions): use BackUrl::withBack for platform order links on show
|
2026-03-14 19:59:26 +00:00 |
|
萝卜
|
956e177544
|
refactor: BackUrl::selfWithoutBack 统一 selfWithoutBack 构造并修复 currentQuery 依赖
|
2026-03-14 18:52:28 +00:00 |
|
萝卜
|
b759a87a57
|
refactor: BackUrl::withBack 统一 allUrl 生成(清空筛选但保留 back)
|
2026-03-14 18:46:18 +00:00 |
|
萝卜
|
0f8bc04020
|
refactor: BackUrl 增加 currentPathQuickFilter 并复用到收费闭环列表页
|
2026-03-14 18:37:47 +00:00 |
|
萝卜
|
3ffc87f78c
|
refactor: 抽出 BackUrl::sanitizeForLinks 统一 back 安全护栏
|
2026-03-14 18:23:00 +00:00 |
|
萝卜
|
2d380e180b
|
回归修复:行级提示链接去掉back参数 + 订阅提示文案补前缀
|
2026-03-14 17:44:35 +00:00 |
|
萝卜
|
ef8a077442
|
订阅详情:统一safeBackForLinks护栏变量(去重)
|
2026-03-14 17:05:58 +00:00 |
|
萝卜
|
c093a44954
|
订阅列表:复用safeBackForLinks渲染返回链接(去重)
|
2026-03-14 16:53:07 +00:00 |
|
萝卜
|
1439e0da62
|
订阅筛选表单:仅透传安全back(补测试)
|
2026-03-14 16:19:31 +00:00 |
|
萝卜
|
2d10c80f2b
|
订阅页 back 安全护栏:快捷筛选仅透传安全 back(补测试)
|
2026-03-14 15:45:20 +00:00 |
|
萝卜
|
93624ec71b
|
订阅详情页:返回订阅列表链接也保留上下文
|
2026-03-14 15:19:17 +00:00 |
|