| 
					
				 | 
			
			
				@@ -0,0 +1,117 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+## 1、医生问诊模块 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+- 医生问诊模块描述 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    - 医生问诊模块的主要功能包括患者根据自己的病状判断所需要的科室,并进行预约就诊,然后医生与其预约的人进行在线咨询,并通过患者提供的症状,给出相应的病症以及相应的药物等。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+根据您提供的描述,以下是针对医生问诊模块的 Parse Schema 设计,涵盖患者、医生、科室、预约和咨询等相关信息。我们将确保每个表符合设计范式,并使用 PlantUML 类图来表示这些表及其关系。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+### Parse Schema 设计 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+1. **User(用户表)** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - objectId: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - createdAt: Date 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - username: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - password: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - email: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - phoneNumber: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - userType: String(例如:患者或医生) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - medicalHistory: String(仅适用于患者) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+2. **Doctor(医生表)** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - objectId: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - createdAt: Date 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - user: Pointer<User> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - specialty: String(专业领域) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - qualifications: String(资格证书) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+3. **Department(科室表)** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - objectId: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - createdAt: Date 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - departmentName: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - description: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+4. **Appointment(预约表)** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - objectId: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - createdAt: Date 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - patient: Pointer<User>(患者) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - doctor: Pointer<Doctor>(医生) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - department: Pointer<Department> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - appointmentDate: Date 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - status: String(例如:已预约、已取消、已完成) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+5. **Consultation(在线咨询表)** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - objectId: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - createdAt: Date 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - appointment: Pointer<Appointment> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - symptoms: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - diagnosis: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - prescribedMedication: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   - consultationDate: Date 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+### PlantUML 类图表示 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+```plantuml 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@startuml 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+class User { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +objectId: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +createdAt: Date 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +username: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +password: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +email: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +phoneNumber: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +userType: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +medicalHistory: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+class Doctor { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +objectId: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +createdAt: Date 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +user: Pointer<User> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +specialty: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +qualifications: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+class Department { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +objectId: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +createdAt: Date 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +departmentName: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +description: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+class Appointment { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +objectId: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +createdAt: Date 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +patient: Pointer<User> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +doctor: Pointer<Doctor> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +department: Pointer<Department> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +appointmentDate: Date 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +status: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+class Consultation { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +objectId: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +createdAt: Date 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +appointment: Pointer<Appointment> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +symptoms: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +diagnosis: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +prescribedMedication: String 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    +consultationDate: Date 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+User "1" -- "0..*" Appointment : books 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+Doctor "1" -- "0..*" Appointment : provides 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+Department "1" -- "0..*" Appointment : offers 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+Appointment "1" -- "1" Consultation : includes 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@enduml 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+``` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+### 表说明 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+- **User 表**:存储用户信息,包含患者和医生的基本信息。患者的病史信息存储在 `medicalHistory` 字段中。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+- **Doctor 表**:存储医生的详细信息,包含与用户表的关联、专业领域和资格证书。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+- **Department 表**:存储科室信息,如科室名称及描述。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+- **Appointment 表**:记录患者的预约信息,包括患者、医生、科室、预约时间和状态。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+- **Consultation 表**:记录在线咨询的信息,包括相关的预约、患者提供的症状、医生的诊断和处方药物。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+这种设计确保了患者和医生的角色分离,同时也符合数据库的范式要求。每个表都有唯一的 `objectId` 和 `createdAt` 字段,方便进行数据管理和跟踪。 
			 |