oj项目后端分析

csdn推荐

1.菜单管理

我们菜单管理有菜单表(sys_menu),还有用户角色表(sys_role),菜单表是用于管理我们用户所拥有的权限,不同的用户所看到的页面是不一样的,由于一些用户他能够看到题库管理和考题管理,还有一些用户看不到,并且就算能够看到题库管理和考题管理,它们里面所能看到的功能也是不一样的,有一些用户他有增加和删除的功能,有一些用户就只有查看的功能。

但如果我们管理员一个一个给用户权限的话会显得非常繁琐,所以我们还有一个角色菜单管理表(sys_role_2_menu),我们在这个关联表中创建用户角色表中的对应权限,我们拥有多选权限这个功能,在右侧中,只要勾选上我们想要给用户的权限,我们就在对应表中将它所对应的权限打钩,在数据库中我们就会将我们所选的权限id赋值为1,而当我们在使用这个用户组的时候,自动读取这个关联表,里面为1的内容就代表我们该用户所拥有的权限

2.内容管理

在内容管理中,我们拥有分类管理这个功能,使用的是分类表(category)我们通过我们表中的sort字段来管理分类的顺序,通过type字段来判断是什么分类类型,有考题分类和问题分类两个分类,这两个分类的话是为了方便我们后面的八股文管理和题库管理进行划分

在八股文管理中我们的数据存在八股文表(question_info)中,我们的新增问题是先获取我们的分类管理中的八股文分类的具体分类,我们通过difficulty_level字段来决定题目的难度,我们的难度星级回显为数字,而我们的上传图片使用的就是基本的io流上传。我们在内容管理中都有批量导入功能,我们是通过io流读取excel表格来实现的,我们将excel中的第二行读取出来放入数组中,我们在纵向读取数据整合后存入数据库中就实现了我们的批量导入功能。我们可以在详情页中切换上一页和下一页的功能,我们通过获取question_id的数据来判断是否有上或下一页,具体是我们要下一页就获取当前的

我们题库管理跟八股文管理大体一致,数据存在题库表中(exam_question),唯一不同的是我们的题库表中还有对应题目的题目答案表(exam_question_item)

对于我们的经验分享中我们实现大体跟我们上面的是一样的

文章来源:https://blog.csdn.net/m0_64792179/article/details/137924942



微信扫描下方的二维码阅读本文

© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容