# yygh_parent **Repository Path**: xuan-jian/yygh_parent ## Basic Information - **Project Name**: yygh_parent - **Description**: 尚医通-后端代码 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 15 - **Forks**: 2 - **Created**: 2022-04-03 - **Last Updated**: 2025-08-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: 尚医通, 分布式微服务架构 ## README ## 尚医通 ##### 如有帮助请点Star,非常感谢。 ### 1.项目简述及总结 本项目根据尚硅谷视频教程制作,完成了视频中除阿里云OSS云存储以外的所有功能,采用邮箱的方式代替手机号登陆,并且由于是医院模拟系统没有scehdule_id数据,采用排班的id代替schedule_id。 通过对该项目的学习,学习到了很多微服务架构项目中会遇到的问题及其解决方案 同时增加了排查bug的能力(懂得都懂 :new_moon_with_face: ) 以下是本人总结的几个 常见问题 [初期遇到的数据库表和前端代码勘误](文档:尚医通运行(1).note 链接:http://note.youdao.com/noteshare?id=8fc26bcb223411b70e8106c0db5ff280&sub=F38CF56B13A448489235248E39CDF81F) 这是大佬们总结的一个文档 https://docs.qq.com/doc/DT2JPQUVvb015RHVB 附pdf版:[常见错误说明](https://gitee.com/xuan-jian/yygh_parent/blob/master/img/%E5%B0%9A%E5%8C%BB%E9%80%9A%E9%A1%B9%E7%9B%AE%E2%80%94%E2%80%94%E9%97%AE%E9%A2%98%E6%9F%A5%E8%AF%A2%EF%BC%88%E6%9B%B4%E6%96%B0222%E4%B8%AA%EF%BC%89.pdf) ### 2.项目功能介绍 ①项目后端技术栈,采用主流的SpringBoot+SpringCloud微服务架构,全面使用了目前流行的NoSQL技术,使用Redis缓存数据,使用MongoDB实现高并发读写,整合消息中间件RabbitMQ提高订单的并发量,同时还整合了定时任务,实现就医提醒功能,综合应用了阿里云OSS,短信服务,使用JWT实现单点登录,Nacos与SpringGateway解决跨域问题,实现了负载均衡。 ②项目前端技术栈,采用主流前端框架Vue,使用Nuxt和vue-admin-template模板搭建页面环境,采用Element-ui进行页面布局,Npm进行依赖管理,axios进行异步调用,使用ECharts进行图表显示,实现全栈开发。 ### 3.项目地址 #### 3.1项目源码: 前台-前端项目地址gitee : https://gitee.com/xuan-jian/yygh-site 后台-前端项目地址gitee : https://gitee.com/xuan-jian/vue-admin-template-master 数据库以及所[数据库文件](https://gitee.com/xuan-jian/yygh_parent/tree/master/img/%E6%95%B0%E6%8D%AE%E5%BA%93) 医院模拟系统用到的json文件[医院模拟系统用到的json文件](https://gitee.com/xuan-jian/yygh_parent/tree/master/img/%E6%A8%A1%E6%8B%9F%E5%8C%BB%E9%99%A2%E6%8E%A5%E5%8F%A3json%E6%95%B0%E6%8D%AE) newscehdule.json使用方法:将2022-04替换到你所运行项目的当前年份与月份 #### 3.2项目访问地址: 或者吧localhost换成192.168.31.154 具体在前后端根据自己的ip地址自行调整 后台:[localhost:9528](http://localhost:9528) 前台:[localhost:3000](http://localhost:3000) 医院模拟系统:[localhost:9998](http://localhost:9998) ### 4.快速部署本地项目 #### 4.1后端: 编译环境:JDK8 数据库:Redis,MongoDB,MySQL(5.7以上版本) 中间件:NACOS,RabbitMQ #### 4.2前端: node.js node14.18.2 建议使用淘宝镜像 cnpm 一键安装 中途可能会碰到node.js版本与其他插件的冲突 #### 4.3环境安装 安装可参考:liilshop-环境部署手册-v1.0_巅峰键盘侠的博客-CSDN博客 https://blog.csdn.net/lihailin9073/article/details/122493969 #### 4.4项目目录 hospital-manage:医院接口模拟端(已开发,直接使用) yygh-parent:根目录,管理子模块: common:公共模块父节点 common-util:工具类模块,所有模块都可以依赖于它 rabbit-util:rabbitmq业务封装 service-util:service服务的工具包,包含service服务的公共配置类,所有ervice模块依赖于它 server-gateway:服务网关 model:实体类模块 service:api接口服务父节点 service-hosp:医院api接口服务 service-cmn:公共api接口服务 service-user:用户api接口服务 service-order:订单api接口服务 service-oss:文件api接口服务 service-sms:短信 api接口服务 service-task:定时任务服务 service-statistics:统计api接口服务 service-client:feign服务调用父节点 service-cmn-client:公共api接口 service-hosp-client:医院api接口 service-order-client:订单api接口 ### 5.功能列表 #### 5.1后台管理功能 1、医院设置管理 (1)医院设置列表、添加、锁定、删除 (2)医院列表、详情、排班、下线 2、数据管理 (1)数据字典树形显示、导入、导出 3、用户管理 (1)用户列表、查看、锁定 (2)认证用户审批 4、订单管理 (1)订单列表、详情 5、统计管理 (1)预约统计 #### 5.2前端功能 1.、首页数据显示 (1)医院列表 2、医院详情显示 (1)医院科室显示 3、用户登录功能 (1)手机号登录(短信验证码发送) (2)微信扫描登录 4、用户实名认证 5、就诊人管理 (1)列表、添加、详情、删除 6、预约挂号功能 (1)排班和挂号详情信息 (2)确认挂号信息 (3)生成预约挂号订单 (4)挂号订单支付(微信) (5)取消预约订单 7、就医提醒功能 ### 6.技术选型 #### 6.1架构图 ![架构图](img/%E5%B0%9A%E5%8C%BB%E9%80%9A%E6%9E%B6%E6%9E%84%E5%9B%BE/%E5%B0%9A%E5%8C%BB%E9%80%9A%E6%9E%B6%E6%9E%84%E5%9B%BE.png) #### 6.2业务流程图 ![业务流程图](img/%E5%B0%9A%E5%8C%BB%E9%80%9A%E4%B8%9A%E5%8A%A1%E6%B5%81%E7%A8%8B%E5%9B%BE/%E5%B0%9A%E5%8C%BB%E9%80%9A%E4%B8%9A%E5%8A%A1%E6%B5%81%E7%A8%8B.png) ### 7.后台技术选型 | 说明 | 框架 | 说明 | 框架 | | -------------- | --------------- | -------------- | ------------- | | 基础框架 | Spring Boot | 微服务框架| SpringCloud | | 持久框架 | Mybatis-Plus | 程序构建 | Maven | | 关系型数据库 | MySQL | 消息中间件 | RabbitMQ | | 缓存 | Redis | 注册服务中心|Nacos| | 负载均衡-1 | Nginx | 负载均衡-2|Spring Gareway | 短信 | 阿里云短信 | 认证 | JWT | | 日志处理 | Log4j | 接口规范 | RESTful | | 非关系型数据库 | MongoDB ### 8.前端技术选型 | 说明 | 框架 | 说明 | 框架 | | ---------- | ---------- | ---------- | ------- | | 打包工具 | Webpack | JS版本 | ES6 | | 基础JS框架 | Vue.js | 路由管理 | Vue Router | | 状态管理 | Vuex | 基础UI库 | Element-ui | |UI界面基于 | vueAdmin-template |网络请求 | axios | ### 9.版本升级 ``` 后续会考虑推出 ``` 可以采用xx-job替代现有的定时提醒功能 添加Elasticsearch搜索引擎 对Redis加入分布式锁Redisson 加入Spring Security框架 增加医院挂号排名功能 为用户进行推荐...... ### 10.项目前端功能展示 #### 10.1前台 #### 前台页面: ![前台页面](img/%E5%89%8D%E5%8F%B0/%E5%89%8D%E5%8F%B0%E9%A1%B5%E9%9D%A2.png) #### 邮箱登陆页面: ![邮箱登陆页面](img/%E5%89%8D%E5%8F%B0/%E9%82%AE%E7%AE%B1%E7%99%BB%E9%99%86.png) #### 微信登陆页面: ![微信登陆页面](img/%E5%89%8D%E5%8F%B0/%E5%BE%AE%E4%BF%A1%E7%99%BB%E5%BD%95%E9%A1%B5%E9%9D%A2.png) #### 医院详情页面: ![医院详情页面](img/%E5%89%8D%E5%8F%B0/%E5%8C%BB%E9%99%A2%E8%AF%A6%E6%83%85%E9%A1%B5%E9%9D%A2.png) #### 挂号页面: ![挂号页面](img/%E5%89%8D%E5%8F%B0/%E6%8C%82%E5%8F%B7%E9%A1%B5%E9%9D%A2.png) #### 确认挂号页面: ![确认挂号页面](img/%E5%89%8D%E5%8F%B0/%E7%A1%AE%E8%AE%A4%E6%8C%82%E5%8F%B7%E9%A1%B5%E9%9D%A2.png) #### 预约成功页面: ![预约成功页面](img/%E5%89%8D%E5%8F%B0/%E9%A2%84%E7%BA%A6%E6%88%90%E5%8A%9F%E9%A1%B5%E9%9D%A2.png) #### 支付页面: ![支付页面](img/%E5%89%8D%E5%8F%B0/%E6%94%AF%E4%BB%98%E9%A1%B5%E9%9D%A2.png) #### 取消预约页面: ![取消预约页面](img/%E5%89%8D%E5%8F%B0/%E5%8F%96%E6%B6%88%E9%A2%84%E7%BA%A6%E9%A1%B5%E9%9D%A2.png) #### 就诊人管理页面: ![就诊人管理页面](img/%E5%89%8D%E5%8F%B0/%E5%B0%B1%E8%AF%8A%E4%BA%BA%E7%AE%A1%E7%90%86%E9%A1%B5%E9%9D%A2.png) #### 前台订单管理页面: ![前台订单管理页面](img/%E5%89%8D%E5%8F%B0/%E5%89%8D%E5%8F%B0%E8%AE%A2%E5%8D%95%E9%A1%B5%E9%9D%A2.png) #### 10.2后台 #### 后台管理主页面: ![后台管理主页面](img/%E5%90%8E%E5%8F%B0/%E5%90%8E%E7%AB%AF%E7%AE%A1%E7%90%86%E9%A1%B5%E9%9D%A2.png) #### 用户管理页面: ![用户管理页面](img/%E5%90%8E%E5%8F%B0/%E5%90%8E%E5%8F%B0%E7%94%A8%E6%88%B7%E7%AE%A1%E7%90%86.png) #### 订单列表页面: ![订单列表页面](img/%E5%90%8E%E5%8F%B0/%E8%AE%A2%E5%8D%95%E5%88%97%E8%A1%A8.png) #### 订单详情页面: ![订单详情页面](img/%E5%90%8E%E5%8F%B0/%E8%AE%A2%E5%8D%95%E8%AF%A6%E6%83%85.png) #### 预约统计页面: ![预约统计页面](img/%E5%90%8E%E5%8F%B0/%E9%A2%84%E7%BA%A6%E7%BB%9F%E8%AE%A1%E9%A1%B5%E9%9D%A2.png) #### 10.3还有一些必备的中间件和以及医院模拟截图都在[其他截图](https://gitee.com/xuan-jian/yygh_parent/tree/master/img) #### 10.4医院模拟系统按照医院设置->医院信息->科室列表->排班列表依次填入[json数据](https://gitee.com/xuan-jian/yygh_parent/tree/master/img/%E6%A8%A1%E6%8B%9F%E5%8C%BB%E9%99%A2%E6%8E%A5%E5%8F%A3json%E6%95%B0%E6%8D%AE)中的json数据