- 物品管理模块 :支持物品的新增、修改、删除、查看,维护物品编号、名称、型号、库存数量及描述信息,并实时同步库存。
- 借用管理模块 :录入借用人、借用物品、数量、借用日期与预计归还日期,借用前自动校验库存,库存充足方可完成借用并同步扣减库存。
- 归还管理模块 :登记归还数量与归还日期,更新借用状态(借用中 / 已归还),并按实际数量恢复库存。
- 查询模块 :支持按物品名称、物品编号、借用人等关键字检索物品信息及借用记录,返回联表查询结果。
- 出入账报表模块 :生成"出入账明细报表"与"物品借用统计报表",统计借用次数、借用总量、归还量与出库量。
- 用户与权限模块 :提供登录、注册、管理员/普通用户角色区分与切换用户功能。
- 数据持久化模块 :将物品、借用、归还数据保存至 TXT 文件,程序重启后自动加载,保证数据不丢失。
- 图形界面总览 :左侧导航(总览 / 物品管理 / 借还管理 / 报表查询),顶部展示物品总数、借用记录、在借数量、归还记录等关键指标卡片。
- 我负责的具体任务 :负责系统整体架构设计与模块划分,主导数据模型(`model.h` )定义,完成数据持久化层(`storage.c` /`sync.c` )、公共工具层(`utils.c` )以及 Qt6 图形界面(`mainwindow.cpp` )的开发与集成,并编写《需求分析文档》《架构文档》《码风规范》等项目文档,协调 P2–P5 各模块对接。
- 技术栈与架构 :系统采用 分层架构 设计——数据层(model / storage)、业务层(item / borrow / report / query)、展示层(ui / mainwindow)、工具层(utils)与同步层(sync)。核心业务逻辑用 C11 编写,通过`extern "C"` 与 C++17 / Qt6 Widgets 图形层混合编译,使用 CMake 统一构建并借助 Qt Linguist 完成中文本地化。
- 实现亮点与难点 :
- 亮点 :一套 C 核心逻辑同时支撑命令行版与 Qt 图形版两种形态,业务逻辑高度复用;三层架构职责清晰,模块低耦合、易扩展;引入 sync 层统一数据落盘,保证内存数据与文件数据一致。
- 难点 :借用与归还流程中的 库存一致性 控制(借用校验库存、归还恢复库存、部分归还状态标记);C 与 C++ 混合编译的接口边界处理;TXT 文本格式的 解析容错 与结构体定长字段的读写映射;多关键字联表查询与多维度统计报表的聚合计算。