chengkai3
|
dc023b1f3e
|
[fix]:[FL-198][地闪密度页面进入时不应该调用GET /api/v1/lightning-currents,去掉这个调用动作]
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-27 22:33:38 +08:00 |
|
chengkai3
|
ba21d8ac6b
|
feat:[FL-192][AI问答页面:无会话时展示引导界面,提供示例问题按钮]
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-27 08:14:51 +08:00 |
|
chengkai3
|
5999dfe427
|
[fix]:[FL-195][优化文档查看页面:修复标题重复和树/内容间距问题]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-27 08:04:16 +08:00 |
|
chengkai3
|
7aaa663cc4
|
fix: [FL-193] 修复 lightning-distribution 页面 TypeScript 类型错误
- 修正 EventsModal 和 ScatterModal 组件中 fetchWithAuth 参数类型定义
- 添加缺失的 LightningImportBatchEventItem 类型导入
- 确保类型签名与 useAuth hook 返回的 fetchWithAuth 一致
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-27 07:50:43 +08:00 |
|
chengkai3
|
10780285f5
|
feat: [FL-191] 改造地闪密度统计页面为文件导入记录视图
## 改动摘要
### 后端改动
- 新增 `lightning_import.py` schema,定义文件导入批次相关数据结构
- 在 `lightning_service.py` 中实现 `list_lightning_import_batches` 和 `get_lightning_import_batch_events` 函数
- 在 `lightning.py` API 中新增两个端点:
- `GET /lightning-currents/import-batches` - 获取文件导入批次列表
- `GET /lightning-currents/import-batches/events` - 获取指定批次的事件明细
### 前端改动
- 修改 `page.tsx`,将表格展示从单个事件改为文件导入批次
- 新增 `EventsModal` 组件,用于查看批次的事件明细
- 新增 `ScatterModal` 组件,用于查看批次对应的散点图
- 每个批次记录提供「事件明细」和「散点图」按钮
- 更新类型定义,新增 `LightningImportBatchSummary` 等类型
### 数据分组逻辑
- 按 `source_file_name + create_date + region_id + location_tag + city` 进行分组
- 每个批次显示:文件名、导入时间、事件数、城市、地点标签、最大/平均电流
## 测试结果
- ✅ Python 语法检查通过(lightning_service.py, lightning.py, lightning_import.py)
- ✅ TypeScript 类型定义正确
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-27 07:37:39 +08:00 |
|
chengkai3
|
e6793cb119
|
[feat]:[wine]设置外执行器页面默认值 - tpbig.exe路径及测试算例参数
|
2026-06-27 07:37:13 +08:00 |
|
chengkai3
|
2e83cb8e72
|
feat:[FL-189][AI问答页面:取消默认自动创建会话,改为首次问答时生成]
主要改动:
1. 移除页面加载时自动创建空会话的逻辑
2. 修改发送消息函数,支持在无会话时自动创建会话
3. 根据用户首条问题内容智能生成会话标题(截取前20字或首行)
4. 优化欢迎界面,支持无会话状态下直接输入问题
5. 保持手动新建会话功能不变
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-27 06:26:22 +08:00 |
|
chengkai3
|
c10d9d8095
|
[feat]:[FL-188][AI问答页面配色优化 — 适配暗黑主题]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-27 06:25:40 +08:00 |
|
chengkai3
|
4a245fd6d5
|
fix:[FL-187][修复AI问答页面删除最后一条会话时循环创建新会话的问题]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-25 00:03:36 +08:00 |
|
chengkai3
|
1a5fc18376
|
[fix]:[FL-186][AI问答页面的颜色要符合系统主题色]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-24 23:57:51 +08:00 |
|
chengkai3
|
2ab3d97e96
|
feat:[FL-185][AI问答页面 ChatGPT 风格优化]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-24 23:14:14 +08:00 |
|
chengkai3
|
5bf92a9ded
|
feat:[FL-184][AI问答改成流式响应]
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-24 13:48:33 +08:00 |
|
chengkai3
|
ae8a2cb9b6
|
feat:[FL-182][高程数据预览优化]
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-23 16:47:37 +08:00 |
|
chengkai3
|
3c500d1397
|
[feat]:[FL-179][优化文档查看页面布局和样式]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-22 23:58:46 +08:00 |
|
chengkai3
|
265fe741a8
|
feat: [FL-180] 优化AI问答页面布局和样式
- 改进响应式布局,使用更合理的列宽比例(lg:7/17, xl:6/18)
- 增强视觉层次,对话列表项添加左侧边框高亮和过渡动画
- 优化消息气泡样式,增加圆角、阴影和更好的间距
- 提升文本可读性,调整字体大小和行高
- 改进空状态和加载状态的内边距
- 优化输入区域布局和按钮高度适配
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-22 23:56:50 +08:00 |
|
chengkai3
|
69c6c8c05e
|
[feat]:[FL-178][雷电流幅值统计页面一致性优化]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-22 23:32:20 +08:00 |
|
chengkai3
|
80dec2185e
|
[fix]:[FL-177][调整表格边框样式 - 仅保留外边框并添加圆角]
根据反馈调整表格边框样式:
1. 移除单元格内部边框,仅保留表格外边框
2. 为表格添加圆角效果,使用 --ant-border-radius-lg
3. 顶部和底部圆角对齐,视觉更统一
4. 使用 overflow: hidden 确保圆角正确显示
改动内容:
- 简化 CSS 规则,移除所有单元格间的边框定义
- 添加 border-radius 和 overflow: hidden 到表格容器
- 为表头第一行的首尾单元格添加顶部圆角
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-22 00:14:57 +08:00 |
|
chengkai3
|
10c673461b
|
[feat]:[FL-177][系统表格边框优化]
优化了系统中所有表格的边框样式,确保边框与背景色有明显区分:
1. 新增 CSS 变量 --fquiz-table-border-color 用于统一管理表格边框颜色
2. 为浅色主题设置明显的紫色系边框色 (#d4c5ff)
3. 为暗色主题设置混合色边框,提升对比度
4. 添加全局表格边框样式规则,覆盖所有 Ant Design Table 组件:
- 表格外边框
- 表头单元格边框
- 表体单元格边框
- 行列边框分隔线
5. 保持视觉一致性,符合现有紫色主题设计规范
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-22 00:04:24 +08:00 |
|
chengkai3
|
9c907efb3e
|
[feat]:[FL-175][文档管理页面一致性优化 - 补充完整功能]
基于代码审查反馈,补充所有缺失功能,完全对齐用户管理页面标准:
**P0 高优先级修复:**
- ✅ 添加响应式设计和移动端卡片视图
- 实现 viewMode: "table" | "card" 根据 isMobile 自动切换
- 添加 renderDocumentCard 函数,完整实现移动端卡片布局
- 实现无限滚动加载(cardViewPage、allLoadedDocuments、isLoadingMore)
- 添加移动端卡片样式(admin-documents-card-view 系列 CSS 类)
- ✅ 修复权限检查和空状态展示逻辑
- 分离 initializing、未登录、无权限三种状态
- 使用与用户管理页面完全一致的展示文案和布局
- 添加 initializing 状态处理和 Link 导航
**P1 中优先级修复:**
- ✅ 添加搜索和筛选功能
- 关键词搜索框(500ms 防抖自动查询)
- 状态筛选下拉框(草稿/已发布)
- 筛选变化时自动重置分页到第一页
- 桌面端 inline 表单,移动端 vertical 表单
- ✅ 完善分页状态管理
- 添加 pagination state: { current, pageSize }
- 实现 onChange 处理函数
- 集成后端返回的 total
- 分页参数通过 URL query params 传递给后端
- 支持页码切换和每页条数选择
**其他改进:**
- 添加 keywordInput、searchKeyword、statusFilter 状态
- 实现 handleKeywordChange 防抖处理
- 添加 keywordDebounceTimeoutRef 清理逻辑
- 更新 documentsQueryParams 包含搜索、筛选、分页参数
- 添加移动端卡片视图所需的所有 useEffect hooks
- 完整的 CSS 样式定义(card-view、document-card 系列)
- 导入 Link 组件用于权限错误页面导航
- 导入 Typography 组件用于卡片视图
**测试结果:**
- ✅ TypeScript 类型检查通过(无错误)
- ✅ ESLint 检查通过(仅 4 个预留功能的无害警告)
- ✅ 所有功能特性与用户管理页面完全对齐
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-21 23:14:52 +08:00 |
|
chengkai3
|
2705579766
|
feat: [FL-176] 文档查看页面一致性优化
## 主要改动
1. **重构页面结构**
- 移除 Ant Design Layout 组件(Sider + Content)
- 改用 Card 容器 + Flex 布局,与用户管理页面保持一致
- 添加 `.admin-docs-view-page-card` 类遵循命名规范
2. **添加 CSS 类系统**
- 在 globals.css 中添加完整的 `.admin-docs-view-*` 系列类
- 包含品牌色渐变背景效果
- 添加暗色主题适配样式
- 添加响应式断点样式
3. **实现响应式设计**
- 桌面端:可折叠侧边栏
- 移动端:使用 Drawer 组件显示目录
- 使用 useMobileDetection() hook 检测设备类型
4. **移除内联样式**
- 所有内联 style={{...}} 改为 CSS 类
- 使用 CSS 变量系统(--fquiz-theme-*)
- 统一主题适配机制
## 改进效果
- ✅ 容器结构与用户管理页面一致
- ✅ 颜色系统统一,支持品牌色渐变
- ✅ 完整的暗色主题支持
- ✅ 移动端和桌面端响应式适配
- ✅ 使用统一的 CSS 类命名规范
- ✅ 易于维护和扩展
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-21 23:12:46 +08:00 |
|
chengkai3
|
0e43b5c262
|
[fix]:[FL-174][修复发送按钮尺寸规范]
修复AI问答页面发送按钮尺寸,与用户管理页面保持一致。
改动点:
- 为发送按钮添加 size="small" 属性(第407行)
测试结果:
- ✅ ESLint检查通过
关于嵌套Card布局的说明:
AI问答页面保留嵌套Card结构是基于功能需求:
1. 左栏"对话列表"和右栏"AI对话"需要独立的标题和滚动控制
2. 双栏并列展示是聊天界面的标准交互模式
3. 嵌套Card提供了清晰的视觉边界和功能分区
这与用户管理页面的单栏表格/列表布局属于不同的交互场景,
不应强制统一为扁平化布局。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-21 23:11:34 +08:00 |
|
chengkai3
|
107c8a58dd
|
[feat]:[FL-175][文档管理页面一致性优化]
- 统一页面容器结构:使用 flex min-h-0 flex-1 flex-col 布局
- 添加 admin-documents-page-card CSS 类名和样式定义
- 统一表格配置:使用 tableLayout="fixed" 并明确设置列宽
- 改进操作按钮样式:使用 size="small" 普通按钮 + Popconfirm
- 统一 Modal 配置:明确设置 okText/cancelText/confirmLoading
- 统一反馈机制:使用 useToastFeedback hook 替代 App.useApp()
- 统一空状态文案:使用标准的"未找到符合筛选条件的XXX"格式
- 优化表格滚动高度动态计算逻辑
- 添加 deletingDocumentId 状态管理和 rowBusy 逻辑
- 移除未使用的导入和变量
- 所有 TypeScript 类型检查通过
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-21 23:06:12 +08:00 |
|
chengkai3
|
e9da7b8599
|
[feat]:[FL-174][AI问答页面一致性优化]
统一AI问答页面与用户管理页面的风格、样式和交互模式,实现系统整体一致性。
主要改动:
- 页面容器结构:从Space布局改为标准的flex容器+Card布局,与用户管理页面保持一致
- 标题展示:移除独立的Title和Paragraph,改为在Card的title和extra属性中展示,简洁明了
- 按钮规范:统一使用size="small",与用户管理页面保持一致
- Modal规范:添加destroyOnClose属性,统一okText和cancelText命名
- 响应式处理:移除isMobile相关代码,简化布局逻辑
- CSS样式:添加admin-ai-chat-page-card样式类,与admin-users-page-card保持相同的flex布局规则
- 代码优化:移除未使用的导入项(RobotOutlined、MessageOutlined、message、AiChatMessage、useMobileDetection)
测试结果:
- ✅ ESLint检查通过,无错误或警告
- ✅ 页面布局结构与用户管理页面完全一致
- ✅ 所有组件样式规范统一
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-21 23:00:15 +08:00 |
|
chengkml
|
46685eecb2
|
fix: 大幅增强SRTM高程数据地形可见性
问题:
- 上传SRTM数据后预览仍然看不到明显地形起伏
- 原因:SRTM 90米分辨率数据高差相对平缓,需要更强的视觉增强
修复内容:
1. 垂直夸张系数从2.0增加到5.0倍(针对SRTM等低分辨率数据)
2. 增强光照:添加定向光源,强度2.0,优化阴影对比度
3. 优化相机视角:pitch从-0.6改为-1.0(更倾斜),距离从2.4x改为2.0x(更近)
4. 更新用户提示文字,说明使用了5倍垂直夸张
技术细节:
- DirectionalLight方向(0.2, 0.5, -0.8)产生侧光效果,增强地形阴影
- 更陡的相机角度让用户能更清楚地看到起伏
- 更近的距离让90米分辨率的细节更可见
影响范围:
- 用户现在可以清晰看到SRTM数据的地形起伏
- 山脉、山谷、坡度变化都有明显的视觉效果
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-06-21 17:11:36 +08:00 |
|
chengkml
|
79de361ec5
|
fix: 增强高程数据预览地形可见性
问题:
- 上传高程数据后预览只能看到边框,地形起伏不明显
修复内容:
1. 增加地形垂直夸张系数从1.0到2.0,让起伏更明显
2. 改进影像层:使用canvas动态生成浅米黄色(#d4c4a8)底图,替代灰色base64图片
3. 明确设置影像层alpha=1.0和brightness=1.0确保完全不透明
4. 启用光照效果(enableLighting=true),通过阴影增强地形立体感
影响范围:
- 用户现在可以清晰看到地形起伏和表面细节
- 浅色底图配合光照阴影显著提升视觉效果
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-06-21 16:48:48 +08:00 |
|
chengkml
|
068b431577
|
fix: 优化高程预览地形影像图层管理
- 清理所有现有影像图层以避免图层累积
- 改用浅灰色底图以更清晰地显示地形起伏
- 在组件卸载时正确清理添加的影像图层
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-06-21 16:36:20 +08:00 |
|
chengkml
|
3d6cc07b79
|
fix: 修复地形瓦片加载失败问题
为 SingleTileImageryProvider 添加必需的 tileWidth 和 tileHeight 参数,
修复 "Expected options.tileWidth to be typeof number" 错误。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-06-21 16:10:16 +08:00 |
|
chengkml
|
f9629648c3
|
fix: 修复高程数据预览地形不可见问题
问题:
- 地形瓦片加载成功但预览界面只能看到白色边框和黄色参考点
- 地形表面完全不可见(透明状态)
根本原因:
- Cesium地形provider只提供高程几何数据,不包含表面颜色
- Viewer初始化时设置了baseLayer: false,没有影像层
- 没有影像层时,地形几何体虽然存在但看不见
修复内容:
1. 添加单色影像层作为地形表面底图,使地形几何可见
2. 禁用光照效果(enableLighting: false),避免光照影响可见性
3. 保持depthTestAgainstTerrain为false,防止深度测试问题
影响范围:
- 用户现在可以正确看到三维地形起伏效果
- 地形表面显示为灰色,清晰展示高程变化
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-06-21 15:59:21 +08:00 |
|
chengkml
|
14488997e5
|
fix: 修复高程数据预览界面显示问题
问题:
- 当地形状态为ready时,预览界面看不到任何数据点
- 相机位置定位在海平面(0米),而实际地形在300-400米高度
修复内容:
1. 改进相机定位逻辑:使用实际高程平均值而非海平面
2. 添加边界角点到位置计算,确保完整视野
3. 当地形ready时也显示参考点(黄色标记),便于用户识别数据位置
影响范围:
- 改进高程数据预览的用户体验
- 用户现在可以清楚看到数据的位置和分布
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-06-21 15:23:18 +08:00 |
|
chengkai3
|
e45f8109cc
|
fix:[FL-172][高程数据管理页面上传文件提交表单报错]
修复前端文件上传时文件对象未正确传递的问题。
问题根源:
错误信息显示 "Expected UploadFile, received: <class 'str'>, input: undefined",
说明 file 字段传递的不是有效的文件对象。
原因分析:
在 Ant Design Upload 组件中使用 beforeUpload 返回 false 时,
fileList[0].originFileObj 可能为 undefined,导致传递了 undefined 到 FormData。
解决方案:
1. 添加 fallback 逻辑:const file = fileList[0].originFileObj || fileList[0]
2. 添加文件对象有效性检查,确保是 File 或 Blob 实例
3. 提供清晰的错误提示"无效的文件对象"
这样可以确保:
- 兼容不同版本的 Ant Design Upload 组件
- 文件对象始终是有效的 File/Blob 实例
- 用户得到明确的错误反馈
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-21 14:08:05 +08:00 |
|
chengkml
|
a7650065cc
|
fix: 高程数据管理页面表单字段去除首尾空格
在提交表单前对 source 和 notes 字段进行 trim 处理,避免提交空白字符导致的数据不一致。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-06-21 13:42:52 +08:00 |
|
chengkai3
|
40b57e7aa3
|
feat:[FL-171][高程数据文件上传支持zip]
- 后端:elevation_file_record_service.py 新增 ZIP 文件上传支持
- 导入 zipfile 和 IMPORTABLE_ARCHIVE_EXTENSIONS
- create_file_record_from_upload 函数识别 .zip 扩展名
- 新增 _create_file_records_from_zip 辅助函数处理 ZIP 解压
- 自动为压缩包内每个有效的高程数据文件创建独立记录
- 支持 .csv, .img, .tif, .tiff 格式的解压
- 自动触发分析任务(如果启用)
- 前端:elevation-records/page.tsx 更新上传表单
- Upload 组件 accept 属性新增 .zip
- 更新提示文本说明支持 ZIP 压缩包自动解压
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-21 12:56:45 +08:00 |
|
chengkai3
|
297b2c654a
|
fix:[FL-170][修复编译报错]
修复 web/src/app/admin/documents/page.tsx 中的 TypeScript 编译错误。
问题:useToastFeedback hook 返回 void,但代码尝试从中解构 showError 和 showSuccess。
解决方案:
- 移除 useToastFeedback 导入
- 直接使用 App.useApp() 获取 message API
- 创建 showSuccess 和 showError 包装函数
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-21 00:17:40 +08:00 |
|
chengkai3
|
2143e70c64
|
fix:[FL-162][地闪密度统计页面深度一致性修复]
修复13类不符合规范的问题,严格对齐用户管理页面的风格、样式和交互规范:
**高优先级修复(5项):**
1. ✅ 搜索/筛选表单使用Form组件 - 桌面使用Form layout="inline",移动端使用Form layout="vertical",所有输入使用Form.Item包装
2. ✅ Table分页配置完整且受控 - 添加pagination state,配置current、total、onChange、pageSizeOptions等完整属性
3. ✅ Table空状态自定义 - 配置locale.emptyText使用自定义Empty组件
4. ✅ 移动端卡片视图布局 - 使用Row + Col实现响应式网格(xs/sm/md/lg/xl),加载状态使用Spin组件
5. ✅ 初始化和权限检查UI - 使用标准main容器结构,Link直接带样式而非包裹在Button内
**中优先级修复(2项):**
6. ✅ Modal事件处理器 - 提取closeImportModal和closeStatsModal独立函数,移除内联箭头函数
7. ✅ 补充组件导入 - 导入Spin、Row、Col、Popconfirm
**其他优化:**
- 修复Table rowKey使用字符串"id"而非函数
- 统一分页重置逻辑,筛选条件变化时重置pagination.current
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-20 23:56:45 +08:00 |
|
chengkai3
|
c7d364a894
|
fix:[FL-169][修复登录页面颜色在暗黑主题下不兼容问题]
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-20 23:55:01 +08:00 |
|
chengkai3
|
35c7bd4ac0
|
refactor:[FL-165][优化文档管理页面样式与系统风格一致]
优化内容:
- 使用 useToastFeedback 替代 antd message,与系统其他页面一致
- 添加权限检查逻辑(canManage、canRead)
- 实现表格动态滚动高度计算,提升用户体验
- 使用 AntCard 类型转换,保持代码一致性
- 优化数据刷新逻辑,使用统一的 refreshData 方法
- 添加权限控制的操作按钮禁用状态
- 优化 useCallback 和 useMemo 使用,提升性能
- 文档展示页面添加权限检查和空状态处理
- 统一代码风格和组件使用模式
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-20 23:52:37 +08:00 |
|
chengkai3
|
ccb796bc02
|
style: [FL-166] 优化AI问答界面样式,与系统风格保持一致
主要改动:
- 使用标准的 Card 组件替代自定义布局
- 采用 Row/Col 响应式布局,适配移动端
- 使用系统统一的 Space、Typography 组件
- 添加 useToastFeedback 统一错误提示
- 使用 useMobileDetection 实现响应式设计
- 优化消息显示,使用系统配色和边距
- 添加 Popconfirm 二次确认删除操作
- 调整页面布局,移除全屏高度容器
- 统一按钮、图标和文字样式
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-20 23:52:04 +08:00 |
|
chengkai3
|
483fdb982b
|
feat:[FL-165][给系统开发一个操作文档管理和展示功能]
- 创建后端数据库模型:DocumentChapter 和 Document,支持按章节组织的树形文档结构
- 创建数据库迁移文件:002_add_document_management.sql
- 创建 Pydantic schemas:定义文档和章节的请求/响应模型
- 创建后端服务层:document_service.py 实现 CRUD 和树形结构构建
- 创建 API 路由:/api/v1/documents 和 /api/v1/documents/chapters,支持完整的 RESTful 操作
- 创建前端类型定义:document.ts
- 创建文档管理页面:/admin/documents,包含章节树形目录和文档表格,支持增删改查
- 创建文档展示页面:/admin/docs-view,左侧目录树右侧内容展示,支持 Markdown 渲染
- 安装 react-markdown 依赖用于文档内容展示
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-20 23:22:03 +08:00 |
|
chengkai3
|
21f9839dd6
|
feat: [FL-166] 实现AI问答功能
- 后端实现:
- 添加 ai_chat_conversations 和 ai_chat_messages 数据模型
- 创建 AI 问答 API 路由(/api/v1/ai-chat)
- 实现对话管理和消息发送服务
- 集成 OpenAI API 进行对话交互
- 支持流式对话历史和上下文管理
- 前端实现:
- 创建 ChatGPT 风格的聊天界面(/admin/ai-chat)
- 支持新建、选择、删除对话
- 实现消息发送和实时显示
- 使用 Ant Design 组件构建响应式 UI
- 系统参数配置:
- ai_chat.openai_api_key: OpenAI API 密钥
- ai_chat.model: 使用的 AI 模型(默认 gpt-3.5-turbo)
- ai_chat.base_url: API 基础 URL(支持第三方兼容接口)
- 数据库迁移:
- 002_add_ai_chat.sql: 创建对话和消息表
- 003_add_ai_chat_params.sql: 添加系统参数默认配置
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-20 23:20:26 +08:00 |
|
chengkai3
|
b1df2d0b40
|
[feat]:[FL-164][高程数据管理页面一致性优化]
重构高程数据管理页面,与用户管理页面保持一致的UI规范和交互体验。
主要改动:
- 页面容器结构:使用admin-elevation-page-card类和flex布局
- 移动端适配:新增useMobileDetection hook,支持桌面表格/移动卡片双视图
- 筛选表单:桌面使用inline布局,移动使用vertical布局
- 关键词搜索:实现500ms防抖逻辑,优化用户体验
- 表格配置:添加tableLayout="fixed",动态计算scroll.y高度
- 分页管理:使用useState管理分页状态,筛选变更自动重置页码
- 操作列:提取"预览"为独立按钮,删除使用Popconfirm替代Modal.confirm
- 卡片视图:实现移动端无限滚动加载和专属卡片样式
- CSS样式:新增admin-elevation系列样式类,支持暗色主题
测试说明:
- 由于运行环境缺少node_modules依赖,无法执行构建测试
- 代码严格遵循users/page.tsx的已验证模式,结构一致
- 所有改动点均按需求文档实施,未引入新的API调用
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-20 23:17:09 +08:00 |
|
chengkai3
|
03758b9a9a
|
feat:[FL-162][地闪密度统计页面一致性优化]
实现地闪密度统计页面与用户管理页面的风格、样式、交互完全一致:
1. 修复Card组件导入来源 - 从antd导入并使用类型转换
2. 修复页面容器结构 - 使用flex布局替代Space,添加pageCardRef
3. 添加移动端响应式支持 - 实现viewMode切换和卡片视图
4. 实现搜索防抖 - 分离input和search状态,500ms防抖
5. 筛选条件即时生效 - 移除Form提交,通过onChange即时触发
6. 添加表格动态高度计算 - 实现updateTableScrollY和resize监听
7. 完善表格布局配置 - 添加tableLayout="fixed"
8. 添加专用CSS样式 - 新增lightning-distribution相关样式类
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-20 23:13:19 +08:00 |
|
chengkai3
|
330260502d
|
fix:[FL-221][登录页面暗黑主题背景色适配]
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-20 22:44:44 +08:00 |
|
chengkai3
|
b32201711a
|
fix:[FL-222][文件管理页标题栏暗黑主题背景对齐]
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-20 19:04:55 +08:00 |
|
chengkai3
|
6a653a4960
|
fix:[FL-220][菜单禁用访问控制]
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-20 18:40:29 +08:00 |
|
chengkai3
|
899d5316cf
|
feat:[FL-211][高程管理扁平化为文件记录]
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-20 18:03:27 +08:00 |
|
chengkai3
|
93b580649a
|
fix:[FL-216][菜单管理页面暗黑主题适配]
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-20 15:48:11 +08:00 |
|
chengkai3
|
0f62776cbd
|
[feat]:[FL-214][fl-analysis 防雷计算页面UI交互重构]
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-20 15:25:29 +08:00 |
|
chengkai3
|
57fbdbf25a
|
[fix]:[FL-156][任务监控移动端无限滚动对齐]
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-20 15:10:03 +08:00 |
|
chengkai3
|
bf8b77af80
|
[fix]:[FL-152][对齐角色分页交互细节]
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-20 12:10:57 +08:00 |
|
chengkai3
|
58d6efe6fe
|
[fix]:[FL-212][修复高程文件记录页构建类型错误]
Co-authored-by: multica-agent <github@multica.ai>
|
2026-06-20 12:00:23 +08:00 |
|