大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE稳定放心使用
开发准备
开发软件为IntelliJ IDEA2019,选用Tomcat8作为服务器、数据库为MySQL5.3,jdk为1.8,前端框架为layui
需求分析
基于web的实验室设备管理系统至少有三个用户角色:
-
学生用户:学生用户为主要使用用户,登录系统可以查询设备信息,可以对现有的设备进行租借申请,可以查看公告信息。
-
教师用户:教师主要负责对实验室设备进行报修维护工作,还有公告管理。
-
管理员:拥有所有管理权限,额外拥有租借设备审批和登录日志查看权限
基本功能
根据需求分析出系统功能
- 实验室设备管理模块:设备信息录入、信息查询、更新设备信息、删除设备和设备报修。
- 对不同用户分有不同的权限:如对非法用户、普通用户和管理员用户实现不同的权限管理。
- 学生用户模块:学生用户拥有修改自己的账号密码和借用、归还实验室设备的权限。
- 教师用户模块:教师用户拥有修改自己的账号密码和报修、维护实验室设备的权限。
- 管理员模块:管理员拥有所有管理权限,额外拥有租借设备审批和登录日志查看权限
设计思路
分析出系统功能后,设计如何实现主要功能
“实验室设备管理模块”,需要设计一张记录实验室设备的数据表,使用状态字段来标记登录设备的状态
“对不同用户分有不同的权限”,需要对用户进行标识,登录系统后根据不用标识显示不同的内容,从而实现权限管理,同时需要设置拦截器,防止未登录可以通过地址跳转进入系统。
“租借设备审批和登录日志”,租借设备审批需要创建一张设备租借申请表,负责记录是哪个学生用户发起的申请,申请租借哪个设备、是哪位管理员审批等信息;登录日志需要创建一张登录日志表,负责记录登录人的信息,主要有登录时间、登录人id等。
数据库设计
用户表:user
字段 | 类型 |
---|---|
id | int |
user_account | varchar(255) |
user_password | varchar(255) |
role | int |
其中,role为权限标识,1为管理员,2为学生(默认),3为教师
实验室设备表:equipment
字段 | 类型 |
---|---|
id | int |
name | varchar(255) |
type | varchar(255) |
price | double |
attribution | varchar(255) |
state | int |
其中,state为设备状态标识, 1(正常),2(租借中),3(维护中),4(已损坏)
设备租借表: lease
字段 | 类型 |
---|---|
id | int |
equipment_id | int |
student_id | int |
student_name | varchar(255) |
equipment_name | varchar(255) |
lease_time | datetime |
return_time | datetime |
status | int |
设备租借表在学生用户申请租借设备的时候,对学生用户的信息和申请的设备信息记录,其中status是租借状态标识, 5为已归还,6为租借中
设备租借审批表:examine_approve
字段 | 类型 |
---|---|
id | int |
equipment_id | int |
student_id | int |
student_name | varchar(255) |
equipment_name | varchar(255) |
lease_time | datetime |
return_time | datetime |
reason | varchar(255) |
results | int |
approver | varchar(255) |
其中,results为审批结果, 7(同意) 8(拒绝) 9(未审核),approver为审批的管理员名称
设备维护表:equipment_maintenance
字段 | 类型 |
---|---|
id | int |
equipment_id | int |
name | varchar(255) |
damage_time | datetime |
maintenance_time | datetime |
maintenance_people | varchar(255) |
maintenance_amount | double |
state | int |
其中,state为设备状态,1(维修完毕) 2(无法维修)
公告表:announcement
字段 | 类型 |
---|---|
id | int |
edit_person | varchar(255) |
release_time | datetime |
content | varchar(255) |
登录日志表:login_log
字段 | 类型 |
---|---|
id | int |
uid | id |
logintime | datetime |
username | varchar(255) |
结尾
需求分析和数据库已设计完成,后续将更新系统如何实现的代码
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/182594.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...