assets-ai/README.md

62 lines
2.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# IT 设备资产管理系统
基于 Next.js + SQLite 的 IT 设备资产管理系统CMDB域名为 `assets.tlyq.ai`,管理 GPU 服务器、存储服务器等 120+ 台设备的硬件信息,通过 REST API 对外提供服务。
## 技术栈
| 分类 | 技术 |
|------|------|
| 框架 | Next.js 15 + TypeScript |
| UI | React 19 + Tailwind CSS v4 + lucide-react |
| 数据库 | SQLitebetter-sqlite3WAL 模式) |
| 认证 | JWTcookie 方式)+ 自定义 session + API Key |
## 功能
- 设备 CRUD创建、编辑、删除、搜索、筛选
- 设备状态管理(腾讯使用 / 已回收(退役) / 备件 / 借用 / 故障)
- 设备详情(含硬件信息、历史工单卡片)
- 工单历史联动(调用 issue-ai API 获取同 IP 历史工单)
- API Key 管理(支持服务间调用认证)
- 用户/角色权限管理
- Excel 导出设备清单
## 设备字段
| 字段 | 说明 |
|------|------|
| node_name | 节点名称 |
| serial_number | 序列号 |
| device_type | 设备类型GPU服务器 / 存储服务器) |
| business_ip | 业务 IP |
| hdm_ip | HDM 管理 IP |
| manufacturer | 厂商 |
| device_model | 设备型号 |
| status | 设备状态 |
| cabinet | 机柜 |
| asset_number | 资产编号 |
| remark | 备注 |
## API 路由
| 方法 | 路径 | 说明 |
|------|------|------|
| GET/POST | `/api/assets` | 设备列表 / 创建设备 |
| GET/PUT/DELETE | `/api/assets/[id]` | 单个设备操作 |
| GET/POST | `/api/api-keys` | API Key 管理 |
| GET/POST | `/api/users` | 用户管理 |
| GET | `/api/stats` | 统计概览 |
……
## 与 issue.tlyq.ai 联动
assets-ai 向 issue-ai 提供设备信息issue-ai 在工单管理中根据 IP 自动关联设备并展示详情卡片。同时 assets-ai 设备详情页调用 issue-ai API 展示同 IP 历史工单。
```
issue-ai ──→ GET /api/assets?search=IP (获取设备信息)
assets-ai ──→ GET /api/tickets/by-asset?ip=X (获取历史工单)
```
认证方式:双向 API Key`Authorization: Bearer ak_xxx`)。