dark
5aaba71819
feat: 菜单拖拽排序、侧边栏树形结构、系统密钥管理、API 文档
- 菜单管理支持拖拽排序(dnd-kit)
- 侧边栏改为递归树形渲染,支持折叠展开
- 修复 RouteGuard 嵌套菜单路径匹配
- 修复 getcurrentmenuslogic 祖先节点回溯保证树形完整
- 新增系统密钥 CRUD(后端 4 接口 + Casbin admin 策略)
- AI 模型管理页新增"系统密钥"tab(仅 admin 可见)
- 生成 API 接口文档(api-reference.md + openapi.yaml)
- 清理根目录截图和测试临时文件
- .gitignore 增加 uploads/、test-results/、__pycache__/
1 month ago
dark
6f002f438b
feat: Phase 4 — CSV bill export + Wenxin/ERNIE provider
- Add CSV export endpoint (GET /ai/usage/export) with UTF-8 BOM for Excel
- Implement Wenxin (Baidu ERNIE) provider with Chat + ChatStream SSE
- Add wenxin case to provider factory
- Seed wenxin provider + ERNIE 4.0/3.5 models
- Add Casbin policy for usage export
- Add export button to frontend AIUsagePage
1 month ago
dark
5e4efc2a0e
feat: Phase 3 billing system — quota management, usage records, stats
Backend:
- Add quota/usage/stats API types to ai.api
- Add 4 new routes: GET /ai/quota/records (user), GET /ai/quotas,
POST /ai/quota/recharge, GET /ai/stats (admin)
- Add model methods: AIUserQuotaFindList, AIUserQuotaRecharge,
AIUsageRecordFindList, ModelStats, DailyStats, TotalStats
- Implement quota list, recharge, usage records, stats logic
- Add Casbin policies for new endpoints
- Add menu seeds: 用量统计, 额度管理
Frontend:
- Add quota/usage/stats TypeScript types and API client methods
- Create AIUsagePage with stats cards + usage records table
- Create AIQuotaManagementPage with quota table + recharge modal
- Register routes, page titles, sidebar icons (BarChart3, Wallet)
1 month ago
dark
899288180a
feat: Phase 2 AI management CRUD — providers, models, API keys
Backend:
- Add provider/model/key types and routes to ai.api + base.api
- Generate 11 handler + logic stubs via goctl
- Implement provider CRUD logic (list/create/update/delete)
- Implement model admin CRUD logic (create/update/delete)
- Implement API key CRUD logic (list/create/update/delete)
- Add Casbin policies for key management and admin endpoints
- Add menu seeds with proper icons (Cpu, Key, MessageSquare)
Frontend:
- Add provider/model/key TypeScript types and API client methods
- Create AIModelManagementPage with provider + model tabs
- Create AIKeyManagementPage with key CRUD and provider dropdown
- Register routes and page titles for /ai/models and /ai/keys
- Add Cpu, Key, MessageSquare icons to Sidebar icon map
1 month ago
dark
057cb12eba
fix: seedRoleMenus adds missing menus + SSE error display
- seedRoleMenus now adds new menu items to existing roles
- AIChatPage shows SSE error messages in assistant bubble
1 month ago
dark
9f7466064c
feat: seed AI providers, models, Casbin policies, menu
- 5 providers: OpenAI, Claude, Qwen, Zhipu, DeepSeek
- 9 models with pricing and capabilities
- Casbin policies for AI routes (user role)
- AI 对话 menu item
1 month ago
dark
332f2cf59b
feat: add 7 AI entity models + AutoMigrate
- AIProvider, AIModel, AIApiKey (platform config)
- AIConversation, AIChatMessage (chat data)
- AIUsageRecord, AIUserQuota (billing data)
- AutoMigrate updated in servicecontext.go
1 month ago
dark
38f4e740fa
feat: implement all backend logic for menu, role, org management
1 month ago
dark
d2cb7fa8c8
feat: login by phone/username, register requires phone, seed uses username
1 month ago
dark
8a12ad04db
Initial commit: Add project structure and .gitignore
2 months ago