assets-ai/CHANGELOG.md

4.3 KiB
Raw Blame History

变更日志

2026-04-30

  • [新增] 创建 README 文档

2026-04-29

  • [新增] 设备管理列表支持鼠标拖拽自定义列宽(首次拖拽自动快照列宽,最小 60px支持自动换行
  • [优化] 设备状态下拉框改为「腾讯使用/图灵使用/闲置」默认选项,支持自定义新增状态
  • [优化] 数据库 106 台设备状态从「在用」迁移为「腾讯使用」
  • [修复] 设备详情页/列表页「腾讯使用」状态徽章颜色显示为灰色的问题
  • [优化] 列头居中显示,排序/筛选模式切换按钮与排序图标左右对称布局
  • [修复] 表头 overflow-hidden 导致筛选下拉框被裁切的问题
  • [优化] 筛选弹框宽度改为自适应(w-fit min-w-48 max-w-80
  • [优化] 排序/筛选图标改为可点击,直接点击图标即可触发排序或筛选
  • [修复] 列头排序图标使用 <button> 嵌套在列名 <button> 内导致 HTML 非法嵌套错误,改为 <span>

2026-04-28

  • [部署] 生产环境 txjp 服务器更新 break-all 序列号换行修复,验证通过
  • [修复] 资产详情页序列号等长字符串不会自动换行,给 Field 组件值列添加 break-all 样式
  • [调整] 工单接口 Ticket 类型移除 ticket_no 字段,同步 issue-ai 工单号改造
  • [修复] 生产环境设备详情页「故障历史」中工单链接和"查看全部工单记录"按钮错误使用 localhost:5176
  • [修复] AssetTicketHistory.tsxISSUE_URL fallback 值从 localhost:5176/tickets 改为 https://issue.tlyq.ai/tickets
  • [修复] 未登录时从 issue-ai 工单详情点击业务 IP → assets-ai 登录后错误跳转仪表盘。根因:跨端口 cookie 泄露(同 localhost 的不同端口共享 session cookieissue-ai JWT payload 用 id 字段而 assets-ai 用 userIdmiddleware 放行后 layout.tsx 的 redirect('/login') 丢失了 redirect 参数
    • middleware.ts:增加 JWT payload userId 检查,无效 cookie 清除后重定向(携带 redirect 参数)
    • layout.tsx:从 x-original-pathname header 读取原路径,redirect('/login') 时携带 redirect 参数
  • [修复] 资产详情页「故障历史」显示"会话已过期"。根因:issue-client.ts 缺少 API Key 只能转发 cookieissue-ai 侧 JWT 格式不兼容
    • 配置本地测试环境 API Key 双向认证(ISSUE_API_KEY + ALLOWED_API_KEYS
    • issue-client.tsfallback 默认值从 127.0.0.1 改为 localhost
  • [文档] 更新 CLAUDE.md:补充 API Key 双向认证说明和本地 .env.local 配置示例
  • [修复] 同一浏览器同时登录两个系统,任一退出后另一个也被退出。根因:两个系统共用 session cookie 名且同 localhost
    • cookie 名改为 session_assetsassets-aisession_issueissue-ai互不干扰
    • 云端部署无需额外操作(域名不同天然隔离,但改名保持一致),用户重新登录即可

2026-04-27

  • [新增] 资产核心 APICRUD + 分页 + 搜索 + 高级筛选)
  • [新增] 资产列表页面(/assets),支持多选、筛选、排序
  • [新增] 设备详情页面(/assets/[id]),全硬件配置分区卡片展示
  • [新增] 新增/编辑设备页面
  • [新增] 批量编辑页面(/assets/batch-edit),安全限制仅允许部分字段
  • [新增] Excel 模板导入(/assets/import),按 SN 匹配新增/更新
  • [新增] 设备导入脚本(import-servers.ts
  • [新增] 仪表盘统计数据(/api/stats):总数/状态/类型/厂商/机房/保修预警
  • [新增] 调用 issue.tlyq.ai API 获取设备历史工单,资产详情页展示历史工单卡片

2026-04-25

  • [新增] 仪表盘页面(/dashboard),资产概览图表

2026-04-24

  • [新增] 项目初始化,基于 Next.js 15.1 + SQLitestandalone 输出模式)
  • [新增] 认证系统JWT 自实现 + API Key 双模式)
  • [新增] 用户管理(/settings/users和角色权限系统admin/editor/viewer
  • [新增] API Key 管理页面(/settings/api-keys),支持创建/删除 KeySHA-256 存储)
  • [新增] 数据库初始化脚本init-db.ts预置角色和默认管理员账号
  • [新增] Excel 导入模板(服务器信息-issue.xlsx
  • [新增] Docker 部署配置(两阶段 alpine 构建)