feat: 云账号创建表单 — 修复凭证反序列化bug + 添加账号弹窗
- 后端: 重构 CreateCloudAccount 用独立 createCloudAccountRequest struct, 修复 AccessKey/SecretKey 因 json:"-" 导致反序列化被跳过、凭证永远为空的 bug (Go Pitfall #8) - 前端: 添加账号按钮接入 Dialog 表单 (名称/云平台/AccessKey/SecretKey/月费用/状态), 移除无 handler 的刷新/编辑按钮,新增名称必填校验
This commit is contained in:
1 parent
5db69e8abc
commit
01a9bebb0c
3 files changed
+223
-14
No files matched your search
+17
-1
@@ -171,7 +171,23 @@ cd ~/devops/aiops
|
||||
- 浏览器验证: 仪表盘「本月云成本」显示 ¥95,200(真实计算值)✅
|
||||
- 健康检查 /health 正常 ✅
|
||||
- **下一步建议**:
|
||||
- 云账号「添加账号」按钮弹窗表单实现(当前点击无响应,无法录入月费用)
|
||||
- ~~云账号「添加账号」按钮弹窗表单实现(当前点击无响应,无法录入月费用)~~ ✅ 已完成
|
||||
- K8s 集群拓扑图(TopologyView)前后端数据联调
|
||||
- 告警「通知配置」按钮功能实现(通知渠道管理弹窗)
|
||||
- 仪表盘「+12.5%」等增长率标签从硬编码改为基于 month_trend 真实计算
|
||||
- 云账号「编辑」功能(需后端新增 PUT /cloud-accounts/:id 端点)
|
||||
|
||||
## 2026-06-14 07:10 自动推进
|
||||
|
||||
- **任务**: 云账号创建表单实现 — 修复后端创建接口无法接收凭证的 bug + 前端添加账号弹窗表单
|
||||
- **修改**:
|
||||
- `backend/internal/api/handlers/server.go` — 重构 `CreateCloudAccount`:新增独立的 `createCloudAccountRequest` struct(遵循 Go Pitfall #8)。原代码直接绑定 `models.CloudAccount`,但 AccessKey/SecretKey 字段标记 `json:"-"` 会导致反序列化时被跳过,凭证永远为空。现用独立 request struct 接收后映射到 model;新增 name/provider 非空校验,status 默认 active;补充 `strings` 导入
|
||||
- `frontend/src/components/cloud/CloudAccountManager.tsx` — 「添加账号」按钮接入创建表单 Dialog(账号名称/云平台/AccessKey/SecretKey/月费用/状态),提交调用 cloudApi.createAccount 后刷新列表;移除无 handler 的刷新/编辑按钮(编辑需后端新增 PUT 端点,留待后续);按钮 disabled 校验(名称必填)
|
||||
- **结果**:
|
||||
- `go build ./cmd/` 编译通过 ✅
|
||||
- `npx tsc --noEmit` 类型检查通过 ✅
|
||||
- `npm run build` 构建通过 ✅
|
||||
- API 验证: POST /cloud-accounts → Code 200,DB 验证 access_key/secret_key 正确持久化(原 bug 下为空字符串)✅
|
||||
- 联动验证: 新增账号后 dashboard month_cost 实时更新(95200→100200)✅
|
||||
- 浏览器 UI 验证: 添加账号弹窗正常打开、字段填写、提交后列表刷新显示新账号 ✅
|
||||
- 服务运行中: 后端:8080 + 前端:5173 ✅
|
||||
Reference in new issue
Block a user