1
0
Code Issues Pull Requests Packages Projects Releases Wiki Activity GitHub Gitee
epp/README.md

200 lines
5.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Epidemic prevention platform
> 基于微服务的社区疫情防控系统(防疫平台)
代码仓库:[GitHub](https://github.com/coder-xiaomo/epp) [Gitee](https://gitee.com/coder-xiaomo/epp) [自建](https://git.only4.work/coder-xiaomo/epp)
## 简介
## 功能
对社区疫情管控模式进行分析,针对社区人员进出入、体温上报、买菜团购、药品购置等日常生活物资的调控与管理进行分析。深入了解微服务架构,设计并实现社区疫情防控系统
## 要求
1.分析社区疫情管控模式需求;
2.深入理解微服务架构思想;
3.设计并实现社区疫情防控各模块;
4.撰写论文
## 使用技术栈
项目开发环境Ubuntu 22.04、OpenJDK 11、MySQL 8.0.12
| 板块 | 技术栈 | 开发工具 | 备注 |
| ------ | --------------------------------------------------------- | ------------- | ---- |
| 前端 | Vue 3JavaScript框架、Element PlusUI组件库 | VS Code | 暂定 |
| 后端 | Java 11开发语言、SpringCloud微服务、Redis缓存 | Intellij IDEA | |
| 数据库 | MySQL数据存储 | Navicat | |
## 需要确定的细节
用户是自己注册还是社区提供账号或者是社区提供token用户刷卡实现身份验证
## 一些需要细想的想法
用户和身份分离:一个用户账号可以绑定多个身份,比如一个社区人员同时可以是志愿者
## 前端系统设计
### 管理员端
### 社区人员端
### 志愿者端
## 后端模块设计
用户认证模块(用户登录、注册、三方授权登录等)
用户信息模块(用户基本信息<住址联系方式>
用户健康状态模块(维护用户的健康状态,与外部系统同步信息)
生活物资模块(维护生活物资商品信息<菜品药品>
订单模块(社区人员下单,涉及到秒杀相关,可指定上门派送、自取或者由用户自主选择)
派送模块()
## 数据库设计
> 微服务:一个服务对应一个数据库,同一个信息可能存在不同的数据库
用户表
人员进出日志表(按月归档)
体温上报表(按日归档)
## 启动项目
### 后端
### 前端
代码克隆下来后,第一次需要安装依赖
```bash
cd ./frontend
npm install --legacy-peer-deps
```
之后在 `frontend` 目录下运行即可
```bash
npm run serve
```
## 开发步骤记录
### 前端
#### 初始化Element-plus项目
参考https://blog.csdn.net/weixin_39237340/article/details/121132154
```bash
# 检查 node 版本
node -v
# 安装 vue3 脚手架
npm install -g @vue/cli
# 查看安装的 vue/cli 版本
vue --version
# 使用GUI(可视化面板)形式来创建vue项目
vue ui
# npm install element-plus --save
```
### 后端
#### SpringCloud组件
| 功能 | 组件 |
| -------------------------------- | ------------------------------------------------------------ |
| 服务注册中心(服务注册与发现) | Eureka(停更)、Zookeeper、Consul、Alibaba Nacos(推荐) |
| 服务调用(服务负载与调用) | Netflix OSS Ribbon(进入维护)、SpringCloud LoadBlancer<br />Netflix Feign(停更)、OpenFeign |
| 服务降级(服务熔断降级) | Hystrix(停更)、resilience4j、Alibaba Sentinel(推荐) |
| 服务网关 | Zuul(停更)、Zuul2(胎死腹中)、SpringCloud Gateway(推荐) |
| 服务分布式配置(服务分布式配置) | SpringCloud Config(不再使用)、Alibaba Nacos(推荐) |
| 服务总线 | SpringCloud Bus(不再使用)、Alibaba Nacos(推荐) |
| 服务开发 | Spring Boot |
#### 创建Module步骤
1. 创建Module
2. 改pom
3. 写yml
4. 主启动
5. 业务类
## 相关链接
### 后端
#### JDK
OpenJDKhttps://openjdk.org/
Java SE 11https://jdk.java.net/java-se-ri/11
#### Spring
Spring Cloud官网https://spring.io/projects/spring-cloud
Spring Cloud Alibaba GitHub repohttps://github.com/alibaba/spring-cloud-alibaba
Spring initializrhttps://start.spring.io/
https://start.spring.io/#!type=maven-project&language=java&platformVersion=2.7.5&packaging=jar&jvmVersion=11&groupId=com.cxyxiaomo&artifactId=entrance&name=Epidemic%20prevention%20platform&description=&packageName=com.cxyxiaomo.entrance&dependencies=lombok,mysql,mybatis
#### Maven
MVN REPOSITORYhttps://mvnrepository.com/
### 前端
#### Element Plus
Element Plus官网https://element-plus.gitee.io/zh-CN/
安装https://element-plus.gitee.io/zh-CN/guide/installation.html
#### Ant Design
Ant Design of Vuehttps://www.antdv.com/docs/vue/introduce