项目设计-基于SpringBoot和Vue开发的实验室预定系统

前言

​ 本期项目是实验室预定系统,主要包括数据监控大盘、我的实验、实验管理、实验室管理、预约管理、保修管理、预约记录管理、班级管理、日志管理、用户管理、角色管理以及各个模块的导出功能。
image-20221105195638934

功能设计

image-20221105195615148

领域模型

  • DO(DataObject):与数据库表结构一一对应,通过DAO层向上传输数据源对象

  • BO(BusinessObject):业务对象。由Service层输出的封装业务逻辑的对象

  • VO(View Object):显示层对象,通常是Web向模板渲染引擎层传输的对象

    BO和VO领域模型又分为BoRequest(输入模型)、BoResponse(输出模型)、VoRequest(输入模型)、VoResponse(输出模型)

技术栈

前端:vue + element

后端:jdk1.8 + springboot + redis + mysql

系统设计

运行效果

系统登录

image-20221105195847187

dashboard

首页数据大盘,按最近7天饼图占比、最近30天折线图走势、最近一年柱状图分析、最近7天各个时间段占比分析全方位可视化分析数据。

image-20221105195956256

我的实验

image-20221105201423997

实验管理

image-20221105200228043

预约实验室

image-20221105201359853

实验室管理

image-20221105201707680

image-20221105201839958

实验室报修管理

image-20221105202136979

image-20221105202150251

预约记录管理

image-20221105202244866

班级管理

image-20221105202256555

Excel导出

​ 所有模块都支持数据导出Excel,方便进行数据分析

实验列表导出

image-20221105202953266

报修数据导出

image-20221105203025493

日志管理

​ 日志管理默认是开给管理员的,在系统中的所有操作都会被记录,在系统出现异常时也便于管理员进行问题排查。

image-20221105203040233

用户管理

​ 默认也是只有管理员拥有用户管理菜单的权限,可以新建/编辑用户、分配用户角色、禁用/启用等操作

image-20221105203051056

用户注册

image-20221105195923299

编辑用户信息

image-20221105203102934

角色管理

​ 极其灵活的权限管理,系统中的所有按钮都可以单独分配权限,你可以给A角色只分配了查询和导出权限,也可以给B角色分配查询、编辑、新建权限,还可以给C角色只分配查询权限。可以满足几乎所有的业务需求,大家可以自由发挥定义权限组合。

​ 默认有‘管理员角色’、‘系统默认角色’、‘普通用户角色’

image-20221105203116367

image-20221105203132569

个人信息修改

image-20221105203203527

密码修改

​ 管理员创建完用户之后的默认密码是“123456”,用户可以登录系统自己修改密码

image-20221105203230900

权限设计

​ 权限基于security和spring-session实现。权限可以分为认证和授权,认证其实就是登录,用户登录时会进行账号密码的校验,校验成功后会,会把session存入redis中。授权指的是用户是否拥有访问后端资源的权限,每个新用户在创建后都会分配角色,角色其实就是一个权限集合,这里的权限可以理解为访问后端一个个接口(资源)的权限。

​ 这里权限设计的非常灵活,细粒度到按钮级别,比如新增、删除、修改、查询、借阅动作,普通用户可能就只有查询权限,管理员则拥有新增、删除、修改的权限。普通用户即使通过接口直接访问后端的修改或者删除接口,后端也会返回授权失败错误,因为后端每个需要权限的接口都打了权限标识,只有拥有资源权限用户才能访问。

​ 比如下面的修改接口,只有拥有“CAR_UPDATE”这个权限标识的用户才能访问这个接口,否则返回“未授权”的错误。

@PutMapping("/{id}")
@PreAuthorize("hasAuthority(T(com.senior.book.console.api.security.Authority).BOOK_UPDATE.name())")
    public Result<Boolean> update(@PathVariable("id") Long id, @Valid @RequestBody BookUpdateVoRequest request) {
        
}
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
高校实验室管理系统是一个基于springbootvue系统,主要用于管理高校实验室的设备、资源和实验项目系统实验室分为不同的类别,如化学实验室、物理实验室和生物实验室,每个实验室都有其特定的设备和资源。 该系统设计了用户管理、设备管理、实验项目管理和资源预约等功能模块。用户可以通过系统注册账号并进行登录,不同类型的用户拥有不同的权限,如管理员可以对实验室设备和资源进行管理,教师可以发布实验项目,学生可以预约实验室资源等。 在设备管理模块中,管理员可以添加、修改和删除实验室的设备信息,包括设备名称、型号、数量和状态等。在实验项目管理模块中,教师可以发布实验项目的信息,包括实验名称、内容、时间等,学生可以浏览实验项目并进行预约。 资源预约模块是系统的核心功能之一,学生可以根据自己的需求预约实验室资源,并在预约时段内使用。管理员可以对预约情况进行审核和管理,保障资源的合理利用。 系统采用了前后端分离的开发架构,前端使用vue框架进行开发,实现了用户友好的界面和交互体验。后端采用springboot框架开发,实现了业务逻辑和数据管理。系统的数据库采用MySQL进行存储,保证了数据的安全性和稳定性。 总的来说,基于springbootvue的高校实验室管理系统设计开发充分考虑了实验室资源的合理管理和利用,为高校师生提供了便利的实验设备和资源管理平台。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值