项目设计-洗车预约系统(洗车信息)

147小编 次浏览

摘要:前言 本期项目是洗车预约系统,主要包括数据监控大盘、洗车店管理、洗车项目管理、预约管理、评价管理、我的预约、日志管理、用户管理、角色管理。以企业级的开发标准来完成整个前后端代码,相信对初学者都会有很…

基于SpringBoot和Vue开发的洗车预约系统31 播放 · 0 赞同视频

前言

本期项目是洗车预约系统,主要包括数据监控大盘、洗车店管理、洗车项目管理、预约管理、评价管理、我的预约、日志管理、用户管理、角色管理。以企业级的开发标准来完成整个前后端代码,相信对初学者都会有很大帮助。

功能设计

领域模型

DO(DataObject):与数据库表结构一一对应,通过DAO层向上传输数据源对象BO(BusinessObject):业务对象。由Service层输出的封装业务逻辑的对象VO(View Object):显示层对象,通常是Web向模板渲染引擎层传输的对象

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

技术栈

前端:vue + element

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

系统设计

接口设计

整个项目接口采用的目前互联网比较流行的restful风格设计,每个接口、每个参数都有详细的文档说明。因为企业中开发必然是团队协作,必然前后端分离的开发模式,你得先把接口定义出来,然后前端可以和后端同步开发。还有一种就是对外提供接口,比如你们隔壁团队也想调用你这个服务的接口,但是你两排期是同一周,这时候你得先把接口定义出来给人家,然后大家同步开发,开发完了之后再进行联调。

运行效果

系统登录

dashboard

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

洗车店管理

可以创建多个洗车店,相当于是洗车预约平台,有点类似大众点评的感觉,每家洗车店都可以发布洗车套餐,然后用户会根据洗车店的评分,根据洗车店的历史评价来选择预约哪家店

洗车店详情

洗车项目管理

洗车项目详情

洗车项目数据导出

预约管理

根据自己的时间来预约洗车,已约满代表这个时间段已经被其他用户预约了,退订则说明这个时间段是我们自己预约的,在服务还未开始前,可以提前一天退订。

预约退订

我的预约管理

导出预约数据

评价管理

对服务质量进行评价

查询历史评价

在预约之前,用户可以查询洗车店的历史服务评价,选择好评多的洗车店进行车辆清洗保养

日志管理

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

用户管理

新用户注册

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

编辑用户信息

角色管理

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

普通读者登录

系统默认会创建两个角色,一个是超管角色,另一个则是普通用户角色(当然角色大家可以按前面说的自定义)。普通用户登录,比如洗车项目管理菜单,普通用户就只有查询的权限,其他的新增、编辑、删除、导出和出库权限都没有。截图如下:

个人信息修改

密码修改

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

权限设计

权限基于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) { }
随机内容
一台自动洗车设备多少钱?一套洗车设备大概多少钱(自动洗车店挣钱吗) 一台自动洗车设备多少钱?一套洗车设备大概多少钱(自动洗车店挣钱吗)
常见的自动洗车机类型有哪些?分别适合哪些车型?(自动洗车机哪家最好用) 常见的自动洗车机类型有哪些?分别适合哪些车型?(自动洗车机哪家最好用)
再这样洗车爱车就报废了 直接用水枪损车漆(洗车的水枪对车漆有影响吗视频) 再这样洗车爱车就报废了 直接用水枪损车漆(洗车的水枪对车漆有影响吗视频)
惊呆表哥的一次精护洗车之旅,老司机带你揭秘DIY洗车的那些事! 惊呆表哥的一次精护洗车之旅,老司机带你揭秘DIY洗车的那些事!
GPT能为自动驾驶带来什么?(gpt wre) GPT能为自动驾驶带来什么?(gpt wre)
干了14年的洗车工小唐,告诉你打蜡到底是直打好,还是画圈打好(去洗车店打蜡多少钱一次) 干了14年的洗车工小唐,告诉你打蜡到底是直打好,还是画圈打好(去洗车店打蜡多少钱一次)
女人五十岁之后再找老伴,别要金钱和房子,要看以下三个条件(50多岁找老伴很难找到合适的) 女人五十岁之后再找老伴,别要金钱和房子,要看以下三个条件(50多岁找老伴很难找到合适的)
洗车机高压220V家用神器清洗水枪刷车水泵抢大功率强力便携式洗车(大部分洗车机高压水枪出水的压力范围) 洗车机高压220V家用神器清洗水枪刷车水泵抢大功率强力便携式洗车(大部分洗车机高压水枪出水的压力范围)
大冲力无线洗车机选哪款?测评乐空高压锂动力,一瓶水一辆车 大冲力无线洗车机选哪款?测评乐空高压锂动力,一瓶水一辆车
加油站如何选购适合的洗车机 加油站如何选购适合的洗车机