业务背景
1. 组织背景
在学校的日常运营中,教务处设备管理中心承担着维护和管理各类教学设备的重要职责。这些设备包括但不限于欧帝、希沃的教学一体机,联想和戴尔的计算机等,分布在学校的 1 号教学楼、2 号教学楼以及实验楼等各个场所。随着学校教学活动的不断开展,设备的使用频率日益增加,设备出现故障的情况也时有发生。因此,及时、准确地记录设备维修信息对于设备的有效管理和维护至关重要。
后端:采用 Flask 框架构建 Web 应用,处理用户的请求和数据的存储。Flask 是一个轻量级的 Python Web 框架,具有简单易用、灵活性高的特点。
前端:使用 HTML、CSS 和 JavaScript 构建用户界面,结合 Tailwind CSS 框架进行样式设计,实现美观、响应式的界面效果。同时,使用 JavaScript 实现数据的动态加载和分页功能。
数据存储:将维修记录以 CSV 文件的形式存储在本地,方便数据的管理和维护。
### 1. 项目角色、参与人数、开发周期及个人任务
- **项目角色及参与人数**:本项目涉及前端开发人员 1 名、后端开发人员 1 名、测试人员 1 名,共 3 人参与开发。
- **开发周期**:预计开发周期为 2 周。第一周完成前后端的基础功能开发,第二周进行测试和优化。
“我”的具体任务:我是后端开发人员,负责使用 Flask 框架搭建后端服务,实现维修记录的保存、修改功能,处理前端的请求并与 CSV 文件进行交互,同时实现 IP 地址获取和服务器启动相关功能。
### 2. 技术栈、架构、亮点与难点
#### 技术栈
- **后端**:使用 Python 的 Flask 框架构建 Web 应用,利用 `csv` 模块进行 CSV 文件的读写操作,`os` 模块处理文件和目录,`datetime` 模块获取当前日期,`socket` 模块获取本地 IP 地址,使用 `waitress` 作为生产环境的服务器。
- **前端**:使用 HTML、CSS 和 JavaScript 构建用户界面,引入 Tailwind CSS 框架进行样式设计,使用 Font Awesome 图标库提供图标,通过 `fetch` API 异步加载 CSV 文件。
#### 架构
项目采用前后端分离的架构,后端负责数据的存储和处理,前端负责用户界面的展示和交互。前后端通过 HTTP 请求进行通信,前端将用户输入的数据发送到后端,后端处理后返回相应的结果。
#### 亮点
- **轻量级架构**:使用 Flask 框架,代码简洁,易于维护和扩展,适合小型项目的快速开发。
- **数据持久化**:将维修记录以 CSV 文件的形式存储在本地,无需复杂的数据库管理,降低了开发和维护成本。
- **用户体验良好**:前端使用 Tailwind CSS 框架,界面美观、响应式,提供了良好的用