27/README.md

63 lines
2.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# ODF 光纤配线单元管理系统
基于需求分析结果生成的 C++17 工程,提供 ODF 光纤配线单元的标准化数据建模、编码生成、兼容性校验、典型配置管理与项目排期跟踪功能。
## 目录结构
```
├── CMakeLists.txt # CMake 构建配置C++17MSVC /utf-8 支持)
├── README.md
├── include/
│ └── app.hpp # 核心头文件数据结构、枚举、ODFManager 类声明
├── src/
│ ├── app.cpp # ODFManager 业务逻辑实现
│ └── main.cpp # 命令行演示入口
└── tests/
└── basic_test.cpp # 单元测试(标准库 assert无外部依赖
```
## 构建与运行
### 前置要求
- CMake >= 3.10
- 支持 C++17 的编译器GCC 8+, Clang 7+, MSVC 2019+
### 编译步骤
```bash
cd codegen-runs/codegen_0aba9d8655fb4800802d9d53d920a8a4
mkdir -p build && cd build
cmake ..
cmake --build .
```
### 运行主程序
```bash
./odf_manager
```
主程序演示:编码生成、典型配置查询、兼容性校验、标签打印、里程碑排期导出。
### 运行单元测试
```bash
./basic_test
```
共 6 个测试用例覆盖:编码生成(含唯一性冲突处理)、适配器兼容性校验、单元注册(含容量约束与重复检测)、典型配置查询、标签与里程碑功能。
## 设计要点
| 需求 | 实现 |
|------|------|
| ODF 单元数据结构 | `ODFUnitInfo` 结构体,包含 ID、型号、位置、制造商、适配器列表 |
| 适配器接口规格 | `AdapterSpec` 结构体含接口类型LC/SC/MPO、等级OM1-OS2、端面UPC/APC、插损/回损 |
| 命名编码规则 | `generate_naming_code()` 格式 `[site]-[cabinet]-[slot]`,长度 ≤ 64 字符,冲突自动去重 |
| 典型配置方案 | `TypicalConfig` 结构 + `register/get_typical_config` 接口 |
| 兼容性校验 | `validate_adapter_compatibility()` 按接口类型匹配,允许 UPC ↔ APC 混合 |
| 项目里程碑 | `Milestone` 结构 + `export_milestone_schedule()` 输出文本表格 |
| 标签打印 | `print_label()` 生成含文本 + 二维码占位符的标签内容 |
| 容量约束 | 注册时校验 `max_capacity_cores ≤ 288` |