qh 10 months ago
commit
de092fb193
1 changed files with 212 additions and 0 deletions
  1. 212 0
      ReadMe.md

+ 212 - 0
ReadMe.md

@@ -0,0 +1,212 @@
+设计一个 **医院教学管理系统** 需要满足医院对本科生、研究生、留学生、规培生四个群体的教学业绩管理需求。以下是系统的详细需求分析和设计方案:
+
+---
+
+## **一、系统需求分析**
+
+### 1. **用户角色**
+系统需要支持以下用户角色:
+- **管理员**:负责系统管理、用户权限分配、基础数据维护等。
+- **教学秘书**:负责教学业绩的录入、审核、统计等。
+- **教师**:查看自己的教学任务和业绩。
+- **学生**:查看自己的学习任务和成绩。
+- **审核人员**:负责审核教学业绩。
+
+---
+
+### 2. **功能需求**
+#### (1)**教学业绩录入**
+- 支持录入本科生、研究生、留学生、规培生的教学业绩。
+- 业绩内容包括:
+    - 课程教学(如授课学时、课程名称、学生人数等)。
+    - 临床带教(如带教时长、带教内容、学生反馈等)。
+    - 科研指导(如指导学生论文、科研项目等)。
+    - 其他教学任务(如讲座、培训等)。
+
+#### (2)**教学业绩查询**
+- 支持按以下条件查询教学业绩:
+    - 学生类型(本科生、研究生、留学生、规培生)。
+    - 教师姓名。
+    - 时间范围(如某学期或某年度)。
+    - 业绩类型(如课程教学、临床带教等)。
+
+#### (3)**教学业绩审核**
+- 教学秘书提交业绩后,审核人员可以对业绩进行审核。
+- 审核结果包括:
+    - 通过。
+    - 不通过(需填写原因)。
+    - 退回修改。
+
+#### (4)**教学业绩统计**
+- 支持按以下维度统计教学业绩:
+    - 教师维度:统计每位教师的教学任务和业绩。
+    - 学生维度:统计每位学生的学习任务和成绩。
+    - 科室维度:统计各科室的教学任务和业绩。
+    - 时间维度:按学期或年度统计教学业绩。
+
+#### (5)**基础数据管理**
+- 支持管理以下基础数据:
+    - 教师信息(如姓名、职称、科室等)。
+    - 学生信息(如姓名、学号、类型等)。
+    - 课程信息(如课程名称、学时、学分等)。
+    - 科室信息(如科室名称、负责人等)。
+
+#### (6)**权限管理**
+- 支持按角色分配权限:
+    - 管理员:拥有所有权限。
+    - 教学秘书:可录入、查询、统计业绩。
+    - 教师:可查看自己的教学任务和业绩。
+    - 学生:可查看自己的学习任务和成绩。
+    - 审核人员:可审核教学业绩。
+
+#### (7)**报表导出**
+- 支持将教学业绩数据导出为 Excel 或 PDF 格式。
+
+---
+
+### 3. **非功能需求**
+- **安全性**:系统需支持用户身份验证和权限控制。
+- **性能**:系统需支持高并发访问,响应时间不超过 3 秒。
+- **可扩展性**:系统需支持未来功能扩展。
+- **易用性**:系统界面简洁,操作方便。
+
+---
+
+## **二、系统设计方案**
+
+### 1. **系统架构**
+系统采用 **前后端分离** 的架构:
+- **前端**:使用 Vue.js 或 React 构建用户界面。
+- **后端**:使用 Spring Boot 提供 RESTful API。
+- **数据库**:使用 MySQL 或 PostgreSQL 存储数据。
+
+---
+
+### 2. **数据库设计**
+#### (1)**主要表结构**
+- **用户表(user)**
+    - `id`:用户ID(主键)。
+    - `username`:用户名。
+    - `password`:密码。
+    - `role`:角色(管理员、教学秘书、教师、学生、审核人员)。
+
+- **教师表(teacher)**
+    - `id`:教师ID(主键)。
+    - `name`:姓名。
+    - `title`:职称。
+    - `department_id`:科室ID(外键)。
+
+- **学生表(student)**
+    - `id`:学生ID(主键)。
+    - `name`:姓名。
+    - `student_id`:学号。
+    - `type`:学生类型(本科生、研究生、留学生、规培生)。
+
+- **教学业绩表(teaching_record)**
+    - `id`:业绩ID(主键)。
+    - `teacher_id`:教师ID(外键)。
+    - `student_id`:学生ID(外键)。
+    - `type`:业绩类型(课程教学、临床带教、科研指导等)。
+    - `content`:业绩内容。
+    - `hours`:学时。
+    - `status`:审核状态(待审核、通过、不通过)。
+    - `create_time`:创建时间。
+
+- **审核记录表(audit_record)**
+    - `id`:审核记录ID(主键)。
+    - `teaching_record_id`:教学业绩ID(外键)。
+    - `auditor_id`:审核人员ID(外键)。
+    - `result`:审核结果(通过、不通过、退回修改)。
+    - `comment`:审核意见。
+    - `audit_time`:审核时间。
+
+---
+
+### 3. **接口设计**
+#### (1)**教学业绩录入**
+- **URL**:`/api/teaching-record`
+- **方法**:POST
+- **请求参数**:
+  ```json
+  {
+    "teacher_id": 1,
+    "student_id": 1,
+    "type": "课程教学",
+    "content": "内科课程",
+    "hours": 20
+  }
+  ```
+- **响应**:
+  ```json
+  {
+    "code": 200,
+    "message": "录入成功"
+  }
+  ```
+
+#### (2)**教学业绩查询**
+- **URL**:`/api/teaching-record`
+- **方法**:GET
+- **请求参数**:
+    - `teacher_id`:教师ID(可选)。
+    - `student_id`:学生ID(可选)。
+    - `type`:业绩类型(可选)。
+    - `start_time`:开始时间(可选)。
+    - `end_time`:结束时间(可选)。
+- **响应**:
+  ```json
+  {
+    "code": 200,
+    "data": [
+      {
+        "id": 1,
+        "teacher_name": "张三",
+        "student_name": "李四",
+        "type": "课程教学",
+        "content": "内科课程",
+        "hours": 20,
+        "status": "通过"
+      }
+    ]
+  }
+  ```
+
+#### (3)**教学业绩审核**
+- **URL**:`/api/teaching-record/audit`
+- **方法**:POST
+- **请求参数**:
+  ```json
+  {
+    "teaching_record_id": 1,
+    "result": "通过",
+    "comment": "符合要求"
+  }
+  ```
+- **响应**:
+  ```json
+  {
+    "code": 200,
+    "message": "审核成功"
+  }
+  ```
+
+---
+
+### 4. **技术栈**
+- **前端**:Vue.js + Element UI。
+- **后端**:Spring Boot + MyBatis。
+- **数据库**:MySQL。
+- **部署**:Docker + Nginx。
+
+---
+
+### 5. **系统流程**
+1. 教学秘书录入教学业绩。
+2. 审核人员审核业绩。
+3. 教师和学生查询业绩。
+4. 管理员统计和导出业绩数据。
+
+---
+
+## **三、总结**
+该医院教学管理系统通过模块化设计,满足了医院对本科生、研究生、留学生、规培生的教学业绩管理需求。系统具有高扩展性和易用性,能够有效提升医院教学管理的效率。