项目名称: 在线挂号预约系统 系统实现:Django + VUE + ElementUI + axios 运行环境:Python3.9 + MySQL8.x + NodeJS 开发工具:PyCharm + Hubilderx 特别说明:PyCharm 进行项目开发过程中,需要在工具中进行正确的虚拟环境设置,安装需要的依赖包,同时在本地计算机中也需要安装,也就是说在 PyCharm 虚拟环境中安装 Django、PyMySQL ,本地计算机中也需要使用 pip install 依赖名称 的方式安装Django、PyMySQL
1. 项目预览
客户端首页
客户端医师列表
管理端登陆页
管理端登陆
管理端数据展示
2. 项目设计
系统功能设计
系统角色设计
数据库ER图
3. 项目结构
4. 项目部署
4.1 环境要求
Python, 尽量选择 3.9的版本,测试项目代码在3.9以下的环境中运行会有部分代码不兼容,具体Python安装过程可以参考Python安装配置
NodeJS,这是前端运行所需要的,项目压缩包里包含前端运行所需的依赖模块,所以只需要安装 NodeJS 就可以在终端运行 npm run serve 就可以运行了
MySQL,具体使用版本没有要求,但是必须安装,具体 MySQL 安装过程可以参考 MySQL安装配置
4.2 运行流程
首先,按照 4.1 中的环境要求说明,完成 python、nodejs、mysql 这些软件安装和配置,同时特别提醒,pycharm 运行项目,除了需要在虚拟环境中安装 Django、PyMySQL 这些依赖外,本地最好在安装 python之后使用 pip install 依赖名称 将这些依赖在本地环境中进行安装
第二,复制第5章数据库相关中找到数据库执行的SQL语句,这些SQL语句可以在命令窗口中执行,也可以在Navicat 等图形化管理窗口中执行,执行过程中请移除注释内容,避免对运行造成干扰, 注意:数据库的创建可以复制创建库的语句,之后使用命令语句生成数据库表,最好执行SQL语句中插入的语句将测试数据添加到数据库中
第三,使用代码编辑器打开项目,按照本节4.3、4.4 介绍的内容运行项目,成功运行之后,复制前端运行结果窗口中的路径,在浏览器中打开,输入 账号和密码即可,测试账号和密码存储在 users 表中(账号:admin 密码: admin)
4.3 服务端运行
4.4 前端运行
5. 相关资源
5.1 项目创建
# 创建项目
django-admin startproject server
# 创建应用
python manage.py startapp app
# 生成数据同步文件
python manage.py makemigrations
# 数据变更同步到数据库
python manage.py migrate
5.2 数据库相关
-- 建立数据库
CREATE DATABASE self_register DEFAULT CHARACTER SET utf8;
-- 插入数据
INSERT INTO notices (id, title, detail, put_time) VALUES (3, '关于疫情防护宣传通告', '鉴于当前严峻的疫情形式,为了增强群众防护意识,本周五决定开展社区疫情防护宣传活动,有条件的同事请积极参与', '2022-03-17');
INSERT INTO notices (id, title, detail, put_time) VALUES (4, '五一放假通知', '根据相关规定,本次五一假期放假时间不变,各科室根据实际情况,合理安排。', '2022-03-17');
INSERT INTO offices (id, name, detail, put_time) VALUES (1, '骨科', '外科专业科室,业务包括骨病、肿瘤、小儿畸形等。', '2022-02-21');
INSERT INTO offices (id, name, detail, put_time) VALUES (2, '神经内科', '神经方面二级学科,业务包括脑血管、头痛、癫痫等。', '2022-02-21');
INSERT INTO offices (id, name, detail, put_time) VALUES (3, '妇产科', '外科系统', '2022-02-21');
INSERT INTO offices (id, name, detail, put_time) VALUES (4, '血管外科', '外科系统', '2022-02-21');
INSERT INTO offices (id, name, detail, put_time) VALUES (5, '放疗科', '门诊科室。', '2022-02-21');
INSERT INTO users (id, user_name, pass_word, name, gender, age, phone, create_time, type) VALUES (1, 'admin', 'admin', '张三丰', '女', 45, '90919201', '2022-02-21 12:20:00', 0);
INSERT INTO users (id, user_name, pass_word, name, gender, age, phone, create_time, type) VALUES (17, 'zhoudian', 'zhoudian', '周颠', '男', 34, '90919202', '2022-02-22 20:07:17', 1);
INSERT INTO users (id, user_name, pass_word, name, gender, age, phone, create_time, type) VALUES (18, 'zhaomin', 'zhaomin', '赵敏', '男', 23, '90919203', '2022-02-22 20:08:19', 1);
INSERT INTO users (id, user_name, pass_word, name, gender, age, phone, create_time, type) VALUES (20, 'zhouzhiruo', 'zhouzhiruo', '周芷若', '女', 28, '90919205', '2022-03-17 09:40:58', 1);
INSERT INTO users (id, user_name, pass_word, name, gender, age, phone, create_time, type) VALUES (21, 'dingminjun', 'dingminjun', '丁敏君', '女', 35, '90919206', '2022-03-17 09:42:40', 1);
INSERT INTO users (id, user_name, pass_word, name, gender, age, phone, create_time, type) VALUES (22, 'pengyingyu', 'pengyingyu', '彭莹玉', '男', 45, '90919207', '2022-03-17 09:45:47', 1);
INSERT INTO users (id, user_name, pass_word, name, gender, age, phone, create_time, type) VALUES (23, 'weiyixiao', 'weiyixiao', '韦一笑', '男', 46, '90919208', '2022-03-17 09:47:26', 1);
INSERT INTO users (id, user_name, pass_word, name, gender, age, phone, create_time, type) VALUES (24, 'fanyao', 'fanyao', '范瑶', '男', 47, '90919209', '2022-03-17 09:52:07', 1);
INSERT INTO users (id, user_name, pass_word, name, gender, age, phone, create_time, type) VALUES (25, 'zhuchangling', 'zhuchangling', '朱长龄', '男', 40, '90919210', '2022-03-17 09:54:42', 1);
INSERT INTO users (id, user_name, pass_word, name, gender, age, phone, create_time, type) VALUES (26, 'zhujiuzhen', 'zhujiuzhen', '朱九真', '女', 30, '90919211', '2022-03-17 09:56:05', 1);
INSERT INTO users (id, user_name, pass_word, name, gender, age, phone, create_time, type) VALUES (27, 'zhaoqiang', 'zhaoqiang', '赵强', '男', 35, '90919212', '2022-03-17 09:57:10', 1);
INSERT INTO users (id, user_name, pass_word, name, gender, age, phone, create_time, type) VALUES (28, 'wangbaobao', 'wangbaobao', '王保保', '男', 36, '90919213', '2022-03-17 09:58:08', 1);
INSERT INTO users (id, user_name, pass_word, name, gender, age, phone, create_time, type) VALUES (29, 'xiexun', 'xiexun', '谢逊', '男', 48, '90919214', '2022-03-17 09:59:43', 1);
INSERT INTO users (id, user_name, pass_word, name, gender, age, phone, create_time, type) VALUES (30, 'hanqianye', 'hanqianye', '韩千叶', '男', 48, '90919215', '2022-03-17 10:02:11', 1);
INSERT INTO users (id, user_name, pass_word, name, gender, age, phone, create_time, type) VALUES (31, 'songyuanqiao', 'songyuanqiao', '宋远桥', '男', 45, '90919212', '2022-03-18 10:15:35', 2);
INSERT INTO patients (id, address, card) VALUES (31, '武当山12号', '202903920');
INSERT INTO doctors (id, record, job, good, total, office_id) VALUES (17, '本科', '医师', '从事骨伤医疗三十余载,潜心钻研,擅长于手法整复骨折脱位,尤以报创点穴按摩法治疗骨关节及软组织损伤疾患、骶骼关节损伤、踝关节损伤后遗症、颈椎病、肩凝症、腰三横突症、跟病症等诸症,技能独特,疗效颇佳', 40.0, 1);
INSERT INTO doctors (id, record, job, good, total, office_id) VALUES (18, '本科', '专家', '本科学历,神经内科主任医师。擅长脑血管病(脑梗塞、脑出血等)及各种病因所致的头疼、瘫痪与遗传性、脱鞘性、感染性疾的诊断与治疗', 50.0, 2);
INSERT INTO doctors (id, record, job, good, total, office_id) VALUES (20, '本科', '主治医师', '擅长股骨头坏死、强直性脊柱炎、腰椎间盘突出、颈椎病、膝关节炎等骨科疾病的诊治。', 100.0, 1);
INSERT INTO doctors (id, record, job, good, total, office_id) VALUES (21, '本科', '主治医师', '擅长宫腹腔镜下的子宫、附件手术,精通宫腹腔镜联合COOK导丝介入治疗,尤其对不孕不育的诊断和治疗有独特之处。对产科有丰富的临床经验。', 100.0, 3);
INSERT INTO doctors (id, record, job, good, total, office_id) VALUES (22, '研究生', '主任医师', '擅长妇产科各类手术,如:子宫全切术,子宫次全切除术,阴道前后壁修补,陈旧性会阴裂伤修补,宫外孕等,各种妇科疑难杂症,做到了万例手术无事故', 120.0, 3);
INSERT INTO doctors (id, record, job, good, total, office_id) VALUES (23, '研究生', '主任医师', '对类风湿关节炎、风湿性关节炎、痛风等风湿病临床科研与诊疗颇有研究。擅长治疗关节疼痛、肿胀、活动受限等问题,临床经验丰富。', 120.0, 1);
INSERT INTO doctors (id, record, job, good, total, office_id) VALUES (24, '本科', '主治医师', '擅长偏瘫康复、脊髓损伤康复、植物人促醒康复,临床经验丰富。', 100.0, 2);
INSERT INTO doctors (id, record, job, good, total, office_id) VALUES (25, '本科', '主治医师', '擅长神经系统疾病康复、骨关节病康复、植物人促醒等等疾病', 100.0, 2);
INSERT INTO doctors (id, record, job, good, total, office_id) VALUES (26, '本科', '主治医师', '擅长偏瘫康复等疾病,临床经验丰富', 80.0, 2);
INSERT INTO doctors (id, record, job, good, total, office_id) VALUES (27, '本科', '主治医师', '擅长偏瘫康复、脊髓损伤康复等疾病,临床经验丰富。', 100.0, 2);
INSERT INTO doctors (id, record, job, good, total, office_id) VALUES (28, '本科', '主治医师', '擅长偏瘫康复,临床经验丰富。', 75.0, 2);
INSERT INTO doctors (id, record, job, good, total, office_id) VALUES (29, '研究生', '主任医师', '对神经内科疾病颇有研究,脊髓损伤康复,临床经验丰富。', 150.0, 2);
INSERT INTO doctors (id, record, job, good, total, office_id) VALUES (30, '本科', '主治医师', '擅长内科疾病、股骨头坏死、强直性脊柱炎、腰椎间盘突出、颈椎病、膝关节炎等疾病的诊治。', 100.0, 1);
INSERT INTO registe_logs (id, registe_time, create_time, total, status, doctor_id, patient_id) VALUES (4, '2022-03-19', '2022-03-18', 150.0, 0, 29, 31);
INSERT INTO registe_logs (id, registe_time, create_time, total, status, doctor_id, patient_id) VALUES (5, '2022-03-24', '2022-03-20', 80.0, 0, 26, 31);