68 lines
4.0 KiB
Markdown
68 lines
4.0 KiB
Markdown
|
|
# Architecture: WCTDataMiner
|
|||
|
|
|
|||
|
|
> 无线充电 FOD(异物检测)日志数据采集系统,从日志文件中解析 Qfod 和 Ploss 数据并存储到数据库
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 文档索引
|
|||
|
|
|
|||
|
|
| 文档 | 说明 |
|
|||
|
|
|------|------|
|
|||
|
|
| [技术选型](./技术选型.md) | 技术栈总览、决策记录 |
|
|||
|
|
| [模块划分](./模块划分.md) | 模块总览、分层架构、依赖关系 |
|
|||
|
|
| [安全架构](./安全架构.md) | 认证方案、数据安全 |
|
|||
|
|
| [解析器设计](./parser/概览.md) | Qfod/Ploss 解析器详细设计 |
|
|||
|
|
| [数据处理流程](./数据处理流程.md) | 解析流程、批量写入、错误处理 |
|
|||
|
|
| [配置管理](./配置管理.md) | 配置文件、配置类定义 |
|
|||
|
|
| [CLI 命令设计](./CLI命令设计.md) | 命令行接口定义 |
|
|||
|
|
| [数据库切换支持](./database/概览.md) | SQLite/PostgreSQL 切换方案 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 架构图
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
┌─────────────────────────────────────────────────────────────┐
|
|||
|
|
│ CLI Entry Point │
|
|||
|
|
│ (Program.cs / System.CommandLine) │
|
|||
|
|
├─────────────────────────────────────────────────────────────┤
|
|||
|
|
│ Service Layer │
|
|||
|
|
├─────────────────────────────────────────────────────────────┤
|
|||
|
|
│ ParseService │ ErrorHandlingService │ ThresholdCalc │
|
|||
|
|
├─────────────────────────────────────────────────────────────┤
|
|||
|
|
│ Parser Layer │
|
|||
|
|
├─────────────────────────────────────────────────────────────┤
|
|||
|
|
│ QfodParser │ PlossParser │ LogFileReader │
|
|||
|
|
├─────────────────────────────────────────────────────────────┤
|
|||
|
|
│ Data Layer │
|
|||
|
|
├─────────────────────────────────────────────────────────────┤
|
|||
|
|
│ Models │ WctMinerDbContext │ IDbContextFactory │
|
|||
|
|
├─────────────────────────────────────────────────────────────┤
|
|||
|
|
│ Infrastructure │
|
|||
|
|
├─────────────────────────────────────────────────────────────┤
|
|||
|
|
│ Configuration │ Serilog │ AppSettings │
|
|||
|
|
└─────────────────────────────────────────────────────────────┘
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 核心设计原则
|
|||
|
|
|
|||
|
|
| 原则 | 说明 |
|
|||
|
|
|------|------|
|
|||
|
|
| 技术栈 | .NET 8.0 LTS + C# 12.0 + EF Core 8.0 |
|
|||
|
|
| 数据库 | SQLite(当前)/ PostgreSQL(后续),配置切换 |
|
|||
|
|
| 解析模式 | 批处理,正则表达式匹配 |
|
|||
|
|
| ORM 模式 | Code First,支持迁移自动化 |
|
|||
|
|
| CLI 框架 | System.CommandLine,命令模式 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 假设/歧义标注
|
|||
|
|
|
|||
|
|
| 标注 | 内容 |
|
|||
|
|
|------|------|
|
|||
|
|
| [A] | 使用 .NET 8.0 LTS 版本 |
|
|||
|
|
| [A] | 初期使用 SQLite,架构支持切换 PostgreSQL |
|
|||
|
|
| [?] | 增量解析策略需确认 |
|
|||
|
|
| [?] | 多次解析同一文件的处理策略需确认 |
|