疫情下社区管理系统
摘 要:新冠疫情下的社区人员管理系统是基于SpringBoot搭建的一套前后端分离系统。面向疫情下的社区管理人员和社区用户,主要用于进行社区服务,进行高效的社区人员管理。具有一定的经济效益和社会效益。本文分析了新冠疫情下的社区物业在进行社区人员管理时的各种实际需求。针对用户所需的安全性、便捷性需要设计了这套新冠疫情下的社区人员管理总体解决方案。该系统使用目前主流的SpringBoot框架、MySQL8.0数据库、MyBatis框架、JS等技术开发,完成了聊天室功能模块、用户管理模块、社区员工管理模块、权限管理模块、角色管理模块等功能。
关键词:社区人员管理;SpringBoot;MyBatis;MySQL8.0;新冠疫情
Community Management System under the Epidemic
Abstract: In the new crown outbreak of community management system is based on SpringBoot structures, a set of front and back side of the separation system. For the outbreak of community management and community of users, it is mainly used for community services, community personnel management effectively. Has a certain economic and social benefits. This paper analyzes the new crown under the outbreak of community property in the community management of all kinds of actual demand. For the user the required safety, convenience to design the outbreak of the new champions league community personnel management overall solution. The system framework, MySQL8.0 database, using the current mainstream SpringBoot MyBatis framework, JS, such as technology development, completed the chat function module, user management module, the community staff management module, rights management module, role management module, and other functions.
Keywords: The community management; SpringBoot; MyBatis; MySQL8.0; A new outbreak of crown
目 录
1 引 言
1.1 项目背景
1.2 项目意义
1.3 国内外研究现状
1.4 开发工具介绍
1.4.1 IntelliJ IDEA介绍
1.4.2 SQLServer数据库
1.4.3 JDK
1.4.4 Java
1.4.5 MyBatis框架介绍
2 需求分析
2.1 系统概述
2.2 系统需求
2.2.1 系统功能需求
2.2.2 系统性能需求
2.3 可行性分析
2.3.1 技术可行性
2.3.2 运行可行性
2.3.3 经济可行性
3 总体设计
3.1 系统的框架设计
3.2 数据库结构设计
3.2.1 数据库设计与具体实现
3.2.2 数据库E-R图
4 详细设计与实现
4.1 用户注册模块
4.2 用户登录模块
4.3 浏览疫情地图模块
4.4 线索上报模块
4.5 日常打卡模块
4.6 物资申请模块
4.7 浏览新闻模块
4.8 评论新闻模块
4.9 物资申请管理模块
4.10 日常打卡管理模块
4.11 评论管理模块
4.12 新闻管理模块
4.13 疫情地图管理模块
5 系统测试
5.1 测试目的
5.2 测试方法
5.3 测试用例
5.3.1 用户登录功能测试
5.3.2 用户管理功能测试
5.3.3 角色管理功能测试
5.3.4 二维码签到功能测试
5.3.5 聊天室功能测试
5.3.5-1聊天室模块测试表
5.4 测试结论
结 论
谢 辞
参考文献
1 引 言
1.1 项目背景
2020年初期,一场毫无征兆的疫情在国内爆发,新冠病毒在中国境内被第一次检测出来后,迅速蔓延至全国各 地。经过党和国家艰苦卓越的领导,全国人民的上下一心,共同抵御病毒的感染。经过大半年的谨慎严密控制,新 冠疫情在国内得到了有效且稳定的控制。从全世界的范围而言,2020年年末,新冠病毒开始在全世界范围内开始肆 虐流行,大部分欧美国家,以及亚洲国家的疫情日益的加重加剧。在这场从古至今未有的疫情变局之中,改变全世 界的经济产业和人类生活的社会常态,并且人员管控和治理体系带来了重大的影响和冲击。全球范围内的城市开始再次封城。新冠病毒给人类带来的冲击是全方位,大范围的,包括出行、娱乐、居住等等。同时新冠疫情也导致了更大的范围的人员管控的不足。就当前而言,虽然病毒在疫情得到了有效的控制,但就现在的中国而言,我认为对疫情的防控其实本质上是对社区人员的管控。因此对于社区人员的相关信息的管理和设计就成为了一个重要的问题。因为数据库可以存储和持久化保存数据,同时也可以实现快速的查询和检索的功能。对于感染新冠病毒的社区人员也可以快速进行排查和隔离。也可以随时更新社区相关人员的状态。因此使用本人学习的相关知识,开发一个在新冠疫情下的社区人员管理系统是能够对疫情的防控起到一部分的作用的。
1.2 项目意义
现如今,随着计算机硬件和软件的发展和不断完善,能够给社会和人们带来更多的方便和舒适。因此利用现有的设备开发出来一套疫情下的社区人员管理系统可以更好的帮助社区内的物业和社区内的相关住户。对于他们来说都是一个巨大的帮助。不仅随时可以更新社区的相关人员的调度,同时保证了数据随时随地的录入。改变了传统的笔纸结合的录入方式,不仅保证了数据的安全性,同时也保证了数据的持久化的保存。同时利用这个新冠疫情下的社区人员管理系统,可以保障社区内的相关工作人员以及住户迁入迁出的变动。能够对社区人员的迁入迁出进行有效的管理和统计。同时这些信息和纸质记录相比不易丢失和损毁。对人员的增加、删除、修改相关信息也能够起到更好的帮助。
1.3 国内外研究现状
随着当前计算机硬件和软件技术的蓬勃发展,越来越多的社区物业公司开始使用社区物业的管理系统,因此国内很多的小区住户管理系统的功能还是相当完善的,能够代替物业公司完成社区人员的存储和删除。同时小区的用户可以快速登录社区的管理系统,获取小区物业发布的相关信息。
同时国外的社区人员管理系统虽然有着更加完善的互联网的接入服务。但是社区管理人员之间的交流有着巨大的缺陷。国外的疫情一直以来都不能得到有有效的控制,和无法在疫情开始和发生时不能更加有效的交流,有着一定的关联。因此管理人员之间的交流也在影响着社区人员间的工作的有效性。
1.4 开发工具介绍
1.4.1 IntelliJ IDEA介绍
IntelliJ IDEA(简称I DEA)是Java应用开发软件。Java语言的集成开发环境,在智能代码完成、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查[1]。目前市面上主流的Java开发工具,同时支持多种技术和应用框架。
1.4.2 SQLServer数据库
SQLServer是一套数据库系统。由于使用者很多得到了广泛发展,如今在全球软件市场上很受欢迎。对于某些Web应用程序,SQLServer可以说是目前市面上最好的RDBMS(关系型数据库管理系统)软件之一。同时由于MySQL小巧、免费等特点,深受很多公司的喜爱。
1.4.3 JDK
JDK即Java Development Tool Kit(开发工具包)。主要用于移动设备、嵌入式设备上的java应用程序。
JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM),JAVA工具和JAVA基础的类库,以及JNI开发所需要的库和头文件[2]。
1.4.4 Java
Java是一门面向对象的编程语言,是静态编程语言的代表语言。Java摒弃了C与C++中指针的概念,同时又具有极强的规范性,因此是一门非常适合学习的编程语言。它可以很好的诠释和实现面向对象理论,使程序员能够快速、规范、有序的编写复杂的逻辑代码。
1.4.5 MyBatis框架介绍
MyBatis是Apache基金会研发的支持普通SQL查询,基于Java持久层框架。主要功能有两个:一是封装JDBC9操作,二是利用反射打通Java类与SQL语句之间的相互转换[3]。
2 需求分析
2.1 系统功能模块概述和分析
《社区疫情管理系统》采用B/S架构,主要针对普通用户、管理员两类角色。本系统大体上可以划分为两个部分,第一部分为前台部分,前台部分普通用户可以进行登录、注册、浏览新闻信息、管理个人信息、浏览疫情地图信息、评论新闻、线索上报、日常打卡、物资申请等等功能。另一部分为后台部分,后台部分管理员角色可以管理用户信息、管理角色信息、管理评论信息、管理新闻信息、管理物资申请信息、管理线索上报信息、管理日常打卡信息等等功能。本系统在系统的设计与开发过程中严格遵守软件工程的规范,运用软件设计模式,从而减少系统模块间的偶合,力求做到系统的稳定性、可重用性和可扩充性。
《社区疫情管理系统》主要功能如下:
(1)后台部分功能:
①用户管理:管理整个系统的所有用户信息,而且只能由管理员角色的用户进行管理。
②新闻管理:管理员角色可以管理所有的新闻信息,并且新闻信息会在前台自动更新展示。
③日常打卡管理:管理员角色可以管理所有用户的日常打卡信息,并能导出打卡数据到Excel文件。
④物资申请管理:管理员角色可以管理所有用户的物资申请信息,并且审核这些物资申请。前台用户能看到自己物资申请的状态。
(2)前台部分功能:
①登录注册功能:普通用户可以在前台进行登录和注册。
②日常打卡功能:普通用户可以在获取当前位置,填写当天身体情况,完成日常打卡操作。
③疫情地图功能:普通用户能查看疫情地图信息、并且搜索指定位置信息。
④评论功能:普通用户可以给疫情新闻写评论。
2.1.1登录
功能描述系统用户(普通用户、管理员)能对系统进行登录操作
输入项用户名称、密码、验证码
处理描述系统用户(普通用户、管理员)正确输入用户名称、密码后,点击登录按钮,能进入登录后的页面
输出项无
业务规则系统用户(普通用户、管理员)都能进行登录功能操作
界面要求友好、美观、易用
2.1.2注册
功能描述普通用户能对系统进行注册操作
输入项用户名称、密码、身份证号、确认密码、手机号、用户性别
处理描述普通用户按要求输入用户名称、密码、身份证号、确认密码、手机号、用户性别后,点击注册按钮,完成注册操作
输出项无
业务规则只有普通用户能进行注册功能操作
界面要求友好、美观、易用
2.1.3浏览新闻信息
功能描述系统用户(普通用户、管理员)都能进行浏览新闻信息的操作
输入项无
处理描述系统用户(普通用户、管理员)可以在首页直接浏览新闻信息、查看新闻详情信息。
输出项无
业务规则系统用户(普通用户、管理员)都能进行浏览新闻信息的操作
界面要求友好、美观、易用
2.2 需求分析
2.2.1 系统功能需求
根据对周围社区的调查结果进行合理的分类后,根据用户的需求,对系统的功能进行分析,应包括三种管理模块(用户、角色、权限),同时包含其他的子模块如:社区居民管理,住宅管理模块,二维码签到模块,以及聊天室。其中用户管理模块是最重要的。首先在IntelliJ IDEA运行这个项目,之后在Chrome/Firefox浏览器上查看,超级管理员则可以增加管理系统的管理员数量和修改管理系统中管理员的各种信息,添加社区居民的信息和对社区相关居民的信息进行管理。
1.社区居民人员
(1)首先在IntelliJ IDEA上运行新冠疫情下的社区人员管理系统
(2)社区居民可以对登录的账户进行个人信息的修改。
(3)社区居民可以浏览首页的信息,查看疫情地图,和社区人员信息汇总。
(4)社区人员可以使用聊天室功能,进行信息的交互。
(5)社区人员还需要每天对自己的健康信息进行反馈,使用二维码签到模块。
2.社区工作人员
(1)社区工作人员需要对系统进行登录,才可以进行相关的操作
(2)对这个社区的社区居民信息进行管理。
(3)对这个社区内的已有的住宅进行管理。
3.超级管理员
(1)对社区工作人员和社区居民分配功能模块。
(2)对社区工作人员进行增删改查操作
(3)使用聊天室与其他用户进行交流
(4)其余功能和社区工作人员相似
2.2.1-1 功能需求表
编 号功能名称功能描述输入内容输出内容
1用户登录用户输入用户名、密码、
验证码,通过验证进入系统用户名、密码、验证码弹窗弹出用户登录成功并进入系统
2首页模块用户登录时展示给用户
的社区信息汇总点击下载按钮社区人员管理系统数据概览
3用户管理模块对登录注册用户进行增加、
删除、修改、查询操作,
并分配不同的角色用户相关信息用户信息列表
4角色管理模块对不同的角色分配不同的功能模块增加不同的角色管理员相关角色管理员的信息列表
5权限管理模块对不同的功能模块进行增加、
删除。便于系统后期功能的扩展。增加和删除相关功能模块功能模块列表
6社区员工管理模块对页面内展示的社区员工进行增删
改查等操作社区员工的相关信息社区员工列表
7社区居民管理模块对页面内展示社区居民信息进行
增删改查等操作社区居民的相关信息社区居民列表
8住宅管理模块对页面内展示的社区内住宅信息
进行增加、删除、修改、查询等功能社区住宅的相关信息社区住宅列表
9二维码签到管理模块社区内的所有人员进行二维码的签到
和相关文件的上传社区居民的二维码签到图片和文件信息社区居民输入图片的文件展示
10聊天室管理模块登录用户可以在线聊天,实现新冠疫
情下通讯的即时交互。聊天的相关内容聊天对话界面
11登录用户信息修改和退出模块登录用户对个人信息修改并可以对
整个系统进行退出。用户相关信息地修改。个人用户的头像信息和信息列表
编号功能名称功能描述输入内容输出内容
1用户登录用户输入用户名、密码、验证码,通过验证进入系统用户名、密码、验证码弹窗弹出用户登录成功并进入系统
2首页模块用户登录时展示给用户的社区信息汇总点击下载按钮社区人员管理系统数据概览
3用户管理模块对登录注册用户进行增加、删除、修改、查询操作,并分配不同的角色用户相关信息用户信息列表
4角色管理模块对不同的角色分配不同的功能模块增加不同的角色管理员相关角色管理员的信息列表
5权限管理模块对不同的功能模块进行增加、删除。便于系统后期功能的扩展。增加和删除相关功能模块功能模块列表
6社区员工管理模块对页面内展示的社区员工进行增删改查等操作社区员工的相关信息社区员工列表
7社区居民管理模块对页面内展示社区居民信息进行增删改查等操作社区居民的相关信息社区居民列表
8住宅管理模块对页面内展示的社区内住宅信息进行增加、删除、修改、查询等功能社区住宅的相关信息社区住宅列表
9二维码签到管理模块社区内的所有人员进行二维码的签到和相关文件的上传社区居民的二维码签到图片和文件信息社区居民输入图片的文件展示
10聊天室管理模块登录用户可以在线聊天,实现新冠疫情下通讯的即时交互。聊天的相关内容聊天对话界面
11登录用户信息修改和退出模块登录用户对个人信息修改并可以对整个系统进行退出。用户相关信息地修改。个人用户的头像信息和信息列表
2.2.2 系统性能需求
新冠疫情下的社区管理系统需要为用户和社区管理人员提供及时并且准确的信息。同时为了保证整个系统能够流畅并且安全的运行,系统内的相关配置也要满足要求。需要保证SQLServer中数据库可以得到正确的存储并且不会丢失。并且保证系统的信息足够安全,不被盗取。同时保证整个系统在操作时不会出现各种问题。因此系统的开发过程要保证安全性,简捷性,准确性。也要保证系统的美观简洁。
安全性:该系统为不同的用户提供不同的服务,登陆者需要输入信息。系统根据不同的角色权限分配不同的功能模块,没有相关权限的角色无法使用其它的模块,这样就保证了整个系统的安全性。
准确性:新冠疫情下的社区人员管理系统是一个对社区工作人员和社区居民提供服务的系统,需要将SQLServer服务器中的不同的表传入后端,再传到前端界面。准确无误的传递表信息至关重要。因此我们要对数据进行准确的分析,根据分析的结果来保证数据的准确性。
高效性:社区工作人员使用该系统能够快速,高效的增加、修改、删除、查询社区居民用户的信息。相较于之前的纸质化管理更加节省时间和金钱成本。
美观性:简洁的界面可以帮助用户快速得到信息,增加使用者的便捷性,用户可以清晰的了解不同界面的功能。符合用户的审美标准。
2.3 可行性分析
2.3.1 技术可行性
新冠疫情下的社区人员管理系统前端采用Vue + ElementUI + JQuery Ajax。使用这套前端技术可以快速有效的开发前端相关的界面。后端相关功能模块采用SpringBoot+Jpa,使用集成好的框架可以有效的减少开发时间。同时使前后端有效的分离,降低代码与代码之间的耦合性,使代码简单易懂。因此可以高效的开发新冠疫情下的社区人员管理系统。
2.3.2 运行可行性
新冠疫情下的社区人员管理系统是一个很小型的系统,使用IntelliJ IDEA编写起来还是很简单迅速,该系统的 SQLServer也是一个简单小巧免费的数据库软件,因此对于整个系统的开发和储存都没有额外的支出,同时系统的权限管理模块对于整个系统的后期维护也更加简单。因此,运行可行性也是可以通过的。
2.3.3 经济可行性
新冠疫情下的社区人员管理系统的没有较大的经济开支,整个系统的存储管理采用的SQLServer服务,此软件相比较其它的数据库软件最大优点是免费小巧。因此完成此项目的开发,可以在很大程度上节省人力财力物力。同时该系统可以提高社区员工的工作效率,于此同时,该系统开发完成后系统界面清晰易懂,操作步骤简单,使用者可以不经培训就可以掌握该系统的使用方法。