萝卜
|
842eeb3e39
|
refactor(backurl): add mergeQueryToCurrentPath for safe self links
|
2026-03-17 04:20:17 +08:00 |
|
萝卜
|
6cd8c34245
|
Governance: block batch BMPA when renewal missing subscription filter present
|
2026-03-17 01:40:51 +08:00 |
|
萝卜
|
810c4894fd
|
Governance UI: block batch BMPA in renewal missing subscription scope
|
2026-03-17 01:37:32 +08:00 |
|
萝卜
|
89f79f5e90
|
Governance: block batch mark activated when renewal missing subscription filter present
|
2026-03-17 01:34:51 +08:00 |
|
萝卜
|
387b18d32b
|
Governance UI: block batch mark activated in renewal missing subscription scope
|
2026-03-17 01:32:52 +08:00 |
|
萝卜
|
622c9be21e
|
Chore: remove duplicate refund_status guard in batchMarkActivated safety valves
|
2026-03-17 01:27:51 +08:00 |
|
萝卜
|
3cba715f01
|
Governance: block batch activate subscriptions when renewal missing subscription filter present
|
2026-03-17 01:24:47 +08:00 |
|
萝卜
|
8e93437748
|
Governance UI: block batch activate subscriptions in renewal missing subscription scope
|
2026-03-17 01:19:51 +08:00 |
|
萝卜
|
44f3e97a84
|
Chore: remove duplicate refund_status guard in PlatformOrderToolsGuard
|
2026-03-17 01:09:36 +08:00 |
|
萝卜
|
aca99d1f30
|
Admin subscriptions: expiring 7d add merchant+plan top10 and renewal CTA
|
2026-03-17 00:54:17 +08:00 |
|
萝卜
|
03d30f0c7d
|
Admin subscriptions: add expiring 7d merchant top10 reminder list
|
2026-03-17 00:39:50 +08:00 |
|
萝卜
|
7b143e1a11
|
Admin subscriptions: batch mark expired with safety guards
|
2026-03-17 00:27:04 +08:00 |
|
萝卜
|
0e8a9797b9
|
Governance: block clear sync errors when synced_only present
|
2026-03-17 00:13:19 +08:00 |
|
萝卜
|
98fa529d01
|
Governance: block clear BMPA errors when sync_status/synced_only present
|
2026-03-17 00:03:32 +08:00 |
|
萝卜
|
1e7513a2c5
|
Governance UI: block clear BMPA errors when sync filters present
|
2026-03-17 00:01:13 +08:00 |
|
萝卜
|
18ea639583
|
chore(governance): block batch mark activated when refund_status=has
|
2026-03-16 23:35:39 +08:00 |
|
萝卜
|
485a8a639d
|
chore(governance): block batch BMPA when refund_status=has
|
2026-03-16 23:33:10 +08:00 |
|
萝卜
|
9dc281f48e
|
chore(governance): block batch mark activated when receipt none/refund has
|
2026-03-16 23:26:29 +08:00 |
|
萝卜
|
75d64195d6
|
chore(governance): block batch mark activated when reconcile/refund inconsistent
|
2026-03-16 23:16:25 +08:00 |
|
萝卜
|
a26be5de9e
|
chore(governance): block batch activate when refund_status=has
|
2026-03-16 23:03:38 +08:00 |
|
萝卜
|
8063b8ae9d
|
chore(governance): block batch activate when syncable_only conflicts with synced_only
|
2026-03-16 23:00:27 +08:00 |
|
萝卜
|
d68d0523b1
|
chore(governance): block batch BMPA when sync-governance filters present
|
2026-03-16 22:54:19 +08:00 |
|
萝卜
|
68735ee914
|
refactor(governance-ui): align clear sync errors guard with backend scopes
|
2026-03-16 22:44:15 +08:00 |
|
萝卜
|
502c397ec2
|
fix(governance-ui): align clear error tool guards with backend
|
2026-03-16 22:37:46 +08:00 |
|
萝卜
|
3f7ab0ed94
|
feat(admin-dashboard): add rank coverage meta for merchant revenue top5
|
2026-03-16 22:01:06 +08:00 |
|
萝卜
|
6aa58d5369
|
chore(seed): add demo merchants for dashboard rank; tighten batch mark activated UI guard
|
2026-03-16 21:51:29 +08:00 |
|
萝卜
|
314563a8d5
|
chore(governance): block batch mark activated when filters conflict
|
2026-03-16 21:46:08 +08:00 |
|
萝卜
|
968cba3c08
|
chore(governance): guard clear bmpa errors when filters not bmpa scope
|
2026-03-16 21:30:51 +08:00 |
|
萝卜
|
d3793d062a
|
chore(governance): guard clear sync errors when filters conflict
|
2026-03-16 21:28:26 +08:00 |
|
萝卜
|
512de34da4
|
chore(governance): block batch activate when syncable_only conflicts with failed filters
|
2026-03-16 21:05:13 +08:00 |
|
萝卜
|
6790771364
|
chore(governance): block batch activate when syncable_only conflicts with sync status
|
2026-03-16 20:59:52 +08:00 |
|
萝卜
|
45c1dbf2b9
|
fix(subscription): syncable stats exclude sync failed orders
|
2026-03-16 20:47:10 +08:00 |
|
萝卜
|
abb0f2a38f
|
fix(subscription): syncable filter excludes sync failed orders
|
2026-03-16 20:41:53 +08:00 |
|
萝卜
|
2f4e727c1b
|
fix(governance): batch activate subscriptions excludes failed and dirty renewal orders
|
2026-03-16 20:15:33 +08:00 |
|
萝卜
|
97326e9922
|
fix(platform-orders): syncable_only excludes sync failed orders
|
2026-03-16 19:40:23 +08:00 |
|
萝卜
|
763c706cf3
|
fix(admin-dashboard): paid_pending count aligns with unsynced scope
|
2026-03-16 19:23:42 +08:00 |
|
萝卜
|
d7c4fc9d17
|
fix(platform-orders): syncable_only filter should only apply when value is 1
|
2026-03-16 19:15:11 +08:00 |
|
萝卜
|
dbb88f59f6
|
chore(governance): batch mark activated requires unsynced scope
|
2026-03-16 19:04:40 +08:00 |
|
萝卜
|
98004a0a1c
|
feat(admin-dashboard): recent platform orders show merchant and plan meta
|
2026-03-16 16:19:36 +08:00 |
|
萝卜
|
a9f1185f84
|
feat(admin-dashboard): clarify plan share top5 meta with total and coverage
|
2026-03-16 13:49:56 +08:00 |
|
萝卜
|
a9d2d5e749
|
refactor(admin-platform-order): centralize tool guard reasons
|
2026-03-16 13:28:14 +08:00 |
|
萝卜
|
94e55d9ac2
|
fix(admin-dashboard): scope plan share to last 7 days
|
2026-03-16 10:58:54 +08:00 |
|
萝卜
|
7f331faf04
|
chore(admin-ui): add admin pagination template and styles
|
2026-03-16 01:55:22 +08:00 |
|
萝卜
|
0a58204799
|
platform orders: add created_at range filter (created_from/to)
|
2026-03-16 00:30:09 +08:00 |
|
萝卜
|
56ad502aac
|
dashboard: add quick links for reconcile mismatch and refund inconsistent
|
2026-03-15 23:50:07 +08:00 |
|
萝卜
|
27753acb71
|
dashboard: add quick links for BMPA failed and paid-no-receipt orders
|
2026-03-15 23:43:39 +08:00 |
|
萝卜
|
e92636dd5b
|
feat: dashboard merchant revenue rank top5 7d
|
2026-03-15 23:08:29 +08:00 |
|
萝卜
|
b1e20c5138
|
feat: dashboard add platform order trend 7d
|
2026-03-15 22:56:22 +08:00 |
|
萝卜
|
3484402ea8
|
fix: system_configs autoload 在 DB 不可用时不阻断启动
|
2026-03-15 20:08:46 +08:00 |
|
萝卜
|
452ac450c8
|
feat(admin): 仪表盘可同步入口显示计数(口径对齐平台订单)
|
2026-03-15 19:53:24 +08:00 |
|