#ifndef DOCTOR_H #define DOCTOR_H #include #include class JsonValue; // 医生职称:主任 / 副主任 / 主治 / 住院医师 enum class DoctorTitle { Chief, // 主任医师 AssociateChief, // 副主任医师 Attending, // 主治医师 Resident // 住院医师 }; // Doctor 实体:DoctorID、姓名、科室ID、职称、出诊时间安排 class Doctor { public: std::string DoctorID; // 唯一主键 std::string Name; // 姓名 std::string DepartmentID; // 所属科室 ID DoctorTitle Title; // 职称 std::string Schedule; // 出诊时间安排(如 "Mon AM, Wed PM") Doctor(); Doctor(const std::string& doctorID, const std::string& name, const std::string& departmentID, DoctorTitle title, const std::string& schedule); // Generate UUID for new doctor static std::string generateUniqueId(); // JSON bridge (与 Ward 保持风格一致) JsonValue toJson() const; static Doctor fromJson(const JsonValue& v); }; #endif