Commit Graph

331 Commits

Author SHA1 Message Date
chengkai3 5835de1601 feat:[FL-163][角色管理页面去掉重置筛选按钮,搜索按钮用主题色]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 23:48:40 +08:00
chengkai3 864fd5e239 fix:[FL-161][用户管理页面操作列宽度固定在120px]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 23:48:10 +08:00
chengkai3 dd15768623 feat:[FL-160][角色管理页面表单过滤改成后台查询]
- 后端API新增keyword查询参数支持角色搜索
- 在数据库层面实现基础过滤优化性能
- 前端移除客户端过滤逻辑改为调用后端API
- 添加搜索按钮和回车搜索功能

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 23:23:38 +08:00
chengkai3 1384c0c449 fix:[FL-157][新建用户表单改为单列展示]
- 移除新建用户表单的grid双列布局
- 表单字段现在以单列形式垂直排列展示

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 23:14:14 +08:00
chengkai3 371d1fdfe1 fix:[FL-159][登录后跳转到菜单数据中的第一个菜单]
- 修改登录后的重定向逻辑,从硬编码的 /users 改为动态获取用户菜单数据的第一个菜单路径
- 新增 findFirstMenuPath 函数递归查找第一个有效菜单路径
- 新增 normalizeMenuTreePaths 函数标准化菜单路径
- 在 useEffect 中调用 /api/v1/admin/me/menus 接口获取菜单数据
- 如果菜单获取失败或没有有效路径,仍回退到 /users 作为默认页面

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 23:12:37 +08:00
chengkai3 22e316850e fix:[FL-157][移除用户ID列的标签样式]
- 移除用户ID列的Typography.Text code渲染
- 用户ID现在以普通文本形式显示

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 23:06:24 +08:00
chengkai3 1c1843e180 fix:[FL-157][修复搜索无结果时操作列宽度变宽问题]
- 添加tableLayout="fixed"属性强制固定表格布局
- 确保即使数据为空时,操作列宽度也保持180px不变

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 23:02:19 +08:00
chengkai3 9d6bd733a2 fix:[FL-157][搜索无结果时保持分页组件显示]
- 设置分页total最小值为1,确保即使数据为0时分页组件也显示
- showTotal显示真实的数据条数,不受最小值影响

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 22:59:26 +08:00
chengkai3 cf5bbc3548 fix: [FL-158] 去掉登录页面的立即注册
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 22:46:19 +08:00
chengkai3 c64a0584f3 fix:[FL-157][去掉编辑用户状态字段必填校验]
- 移除状态字段的required校验规则
- 允许编辑用户时状态为可选项

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 22:43:44 +08:00
chengkai3 9f869284d2 feat:[FL-157][编辑用户表单增强]
- 编辑用户时添加用户ID字段并可编辑
- 调整表单字段顺序:用户ID、用户名、邮箱、状态
- 邮箱改为非必填项
- 用户ID添加唯一性校验,防止与已有用户冲突
- 更新API payload支持new_user_id字段

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 22:31:14 +08:00
chengkai3 6cb8cf8cba fix:[FL-157][状态过滤清空时不显示all]
- 修改statusFilter类型为可选值,去除all类型
- 清空时保持undefined状态,不回退到all
- 添加placeholder显示全部提示
- 调整查询逻辑仅在statusFilter有值时添加status参数

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 22:01:46 +08:00
chengkai3 fcff08afce fix:[FL-150][给ant-card增加height:100%确保占满父容器]
在所有管理页面的AntCard/Card组件上添加style={{ height: '100%' }},
确保卡片占满父容器的高度,解决页面底部padding看起来比顶部多的问题。

修改文件:
- web/src/app/admin/users/page.tsx
- web/src/app/admin/menus/page.tsx
- web/src/app/admin/system-params/page.tsx
- web/src/app/admin/task-monitor/page.tsx
- web/src/app/admin/syslog/page.tsx
- web/src/app/admin/workers/page.tsx
- web/src/app/admin/atp-models/page.tsx
- web/src/app/admin/roles/page.tsx
- web/src/app/admin/scheduled-tasks/page.tsx
- web/src/app/admin/elevation/page.tsx
- web/src/app/admin/system-messages/page.tsx

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 21:29:15 +08:00
chengkai3 e8c6de3c6d fix:[FL-155][确保所有页面分页组件始终显示]
为所有管理页面的分页组件添加 hideOnSinglePage: false 配置,
确保即使在数据为空或只有一页时,分页组件也保持可见。

涉及页面:
- elevation (高程数据)
- fault-recurrence (故障再现)
- fl-analysis (雷电流分析)
- lightning-currents (雷电流)
- lightning-distribution (地闪密度)
- menus (菜单管理)
- power-lines (线路管理)
- roles (角色管理)
- scheduled-tasks (定时任务)
- syslog (系统日志)
- system-messages (系统消息)
- system-params (系统参数)
- task-monitor (任务监控)
- users (用户管理)
- workers (Worker监控)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 21:25:53 +08:00
chengkai3 dacead3751 feat:[FL-157][用户管理页面样式优化]
- 邮箱列宽度从240px调整为220px
- 状态列添加居中对齐
- 操作列宽度从120px扩展为180px
- 移除重置筛选按钮
- 状态筛选去除全部选项,支持清空操作

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 21:22:14 +08:00
chengkai3 9f4a121712 feat:[FL-156][菜单管理页面的过滤表单实时查询后台数据]
- 后端API添加keyword和status查询参数支持
- 前端改为调用后端API进行实时过滤
- 添加300ms防抖优化性能

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 18:41:37 +08:00
chengkai3 5617ca1d39 fix:[FL-155][排查系统中所有页面,没数据时分页组件不要隐藏]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 18:39:14 +08:00
chengkai3 dfca6277b0 fix:[FL-154][线路管理页面删除线路后,如果没有可选线路了,后续触发的接口调用会报错]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 15:38:44 +08:00
chengkai3 c451a20f76 fix:[FL-153][导入雷电分布数据改成导入地闪密度数据]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 15:35:07 +08:00
chengkai3 89c0f4a2a0 feat:[FL-151][UI 组件对比度和视觉层级优化]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 15:31:22 +08:00
chengkai3 900a6db58b fix:[FL-152][将雷电分布统计(空间维度)改为地闪密度统计]
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 15:27:03 +08:00
chengkai3 9ebdbacbf2 fix:[FL-150][修复admin-design-page-body高度未填满问题]
在所有管理页面中添加flex-1样式,使space-y-6容器填满父元素admin-design-page-body,
解决页面底部padding看起来比顶部padding多的问题。

修改文件:
- web/src/app/admin/users/page.tsx
- web/src/app/admin/menus/page.tsx
- web/src/app/admin/system-params/page.tsx
- web/src/app/admin/task-monitor/page.tsx
- web/src/app/admin/syslog/page.tsx
- web/src/app/admin/workers/page.tsx
- web/src/app/admin/atp-models/page.tsx
- web/src/app/admin/roles/page.tsx
- web/src/app/admin/scheduled-tasks/page.tsx
- web/src/app/admin/elevation/page.tsx
- web/src/app/admin/system-messages/page.tsx

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 15:24:08 +08:00
chengkai3 8e4d0fffa3 fix:[FL-149][去掉ant-pagination默认margin-bottom:16px]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 14:50:17 +08:00
chengkai3 cbf4408e05 feat:[FL-148][参考用户关联页面布局给雷电流幅值统计页面增加文件名关键字过滤]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 14:28:43 +08:00
chengkai3 820ac6b7e7 [fix]:[FL-147][地闪密度统计页面去掉最小、最大经纬度过滤表单]
Co-authored-by: multica-agent <github@multica.ai>
2026-06-17 14:19:53 +08:00
chengkai3 9e39e16248 feat:[FL-144][改造系统消息页面]
Co-authored-by: multica-agent <github@multica.ai>
2026-06-16 17:54:25 +08:00
chengkai3 3899a2345e [fix]:[FL-145][系统消息要支持删除]
Co-authored-by: multica-agent <github@multica.ai>
2026-06-16 17:44:11 +08:00
chengkai3 946312cb6e fix:[FL-143][处理消息查看报错]
Co-authored-by: multica-agent <github@multica.ai>
2026-06-16 17:03:18 +08:00
chengkai3 5173a975b5 [feat]:[FL-140][参考雷电流幅值统计页面改造雷电分布统计(空间维度)页面]
重构 lightning-distribution 页面结构:
- 主体改为导入的雷电事件列表表格(展示 scatter_points)
- 导入功能改为 Modal 表单,包含元数据字段(事件年份、区域ID、地点标签、城市、备注)
- 统计详情(区域统计摘要、空间分布地图、当前事件信息)移至操作列弹窗展示
- 保留筛选功能(地点、区域、经纬度范围、网格尺寸、统计年限)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-16 08:08:22 +08:00
chengkai3 fda6bfe54a fix:[FL-142][系统交互排查]修改页面加载效果为组件级加载
1. 将所有管理页面的全页面加载改为仅在初始化时显示
2. 数据加载状态移至表格组件的loading属性
3. 确保过滤表单在数据加载时仍然可见和可操作

改动页面:
- users: 只在initializing时全页加载,表格使用loading prop
- menus: 同上
- lightning-distribution: 同上
- lightning-currents: 同上
- elevation: 同上,并为表格添加loading状态
- power-lines: 同上
- scheduled-tasks: 同上
- syslog: 同上
- system-params: 同上
- task-monitor: 同上
- tower-models: 同上
- workers: 同上

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-16 07:59:56 +08:00
chengkai3 5b884f4c02 [fix]:[FL-141][ATP创建版本时触发的任务在任务监控页面显示是"未识别任务"]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 22:43:28 +08:00
chengkai3 60d5d8e305 feat:[FL-139][ATP模型管理要分页]
- 在atp_model_service.py的list_models函数添加limit和offset参数
- 在atp_models.py的get_atp_model_list端点添加limit和offset查询参数
- 默认limit=100,offset=0,limit最大值500
- 保持向后兼容,不传参数时使用默认值

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 22:27:27 +08:00
chengkai3 598c281e8a fix:[FL-138][高程数据管理页面表格高度自适应]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 22:04:23 +08:00
chengkai3 f1203f5378 [feat]:[FL-137][雷电流幅值统计页面优化]
1. 峰值超越概率(P曲线)用图展示
   - 添加LineChart图表,直观展示P曲线趋势
   - 保留原有表格,图表与表格并存
   - Modal宽度增加到900px以适应图表

2. 采样预览支持分页懒加载
   - 添加Table组件展示采样数据
   - 支持分页切换和每页显示数量调整
   - 后端API按需加载,减少单次数据量
   - Modal宽度增加到1200px以适应表格

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 21:45:59 +08:00
chengkai3 4626abd9c2 fix: [FL-134] 修复雷电流幅值页面表格高度未占满页面的问题
- 为页面根 Space 组件添加 h-full 类,使其占满父容器高度
- 在 globals.css 中添加 lightning-table-anchor 样式规则,设置表格 body 最小高度
- 确保表格能够正确撑满剩余的垂直空间

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 19:31:43 +08:00
chengkai3 11a80a5441 [feat]:[FL-133][优化雷电流幅值统计页面的事件详情展示]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 19:28:00 +08:00
chengkai3 cf3122e27a [fix]:[FL-135][高程数据管理页面表格高度占满页面]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 19:20:59 +08:00
chengkai3 0994c03fee fix:[FL-136][ATP模型管理页面删除按钮点了没有反应]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 19:16:54 +08:00
chengkai3 13a51bc7f5 [feat]:[FL-132][P 曲线表格改为折线图展示]
1. 在 web/package.json 中添加 recharts 的必需依赖:react-redux 和 reselect
2. 在 lightning-distribution/page.tsx 中导入 recharts 组件
3. 将"峰值超越概率(P 曲线)"卡片改为折线图 + 可收起表格的展示方式:
   - 折线图为主视图,展示电流阈值(kA)与超越概率的关系
   - Y 轴在 50% 处添加水平参考线标注中值
   - 支持 tooltip 悬浮查看精确数值(阈值、概率、次数)
   - 表格放在 details 元素中,默认收起,用户可展开查看精确数值
4. 图表使用项目已有的 recharts 库,与 lightning-currents 页面保持一致

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 19:10:20 +08:00
chengkml d23ac4f74c Optimize S3 asset archive uploads 2026-06-15 19:05:43 +08:00
chengkai3 3054b476ff [fix]:[FL-131][去掉雷电流统计页面的"来源"表单及展示]
- 删除导入表单中的 is_synthetic 复选框字段
- 删除事件详情模态框中的"来源"描述项
- 更新 ImportFormValues 类型定义,移除 is_synthetic 字段
- 更新初始值和表单数据构建逻辑
- 移除未使用的 Checkbox 组件导入

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 18:35:47 +08:00
chengkai3 f2ec78757b [feat]:[FL-130][雷电流幅值统计页面优化]
1. 页面标题从"雷电幅值统计"改为"雷电流幅值统计"
2. 导入表单去掉"事件编号"字段(后端自动生成)
3. 去掉"Region ID"和"地域标签"字段(表单、表格列、详情页)
4. 表格列精简,仅保留:文件名、城市、安装位置、传感器型号、雷暴等级、导入时间、采样点数
5. 详情页添加专业名词字段说明(小问号图标+Tooltip提示)

Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 17:56:29 +08:00
chengkai3 e03052ec8f [fix]:[FL-129][修复菜单管理SQL列名映射错误]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 17:06:13 +08:00
chengkai3 9a1bcef89c [fix]:[FL-129][修复菜单管理SQL表名错误]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 16:37:02 +08:00
chengkai3 c081177c37 [feat]:[FL-127][雷电幅值统计页面优化]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 13:54:35 +08:00
chengkai3 3450e6da23 [fix]:[FL-128][高程数据管理页面布局问题修复]
修改页面主容器的样式类,添加 min-h-screen 确保页面高度填满整个视口。

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 13:50:14 +08:00
chengkai3 818509e8d9 fix: [FL-126] 修复 Next.js standalone 模式下 server.js 路径问题
- 在 workspace 环境下,standalone 输出的 server.js 位于 web/ 子目录
- 修改 CMD 为 node web/server.js
- 调整 public 和 static 文件的复制路径以匹配 standalone 结构

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 13:27:22 +08:00
chengkai3 143893f586 fix: [FL-126] 修复 GitHub Actions workflow 中 web 镜像构建的 build context
- 将 web 镜像构建的 context 从 ./web 改为 .(仓库根目录)
- 保持 dockerfile 为 ./web/Dockerfile
- 与 Dockerfile 的改动配套,确保 npm workspace 结构正确工作

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 12:18:54 +08:00
chengkai3 32e32eb114 fix: [FL-126] 修复 web Dockerfile 构建失败问题
- 从 deps 阶段复制 web/node_modules 到 builder 阶段
- 复制根目录 package.json 以支持 workspace 命令
- 使用 npm run build:web 替代直接在 web 目录运行 build
- 移除 WORKDIR /app/web,保持在根目录执行构建

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 11:40:18 +08:00
chengkai3 b12ee3b423 feat: [FL-125] 将线路参数准备功能从雷电幅值页面迁移到线路管理页面
- 在线路管理页面添加"线路参数准备"按钮和弹窗
- 弹窗展示雷电流幅值、地闪密度、地面倾角三个准备项的状态
- 支持回填雷电流幅值和地闪密度操作
- 从雷电分布页面移除"线路参数准备"卡片
- 移除 lightning-distribution 页面中与线路准备相关的 state 和 mutation

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
2026-06-15 11:26:40 +08:00