Commit Graph

28 Commits

Author SHA1 Message Date
XplorePlane Developer 957157ae80 fix: 修复编译错误、BGA向导预览、算子重复插入及状态栏消息
## Compilation fixes
- Fix XAML namespace reference XplorePlane.Converters → XplorePlane.Helpers (EventLogView, StateDisplayView)
- Add missing using for ISampleTypeRepository / JsonSampleTypeRepository in App.xaml.cs
- Fix ILoggerService.Warn() calls using Exception as first arg instead of message string
- Serialize CncProgram to JSON when passing to MatrixLayout (expects string, not CncProgram object)
- Suppress CS8632 nullable annotation warnings project-wide

## BGA wizard fixes
- Fix preview not showing on step 3: force RefreshBgaPreview() when entering final step
- Add step validation in CanNext() to prevent skipping to preview with invalid inputs
- Notify NextCommand.CanExecuteChanged when inputs change
- Fix RunProgress runtime binding error: set Mode=OneWay for ProgressBar.Value

## Operator toolbox: prevent duplicate insertion
- Add static OperatorTarget property for direct dispatch to active pipeline
- PipelineEditorView registers as toolbox target on load (floating window only)
- CNC page sets initial target; PipelineEditorWindow resets to CNC pipeline on close
- '+' button inserts only to the active pipeline instead of broadcasting to all subscribers

## Pipeline editor status bar messages
- Add StatusBarMessageEvent / StatusBarMessagePayload to CommonEvents.cs
- PipelineEditorViewModel publishes status on all ops (add/remove/reorder/save/execute)
- MainViewModel subscribes and displays on main window bottom status bar
- Auto-clear after timeout (3s info, 5s error)

## docs
- Merge three architecture docs into consolidated XplorePlane-架构与结构说明.md
2026-07-24 15:59:16 +08:00
QI Mingxuan 3f7a4804f3 [XplorePlane] 解决合并冲突:InspectionReportViewerViewModel/CncReportService 的检测归档命名空间由 Services.InspectionResults 更新为重构后的 Services.Inspection.Archive / Services.Inspection.Results;修正查看器残留的 _store 为 _archive。 2026-07-21 09:15:26 +08:00
zhengxuan.zhang 348d2341e0 统一库级别的x64; 更新 Release 2026-07-16 17:27:34 +08:00
QI Mingxuan 7b7a63b2a1 [XP.ReportEngine] StandardReportTemplate 改造为统一模板,新增设备状态三栏;ITextPdfRenderer 增加图片压缩;TXT/CSV/Excel 三格式适配 CNC manifest。
[XplorePlane] CncReportContextBuilder 适配统一模板。
2026-07-10 11:34:52 +08:00
zhengxuan.zhang 7126431985 Merge branch 'Develop/XP' into Feature/TURBO-002-Cnc 2026-07-10 02:08:52 +08:00
QI Mingxuan b8ed0e5606 [XP.ReportEngine] CNC报告模板增加设备状态三栏(射线源/探测器/运动控制);ITextPdfRenderer 空数据表格跳过渲染。 2026-07-09 20:54:58 +08:00
QI Mingxuan be8729dd61 [XP.ReportEngine] 新增模板分段重复(repeat section)能力;新增 CncReportContextBuilder:InspectionRunDetail→ReportRequest 映射,按节点类型/人工标记筛选可报告节点,解析本地图像路径,组织指标表与汇总表;新增 CncReportService:以 RunId 为入口,manifest 优先、DB 兜底加载运行明细,调用报告引擎生成 PDF。
[XplorePlane] 检测结果查看器 InspectionReportViewerViewModel 增加生成报告命令、生成状态与 PDF 打开逻辑;查看器窗口工具栏新增「生成报告」按钮与状态提示。
2026-07-09 16:38:22 +08:00
QI Mingxuan a424ff3c37 Merge branch 'Develop/XP' into Feature/TURBO-739-HardwareBenchmarkYxlon 2026-07-09 13:06:58 +08:00
zhengxuan.zhang 4b9890d4c4 perf: 启动优化 — Lazy<T> 延迟加载图像处理服务,启动时间从29秒降至5.5秒
- 将 CncExecutionService、PipelinePersistenceService、PipelineExecutionService、
  PipelineEditorViewModel、CncEditorViewModel 中的 IImageProcessingService /
  IPipelineExecutionService 依赖改为 Lazy<T> 注入,避免启动时触发
  ImageProcessingService 的反射处理器扫描和 EmguCV JIT 编译
- 在关键启动路径插入 [STARTUP-PERF] Stopwatch 计时日志用于性能诊断
- 新增 doc/启动耗时分析.md 技术文档记录分析过程和优化方案
- Ribbon Tab "设置" 重命名为 "工具" 避免与子按钮名称重复
2026-07-08 13:17:38 +08:00
QI Mingxuan 8632f48114 [XP.ReportEngine] 更新文档。 2026-07-07 17:54:38 +08:00
QI Mingxuan 92e37afc51 [XP.ReportEngine] 新增图像转PDF功能(GenerateImagePdfAsync),支持 ImageData/文件路径/BitmapSource 三种入参,生成 A4 PDF 保存到配置输出目录\ImagePdf\下并自动打开系统默认 PDF 阅读器。 2026-07-07 17:53:39 +08:00
zhengxuan.zhang 552f20502f Merge branch 'Develop/XP' into Feature/TURBO-002-Cnc 2026-07-07 09:37:48 +08:00
zhengxuan.zhang d309efacf3 已修复 iText CJK 字体资源加载异常相关问题。
改动在:
[XP.ReportEngine.csproj](D:/XplorePlane/XP.ReportEngine/XP.ReportEngine.csproj):直接引用真实资源包 itext.font-asian,并只复制 itext.font_asian.dll 到输出目录,避免之前全量复制依赖带来的运行时探测噪音。
[ITextPdfRenderer.cs](D:/XplorePlane/XP.ReportEngine/Services/ITextPdfRenderer.cs):启动时精确注册 itext.font_asian 资源程序集,优先使用已加载程序集,其次从输出目录加载,确保 iText 能找到 CJK/CMap 资源。
2026-07-01 17:23:59 +08:00
zhengxuan.zhang 9f7d50649a 统一解决方案 x64 debug模式和release模式 2026-07-01 17:04:37 +08:00
QI Mingxuan c7d7194134 [XP.ReportEngine] TxtReportGenerator 修复 FormatValue 方法,支持嵌套 Dictionary 和集合类型的递归展开。 2026-07-01 16:21:39 +08:00
QI Mingxuan 908a4a2d8f [XP.ReportEngine] Demo 窗口新增支持 TXT/CSV/Excel 的选项。 2026-07-01 11:35:59 +08:00
QI Mingxuan d72b583319 [XP.ReportEngine] 新增 TXT/CSV/Excel 三种报告输出格式支持;Excel (.xlsx) 报告生成器,基于 ClosedXML,支持结构化生成和模板填充两种模式; 新增 XplorePlane_ReportTemplate.xlsx:Excel 报告模板文件。
[XP.ReportEngine] 模型与配置扩展:ReportOutputFormat 枚举:新增 Excel=1, Csv=2, Txt=3(显式序号,向后兼容);新增多格式相关配置加载。
2026-07-01 11:31:41 +08:00
zhengxuan.zhang 80dc70a648 给被主程序引用的类库项目中的 Telerik NuGet 引用增加了 PrivateAssets="all" 属性,隔离输出目录中 Telerik DLL 数量从原先主输出目录的 67 个 降到 16 个 2026-06-05 14:15:24 +08:00
zhengxuan.zhang b673eeb40a 统一各项目运行时目录结构
D:\XPData
├── DataBase\          # SQLite 数据库,例如 XP.db
├── DetectorImages\    # 探测器采集图像
├── Logs\              # Serilog 运行日志
├── Dump\              # 异常 Dump 文件
├── Report\            # 报告输出目录
├── Plan\              # 工艺 / CNC / 检测程序数据
├── Tools\             # 工具相关数据
└── Data\              # 其他运行数据
2026-06-05 14:03:30 +08:00
QI Mingxuan 29bc8576af 报告XP.ReportEngine:新增 IReportService接口封装完整报告生成流程,支持外部类库直接调用;新增 ReportRequest、ReportServiceResult 请求/响应模型;新增引擎预热机制;PDF 生成改为 Task.Run 后台线程执行,解决进度窗口和主窗口卡死问题;完善文档。 2026-05-14 19:29:11 +08:00
QI Mingxuan 11c69d03fb 报告ReportEngineBase修改语言资源文件,修改模板和报告输出功能。 2026-05-13 17:36:54 +08:00
QI Mingxuan 1d3cacea75 报告ReportEngineBase增加页眉页脚,修改因模板变动和分栏、边距等需要修改的函数代码。 2026-05-13 17:36:25 +08:00
QI Mingxuan b1c5ab546b 报告ReportEngineBase增加必要的设置和配置项目。 2026-05-13 17:35:06 +08:00
QI Mingxuan 6d4a662823 修复字体文件在Terelik中无法pdf正确加载的问题,优化报告模板,新增丰富的测试i数据和图片,优化报告输出流程,根据优化修改文档和移除文件。 2026-05-12 21:18:23 +08:00
QI Mingxuan e20201c206 新增字体嵌入文件,新增Readme、修改部分资料md文件。 2026-05-12 08:54:34 +08:00
QI Mingxuan c5a390935e 报告XP.ReportEngine模块:根据项目设计搭建数据处理层,数据绑定器实现,PDF渲染和生成功能开发实现。 2026-05-11 19:18:46 +08:00
QI Mingxuan 1573a33a02 报告XP.ReportEngine基础类设计和接口开发。 2026-05-11 16:40:24 +08:00
QI Mingxuan 18111b8468 新增XP.ReportEngine空项目 2026-05-11 13:09:23 +08:00