1
0
Code Issues Pull Requests Packages Projects Releases Wiki Activity GitHub Gitee
Epidemic prevention platform (防疫平台) 课程设计项目:基于微服务的社区疫情防控系统
Go to file
2022-11-05 20:22:30 +08:00
.VSCodeCounter 后端微服务框架初步完成(还没跑起来) 2022-10-23 11:43:25 +08:00
backend 修改package 2022-11-05 20:22:30 +08:00
database 数据库调整;microservice-api改为microservice-pojo;创建gateway Module 2022-11-05 19:28:06 +08:00
frontend CRLF改为LF 2022-10-22 22:37:41 +08:00
miniprogram 修改包名;生成二维码功能逻辑调整 2022-11-05 18:24:05 +08:00
.editorconfig CRLF改为LF 2022-10-22 22:37:41 +08:00
.gitignore 连接服务器数据库 2022-10-24 00:21:31 +08:00
README.md Merge branch 'document' 2022-11-05 15:30:09 +08:00
reference.md add miniprogram 2022-11-05 15:28:03 +08:00
Solutions.md Solutions CRLF换行替换为LF 2022-10-22 22:38:41 +08:00

Epidemic prevention platform

基于微服务的社区疫情防控系统(防疫平台)

代码仓库:GitHub Gitee 自建

简介

功能

对社区疫情管控模式进行分析,针对社区人员进出入、体温上报、买菜团购、药品购置等日常生活物资的调控与管理进行分析。深入了解微服务架构,设计并实现社区疫情防控系统

要求

1.分析社区疫情管控模式需求; 2.深入理解微服务架构思想; 3.设计并实现社区疫情防控各模块; 4.撰写论文

功能拆分

功能 功能描述 居民端 门禁端 志愿者端 管理员端
社区人员进出入 临时访客的进出申请、放行逻辑(待定)。
外出返回居民的进社区提前报备;去外地出行前的提前申请。
扩展:
1. 二维码状态颜色(要和政府健康码颜色保持基本一致)
2. 刷脸、刷卡出入

居民:进出入
1. 居民端展示动态二维码,门禁端识别放行
2. 门禁端展示动态二维码,居民端识别放行
(对于行动不便人群提供固定二维码)
管理员:查看、管理居民进出入
1. 查看人员进出记录
2. 设置指定居民进出权限
体温上报 体温/健康信息上报;健康码收集

居民:每日上报体温
(每天上报时相同信息默认自动填充,不需要重复填写)
管理员
1. 查看居民体温上报记录
2. 异常记录推送提醒
日常生活物资的调控(买菜团购、药品购置) 三种策略:团购、正常购买&秒杀(防超买)、预定
物资有限,分配策略很重要(保证每个用户不会总抢不到,也尽量避免总分配给)。
扩展:居民互助交流,物资交换(待定)

居民端
查看生活物资
下单
取消订单
发布求助信息(比如缺少什么物资)
管理员
发布/修改/删除物资信息,设置每人/每户最多买多少
查看当前物资订单状态
查看居民需要的物资求助信息,针对性处理(增补物资等),然后将其标记为已处理/已忽略等

用户账户创建逻辑:

  1. 社区预先导入 (1)社区门牌号信息,以及门牌号对应的户主身份信息;(2)临时租户信息;(3)社区流动人员登记信息
  2. 用户注册账号,注册后绑定系统中已有户主信息(必要信息:用户的电话号码(方便发送短信以及社区联系),微信号)

系统保证:

  1. 某一功能出现问题不影响其他功能
  2. 核心功能出现问题要有降级策略,不能完全不可用
  3. 用户信息的安全性

更多可以拓展的功能:

  1. 大屏展示
  2. 与政府健康码信息同步
  3. 系统建设后的平滑过渡(从不使用这个系统到推广这个系统)
  4. 社区通知模块(管理员可以发布公告,社区居民点开居民端后可以浏览公告信息),也可以定向发布消息(即方便管理员联系社区居民;进一步扩展可以发送短信等)
  5. 部分部署(可以只部署需要用到的模块)

可以参考的一些:

附源码springboot社区疫情防控管理系统 毕业设计 164621https://blog.csdn.net/WeiXin_DZbishe/article/details/127091024 https://blog.csdn.net/Q_3461074420/article/details/127100890

【原创】基于JavaWeb的社区疫情防控管理系统疫情防控管理系统毕业设计https://blog.csdn.net/qq_59059632/article/details/127080812

基于springboot社区疫情防控管理系统https://blog.csdn.net/weixin_46437112/article/details/121885311

疫情防控系统:http://chisc.net/CIOjulebu/dianxinganli/2020-01-31/3883.html

科技防疫——社区疫情防控平台:https://zhuanlan.zhihu.com/p/108992875

【附源码】计算机毕业设计SSM社区疫情防控监管系统https://blog.csdn.net/bishe409/article/details/127413536

智慧社区防疫管理信息化系统功能清单及价格:https://www.deerpu.cn/soft-1860.html https://www.deerpu.cn/softPrice-1860.html

网格化社区疫情防控系统建设方案(全国版:云端接入):http://www.egova.com.cn/web/pdf/%E7%BD%91%E6%A0%BC%E5%8C%96%E7%96%AB%E6%83%85%E9%98%B2%E6%8E%A7%E7%B3%BB%E7%BB%9F%E6%96%B9%E6%A1%88(%E5%85%A8%E5%9B%BD%E7%89%88)-0207.pdf

基于Java+SpringBoot+vue+elementui社区疫情防控系统详细设计实现https://blog.51cto.com/u_14304894/5578744

【计算机毕业设计】java ssm社区小区疫情防控系统https://blog.csdn.net/qq_15801219/article/details/124359029

【计算机毕业设计】疫情社区管理系统的设计与实现 (新增-健康打卡):https://blog.csdn.net/newuserphb/article/details/124490818

基于社区的疫情防控系统的设计与实现:https://wenku.baidu.com/view/e9d96532874769eae009581b6bd97f192279bf18.html

其他的一些技术无关内容

系统图标,系统名称

系统登录界面可以展示的一些口号:

数据日更新,问题不过夜

使用技术栈

项目开发环境Ubuntu Desktop 22.04 LTS、OpenJDK 11、MySQL 8.0.12

板块 技术栈 开发工具 备注
前端 Vue 3JavaScript框架、Element PlusUI组件库 VS Code 暂定
后端 Java 11开发语言、SpringCloud微服务、Redis缓存 Intellij IDEA
数据库 MySQL数据存储 Navicat

需要确定的细节

用户是自己注册还是社区提供账号或者是社区提供token用户刷卡实现身份验证

一些需要细想的想法

用户和身份分离:一个用户账号可以绑定多个身份,比如一个社区人员同时可以是志愿者

前端系统设计

管理员端

社区人员端

志愿者端

门禁端

后端模块设计

用户认证模块(用户登录、注册、三方授权登录等)

用户信息模块(用户基本信息<住址,联系方式>

用户健康状态模块(维护用户的健康状态,与外部系统同步信息)

生活物资模块(维护生活物资商品信息<菜品、药品>

订单模块(社区人员下单,涉及到秒杀相关,可指定上门派送、自取或者由用户自主选择)

派送模块()

消息推送模块(系统中出现异常信息,例如系统崩溃,出现体温异常居民等,及时推送管理员)

验证码发送模块(用户注册账户,账号信息变更等)

数据库设计

微服务:一个服务对应一个数据库,同一个信息可能存在不同的数据库

用户表

人员进出日志表(按月归档)

体温上报表(按日归档)

启动项目

后端

前端

代码克隆下来后,第一次需要安装依赖

cd ./frontend
# 建议使用 cnpm 安装依赖,如果没有安装 cnpm可以通过 npm i cnpm进行安装
cnpm install
# npm install --legacy-peer-deps

之后在 frontend 目录下运行即可

npm run serve

开发步骤记录

前端

初始化Element-plus项目

参考:https://blog.csdn.net/weixin_39237340/article/details/121132154

# 检查 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
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