网站开发技术合同,企业邮箱使用方法,网站建设常用的开发语言介绍,应用商场安全下载安装简介
原始数据#xff1a;书目信息、章节信息、题目信息、系统菜单、系统角色、系统用户。
主要任务#xff1a;系统主要采用spring boot作为后端框架#xff0c;前端使用vueelementUI#xff0c;为408刷题小程序提供一个方面的管理和维护的任务#xff0c;主要功能包括…简介
原始数据书目信息、章节信息、题目信息、系统菜单、系统角色、系统用户。
主要任务系统主要采用spring boot作为后端框架前端使用vueelementUI为408刷题小程序提供一个方面的管理和维护的任务主要功能包括对题目、章节、书目的添加、修改、删除、查询、启用等操作对用户每日以及近七日内的数据进行可视化展示方便进行分析等操作。
安全性系统采用权限分级管理根据不同的用户分配不同的权限springsecurity框架采用了bycrpt加密方式这是一种单向的hash加密方式不可以反向生成明文理论上不可破解。用户的密码采用这种加密方式数据库存储的是加密后的密文。此外系统还设有接口级别的权限验证访问接口必须携带token验证验证完后还要验证该用户是否拥有访问接口的权限。Token每次的使用时限也仅有两个小时更加进一步的保护了系统安全。
技术要求
数据库MySQL数据库 redis数据库
前端方面Vue 、ElementUI
后端方面Springboot、mybatis、spring security、redis
名称定义 元素名 描述 定义 系统用户 系统的使用者 用户ID号用户名密码头像邮箱城市创建时间修改时间最后一次登录状态 系统角色 对该系统有不同操作权限的用户称为角色 角色ID号角色名识别码备注创建时间更新时间状态 系统菜单 系统内功能 菜单ID号父菜单ID号菜单名菜单路由权限码组件类型图标序列号创建时间更新时间状态 书目 系统管理的一级对象 书目ID号名称题目数量激活状态创建时间修改时间 章节 系统管理的二级对象 章节ID号名称所属书目ID号题目数量激活状态创建时间修改时间 题目 系统管理的三级对象 题目ID号所属书目ID号所属章节ID号选项答案分析来源是否属于强化题目创建时间修改时间
系统流程图 系统登录流程图 系统操作流程图
数据库表设计
系统菜单表 字段名称 数据类型 字段长度 主键 说明 id bigint 20 是 ID值 parent_id bigint 20 否 父节点ID值 name varchar 64 否 名字 path varchar 255 否 路径 perms varchar 255 否 权限码 component varchar 255 否 组件 type int 5 否 类型 icon varchar 32 否 图标 orderNum int 11 否 排序 created datetime 0 否 创建时间 updated datetime 0 否 修改时间 statu int 5 否 状态
系统角色表 字段名称 数据类型 字段长度 主键 说明 id bigint 20 是 ID值 name varchar 64 否 姓名 code varchar 64 否 唯一编码 remark varchar 64 否 备注 created datetime 0 否 创建时间 updated datetime 0 否 更新时间 statu int 5 否 状态
角色菜单表 字段名称 数据类型 字段长度 主键 说明 id bigint 20 是 ID值 RoleId bigint 20 否 角色ID值 MenuId bigint 20 否 菜单ID值
系统用户表 字段名称 数据类型 字段长度 主键 说明 id bigint 20 是 ID值 username varchar 64 否 用户名 password varchar 64 否 密码 avatar varchar 255 否 头像 email varchar 64 否 邮箱 city varchar 64 否 城市 created datetime 0 否 创建时间 updated datetime 0 否 修改时间 lastlogin datetime 0 否 上一次登录 statu int 5 否 状态
用户角色表 字段名称 数据类型 字段长度 主键 说明 id bigint 20 是 ID值 user_id bigint 20 否 用户ID值 role_id bigint 20 否 角色ID值 书目表 字段名称 数据类型 字段长度 主键 说明 id char 50 是 序号 name varchar 50 否 书名 quantity int 50 否 题目数量 create_time datetime 0 否 创建时间 modified_time datetime 0 否 修改时间 章节表 字段名称 数据类型 字段长度 主键 说明 id char 50 是 序号 name varchar 50 否 章节名 book_id char 50 否 对应书的序号 quantity int 50 否 题目数量 create_time datetime 0 否 创建时间 modified_time datetime 0 否 修改时间 题目表 字段名称 数据类型 字段长度 主键 说明 id Int 50 是 序号 question text 80 否 题目信息 book_id tinyint 4 否 对应书的序号 create_time datetime 0 否 创建时间 modified_time datetime 0 否 修改时间 chapter_id tinyint 4 否 对应章节序号 option_A text 80 否 A选项 option_B text 80 否 B选项 option_C text 80 否 C选项 option_D text 80 否 D选项 answer int 20 否 答案 analysis text 80 否 解析 origin varchar 100 否 来源 reinforce tinyint 4 否 是否为真题
系统功能模块图 系统功能模块图
系统详细设计 登录验证模块
模块描述用户登录系统进行验证对用户输入的信息进行核检
主要功能验证身份为合法用户
输入项用户名 密码 验证码
输出项
成功登录成功
失败验证码错误 / 用户名密码错误
算法描述
使用spring security框架对用户输入的信息就行核验首先验证验证码是否正确验证码正确后验证输入的用户信息是否合法如果合法则登录成功并根据身份信息生成Token返回给前端并写入redis否则返回登录失败。
身份认证模块
模块描述用户登录成功后用户访问接口前会对该用户的角色所具有的权限进行认证如果该用户拥有该权限这允许访问否则返回权限不足。
主要功能检验用户是否有权访问该接口
输出项访问成功/权限不足
算法描述
spring security框架将从缓存中获取该用户的身份信息对应的权限列表如果缓存中没有则调用dao层函数查询该用户身份可以访问的权限然后判断该用户当前访问的接口是否有权访问如果有权访问则允许访问否则将转到权限不足的拦截器中将结果返回前端。
系统菜单管理模块
模块描述管理菜单即权限
主要功能添加、删除、修改、查找菜单
1添加菜单
输入项父菜单菜单名菜单路由权限码组件类型图标序列号创建时间更新时间状态
输出项添加成功/添加失败
算法描述
调用controller层添加菜单接口将用户输入信息进行封装后调用service进而调用dao层将数据写入到数据库完成添加。
2删除菜单
输出项删除成功/删除失败
算法描述
调用controller层删除菜单接口获取当前所要删除菜单的id值调用service进而调用dao层将数据在数据库中删除。
3修改菜单
输入项修改的字段
输出项修改成功/修改失败
算法描述
获取当前行的id值将修改后的数据封装成实体类后调用controller层更新菜单接口调用service进而调用dao层将该条数据在数据库中更新。
4查找菜单
输出项菜单的全部查询结果
算法描述
点击菜单管理后系统直接调用菜单全部查询的接口调用service进而调用dao层将全部查询的结构封装后返回给前端。
系统用户管理模块
模块描述用户的增加修改删除查找以及用户角色的分配。
主要功能添加、删除、修改、查找用户为用户分配角色
1添加用户
输入项用户名密码头像邮箱城市状态
输出项添加成功/添加失败
算法描述
调用controller层添加用户接口将用户输入信息进行封装后调用service进而调用dao层将数据写入到数据库完成添加。
2删除用户
输出项删除成功/删除失败
算法描述
调用controller层删除学生接口将前端传过来的ID号传入函数调用service进而调用dao层将该ID号对应的用户进行删除。
3修改用户
输入项修改的字段
输出项删除成功/删除失败
算法描述
将修改的字段封装后调用controller层修改用户信息的接口将封装后的实体类传入调用service层进而调用dao层根据id值对数据库进行操作将该id值对应的数据进行修改并返回前端结果。
4查找用户
输入项用户姓名
输出项返回查找后的数据
算法描述
将用户输入的用户姓名传入controller层调用根据用户姓名查询用户的接口将姓名传入函数调用service层进而调用dao层对数据库操作后将结果返回。
5为用户分配角色
输入项选择用户勾选的角色
输出项操作成功/未作出有效操作
算法描述
调用controller层函数将角色列表展示给前端同时保存当前勾选的角色id将用户的id和保存的角色id进行封装传入controller层调用调用DAO层函数查询该用户id之前所具有的角色将两个角色列表进行对比如果结果大于零则说明增加了角色调用增加角色的函数为该用户添加角色返回操作成功如果结果小于零则说明该用户减少了角色调用删除用户角色的函数删除用户角色返回操作成功否则返回未作出有效操作最后将结果返回前端。
6重置密码
输出项重置成功
算法描述
获取该用户的id调用controller层重置密码函数将系统内置密码进行加密后和id值一起封装传入service层进而调用dao层对数据库中当前id的password进行修改将修改后的结果返回前端。
系统角色管理模块
模块描述用户的增加修改删除查找以及用户角色的分配。
主要功能添加、删除、修改、查找用户为用户分配角色
1添加角色
输入项角色名识别码备注状态
输出项添加成功/添加失败
算法描述
调用controller层添加角色接口将用户输入信息进行封装后调用service进而调用dao层将数据写入到数据库完成添加。
2删除角色
输出项删除成功/删除失败
算法描述
调用controller层删除角色接口将前端传过来的ID号传入函数调用service进而调用dao层将该ID号对应的角色进行删除。
3修改角色
输入项修改的字段
输出项删除成功/删除失败
算法描述
将修改的字段封装后调用controller层修改角色信息的接口将封装后的实体类传入调用service层进而调用dao层根据id值对数据库进行操作将该id值对应的数据进行修改并返回前端结果。
4查找角色
输入项角色名
输出项返回查找后的数据
算法描述
将用户输入的角色名传入controller层调用根据角色名查询角色的接口将角色名传入函数调用service层进而调用dao层对数据库进行查找操作后将结果返回。
5为角色分配权限
输出项操作成功/未作出有效操作
算法描述
调用controller层函数将菜单列表展示给前端同时保存当前勾选的菜单id将角色的id和保存的菜单id进行封装传入controller层调用调用DAO层函数查询该角色id之前所具有的菜单再调用函数查询该角色之前有权限的菜单将两个菜单列表进行对比如果结果大于零则说明增加了菜单调用给当前角色增加菜单的函数为该用户添加菜单返回操作成功如果结果小于零则说明该用户减少了菜单调用删除角色菜单的函数删除角色菜单返回操作成功否则返回未作出有效操作最后将结果返回前端。
书目管理模块
模块描述系统一级管理对象
主要功能添加、删除、修改、查找、是否在小程序端进行启用书目等其他操作
1添加书目
输入项书目名称
输出项添加成功/添加失败
算法描述
调用controller层添加书目接口将输入信息和默认字段值进行封装后调用service进而调用dao层将数据写入到数据库完成添加。
2删除/批量删除书目
输出项删除成功/删除失败
算法描述
调用controller层删除书目接口/批量删除接口将前端传过来的ID号/ID数组传入函数调用service进而调用dao层将该ID号/ID数组对应的书目进行删除。
3修改书目
输入项修改的字段
输出项修改成功/修改失败
算法描述
将修改的字段封装后调用controller层修改书目信息的接口将封装后的实体类传入调用service层进而调用dao层根据id值对数据库进行操作将该id值对应的数据进行修改并返回前端结果。
4查找书目
输入项书目名称字段
输出项返回查找后的数据
算法描述
将用户输入的书目名称传入controller层调用模糊查询书目的接口将书目名称名传入函数调用service层进而调用dao层对数据库进行查找操作后将结果返回。
5启用/取消启用书目
输入项书目启用字段、章节ID字段
输出项启用成功/取消启用成功/失败
算法描述
将用户输入的启用字段传入controller层调用controller层修改书目信息的接口将封装后的实体类传入调用service层进而调用dao层根据id值对数据库进行操作将该id值对应的数据进行修改并返回前端结果。
章节管理模块
模块描述系统二级管理对象
主要功能添加、删除、修改、查找、是否在小程序端进行启用该章节等其他操作
1添加章节
输入项章节名称、章节所属书目ID字段
输出项添加成功/添加失败
算法描述
调用controller层添加章节接口将输入信息和默认字段值进行封装后调用service进而调用dao层将数据写入到数据库完成添加。
2删除/批量删除章节
输出项删除成功/删除失败
算法描述
调用controller层删除章节接口/批量删除接口将前端传过来的ID号/ID数组传入函数调用service进而调用dao层将该ID号/ID数组对应的章节进行删除。
3修改章节
输入项修改的字段
输出项修改成功/修改失败
算法描述
将修改的字段封装后调用controller层修改章节信息的接口将封装后的实体类传入调用service层进而调用dao层根据id值对数据库进行操作将该id值对应的数据进行修改并返回前端结果。
4查找章节
输入项章节名称字段、章节所属书目ID字段
输出项返回查找后的数据
算法描述
将用户输入的信息传入controller层调用模糊查询章节的接口将章节名称、ID号传入函数调用service层进而调用dao层对数据库进行查找操作后将结果返回。
5启用/取消启用章节
输入项章节启用字段、章节ID字段
输出项启用成功/取消启用成功/失败
算法描述
将用户输入的启用字段传入controller层调用controller层修改章节信息的接口将封装后的实体类传入调用service层进而调用dao层根据id值对数据库进行操作将该id值对应的数据进行修改并返回前端结果。
题目管理模块
模块描述系统三级管理对象主要管理对象
主要功能添加、删除、修改、查找、查找题目等其他操作
1添加题目
输入项题目名称、选择、答案、分析、来源等字段
输出项添加成功/添加失败
算法描述
调用controller层添加题目接口将输入信息和默认字段值进行封装后调用service进而调用dao层将数据写入到数据库完成添加。
2删除/批量删除题目
输出项删除成功/删除失败
算法描述
调用controller层删除题目接口/批量删除接口将前端传过来的ID号/ID数组传入函数调用service进而调用dao层将该ID号/ID数组对应的题目进行删除。
3修改题目
输入项修改的字段
输出项修改成功/修改失败
算法描述
将修改的字段封装后调用controller层修改题目信息的接口将封装后的实体类传入调用service层进而调用dao层根据id值对数据库进行操作将该id值对应的数据进行修改并返回前端结果。
4查找题目
输入项题目名称字段、题目所属书目ID字段、题目所属章节ID字段
输出项返回查找后的数据
算法描述
将用户输入的信息传入controller层调用模糊查询题目的接口将题目名称、书目ID号、章节ID号传入函数调用service层进而调用dao层对数据库进行查找操作后将结果返回。
系统运行展示 系统登录 数据可视化 修改密码 用户管理 模糊查找 新增信息 修改信息 分配角色 分配权限 菜单管理 新增菜单 题目管理 条件查询 修改题目 章节管理 书目管理 今日排行榜 累计排行榜
效果预览 408小程序管理端