8 Commits

Author SHA1 Message Date
929ee0e319 feat: 添加客户专属监控 - 组织级每日/每月模型调用统计
- 新增5个后端函数: customer_daily/monthly_models, daily/monthly_summary, daily_trend
- 新增customer_usage.ui主页面: 4个汇总卡片 + 日趋势折线图 + 日/月模型柱状图
- 新增3个API端点(.dspy)和3个图表UI组件
- index.ui添加客户专属监控入口卡片
- RBAC权限配置已更新(load_path.py)
2026-05-31 08:07:25 +08:00
69b7ec5cd0 feat: add user-level model usage chart (我的今日模型使用)
- Add get_user_today_models() function to load_dashboard.py
  Shows current user's today model call counts and amounts
- Create api/user_today_models.dspy endpoint
- Create user_today_models_chart.ui ChartBar widget (30s auto-refresh)
- Add '我的今日模型使用' card section to index.ui with refresh button
- Register new paths in load_path.py (logined permission)
2026-05-31 08:00:22 +08:00
61a1b2b2fa feat: integrate bricks.Router into shell
- shell_theme.js: call bricks.Router.init() with sage_main_content target
- Remove standalone spa_router.js (now built into bricks)
- Remove spa_router.js from load_path.py RBAC
2026-05-27 15:19:19 +08:00
0032e364b1 feat: add spa_router.js RBAC permission (any) 2026-05-27 14:10:14 +08:00
f74f8aed8d fix: restore shell_theme.css/js permissions in load_path.py (ahserver still requires RBAC check for auto-served static files) 2026-05-26 08:40:08 +08:00
0f470fca61 fix: remove manual css/js references from shell.ui and load_path.py
- Remove Html widget in shell.ui that manually loaded shell_theme.css/js
  (ahserver auto-serves wwwroot js/css files)
- Remove shell_theme.css/js from load_path.py permission list
  (ahserver handles static resources automatically)
2026-05-26 07:36:52 +08:00
f2b2e5d6e7 fix: set shell_theme.css/js to 'any' role (static resources need public access) 2026-05-25 22:32:06 +08:00
fd8443f445 feat: add scripts/load_path.py for RBAC permission initialization
- Add scripts/load_path.py with all 28 wwwroot paths
- menu.ui set to 'any' role (public nav access)
- All other paths set to 'logined' role (dashboard visible to authenticated users)
- Idempotent: skips already-registered paths
2026-05-25 22:24:48 +08:00