# 项目管理系统
## 前言
Beehive 是一个项目管理系统。参考于 Teambetion、PearProject,实现部分功能。
这是一个 Vue+Node.js 的 js 全栈项目。基于 RBAC 模型做权限控制,动态配置菜单,前端实现页面元素级别的权限控制。通过 WebSocket 实现站内信功能,任务看板中,实现更新同步推送。一旦其他项目成员有对我们当前查看的项目任务做任何的操作,页面都将立即同步更新,并向此任务的所有参与者(除了操作者)发送消息通知。注册和找回密码需要通过邮箱验证码验证,可以通过 GitHub 授权登陆(不是很稳定)。
Node.js 框架选用的是 Egg.js,配合 sequelize,自己写了一个小工具。可以通过填写表字段的配置,执行 npm run generator-entity 自动生成一整套文件,包括 Swagger、数据校验 validate、Sequelize 需要的 model、controller、service、router。并自动创建数据库表,包括每个字段的类型、长度、是否能为空、默认值、注释、索引、甚至是外键都能搞定。因为加了权限控制,所以还要到前端的资源管理中添加一下新增的资源,并在角色中点选分配一下,就完成了一张表的 CRUD 了,包括新增、修改、详情、批量删除、分页列表。当然这还是有很多可以优化的空间的,但也基本够用了。为了优化鉴权消耗,以及满足 WebSocket 的可靠性设计需要,系统引入 Redis 做缓存。
密码是加盐存储的,且在传输过程中使用了 RSA 做了非对称加密。Jwt 认证使用 Access Token + Refresh Token,配合黑名单。
## 效果演示
预发布环境:超级管理员账号:test-super ,密码:test-super123 <a href="https://beehives.imfdj.top" target="_blank">预发布环境地址:beehives.imfdj.top</a>
预发布环境:普通用户账号:test-user ,密码:test-user123
生产环境:普通用户账号:test-user ,密码:test-user123 <a href="https://beehive.imfdj.top" target="_blank">生产环境地址:beehive.imfdj.top</a>
## 技术栈
前端:Vue2 全家桶 + Element-ui + Axios + Vue-socket.io + Sass
后端:Egg.js + Sequelize + Jwt + MySQL + Redis + Socket + Swagger
## 说明
> 如果对您有帮助,您可以点右上角 "Star" 支持一下 谢谢! ^_^
> 或者您可以 "follow" 一下,我会不断开源更多的有趣的项目。如:Vue3 + NestJS + TypeScript
> 如有问题请直接在 Issues 中提,或者您发现问题并有非常好的解决方案,欢迎 PR
## 目标功能
- [X] 登录、注册 -- 完成
- [X] GitHub 授权登录 -- 完成
- [X] 找回密码 -- 完成
- [X] 滑块验证 -- 完成
- [X] 邮箱验证 -- 完成
- [X] 动态首页 -- 完成
- [X] 个人设置 -- 完成
- [X] 用户管理 -- 完成
- [X] 角色管理 -- 完成
- [X] 菜单管理 -- 完成
- [X] 资源管理 -- 完成
- [X] 操作日志 -- 完成
- [X] 动态菜单 -- 完成
- [X] 部门管理 -- 完成
- [X] 项目列表 -- 完成
- [X] 任务看板 -- 完成
- [X] 任务列表 -- 完成
- [X] 项目文件 -- 完成
- [X] 项目概览 -- 完成
- [X] 项目成员 -- 完成
- [X] 项目邀请 -- 完成
- [X] 项目设置 -- 完成
- [X] 项目回收站 -- 完成
- [X] 任务筛选 -- 完成
- [X] 任务详情 -- 完成
- [X] 任务标签 -- 完成
- [X] 任务参与者 -- 完成
- [X] 任务动态 -- 完成
- [X] 任务工时 -- 完成
- [X] 任务关联文件 -- 完成
- [X] 任务更新即时同步 -- 完成
- [X] 公开项目的业务权限控制(非项目成员不可编辑项目) -- 完成
- [X] 项目模板 -- 完成
- [X] 消息提醒 -- 完成
- [X] 工作台 -- 完成
- [X] 站内信 -- 完成
- [X] 页面元素权限控制 -- 完成
- [ ] 项目版本 -- 待开发
- [ ] 项目日程 -- 待开发
## 部分截图
![](https://www.writebug.com/myres/static/uploads/2021/10/29/a595eb3b6000fcbf538342c4fcc3a9e6.writebug)
![](https://www.writebug.com/myres/static/uploads/2021/10/29/b722b8e3c3568935570415750edc98a1.writebug)
![](https://www.writebug.com/myres/static/uploads/2021/10/29/671ec89b68a4c5412b6e0892d1216f7d.writebug)
![](https://www.writebug.com/myres/static/uploads/2021/10/29/62a8442c4353a1db58f23ba49924a37b.writebug)
![](https://www.writebug.com/myres/static/uploads/2021/10/29/04a072d08f7673f89c2ff8d4dcc6a4c5.writebug)
![](https://www.writebug.com/myres/static/uploads/2021/10/29/51b9deb7745bc5cf1c77e653ecd73f3d.writebug)
![](https://www.writebug.com/myres/static/uploads/2021/10/29/f4a182d16848383b6c4455de0837a6be.writebug)
![](https://www.writebug.com/myres/static/uploads/2021/10/29/966abb34825abac308be2b1f14bab737.writebug)
![](https://www.writebug.com/myres/static/uploads/2021/10/29/a99e2aada04a03d7795df620629e1200.writebug)
![](https://www.writebug.com/myres/static/uploads/2021/10/29/704af9831daf95e2e974103f4eea7044.writebug)
![](https://www.writebug.com/myres/static/uploads/2021/10/29/bc213a11113a520fe7c1586f716eb994.writebug)
![](https://www.writebug.com/myres/static/uploads/2021/10/29/73951018b5ecb5ca12e791cedbe43b62.writebug)
## 功能设计
<img src="https://qiniucdn.imfdj.top/beehive/production/Beehive%E5%8A%9F%E8%83%BD%E8%AE%BE%E8%AE%A1.jpg"/>
## 后端设计
<img src="https://qiniucdn.imfdj.top/beehive/production/Beehive%E5%90%8E%E7%AB%AF%E8%AE%BE%E8%AE%A1.jpg"/>
## 数据库设计
<img src="https://qiniucdn.imfdj.top/beehive/production/Beehive-data-model.jpg"/>
### License
[MIT](https://github.com/Imfdj/egg-beehive/blob/master/LICENSE)
Copyright (c) 2021 Imfdj
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
这是一个 Vue+Node.js 的 js 全栈项目。基于 RBAC 模型做权限控制,动态配置菜单,前端实现页面元素级别的权限控制。通过 WebSocket 实现站内信功能,任务看板中,实现更新同步推送。一旦其他项目成员有对我们当前查看的项目任务做任何的操作,页面都将立即同步更新,并向此任务的所有参与者(除了操作者)发送消息通知。注册和找回密码需要通过邮箱验证码验证,可以通过 GitHub 授权登陆。 前端:Vue2 全家桶 + Element-ui + Axios + Vue-socket.io + Sass 后端:Egg.js + Sequelize + Jwt + MySQL + Redis + Socket + Swagger 目标功能:登录、注册、GitHub 授权登录、找回密码、滑块验证、邮箱验证、动态首页、个人设置、用户管理、角色管理、菜单管理、资源管理、操作日志、动态菜单、部门管理、项目列表、任务看板、任务列表、项目文件、项目概览、项目成员、项目邀请、项目设置、项目回收站、任务筛选、任务详情、任务标签、任务参与者、任务动态、任务工时 任务关联文件、任务更新即时同步、公开项目的业务权限控制(非项目成员不可编辑项目)、项目模板、消息提醒、工作台、站内信
资源推荐
资源详情
资源评论
收起资源包目录
基于Vue+Node.js+MySQL实现的项目管理系统【100013017】 (500个子文件)
.browserslistrc 30B
plus.css 9KB
iconfont.css 3KB
dots.css 2KB
loading.css 1KB
gauge.css 1KB
inner-circles.css 998B
.env.development 62B
.editorconfig 188B
iconfont.eot 16KB
.eslintignore 46B
.eslintignore 9B
.eslintrc 262B
.gitignore 275B
.gitignore 172B
index.html 2KB
favicon.ico 4KB
background.jpg 133KB
1606988796827_683491316.jpg 75KB
5.jpg 13KB
1.jpg 11KB
6.jpg 10KB
3.jpg 10KB
2.jpg 9KB
8.jpg 8KB
9.jpg 8KB
4.jpg 7KB
7.jpg 6KB
tasks.js 17KB
shape-shifter.js 15KB
router.js 13KB
users.js 13KB
users.js 12KB
helper.js 9KB
config-task.js 9KB
users.test.js 7KB
vue.config.js 7KB
config-project-file.js 6KB
user.js 6KB
request.js 6KB
tasks.js 6KB
config-project.js 6KB
invites.js 6KB
task_lists.js 6KB
projects.js 5KB
config-menu.js 5KB
config-task-log.js 5KB
config.default.js 5KB
projects.js 5KB
config-permission.js 5KB
vab.js 5KB
invites.js 4KB
config-task-working-hour.js 4KB
20200110080210-create-task.js 4KB
config-invite.js 4KB
index.js 4KB
config-user.js 4KB
settings.js 4KB
config-operation-log.js 4KB
task_lists.js 4KB
index.js 4KB
invites.test.js 4KB
tasks.js 4KB
config-message.js 4KB
tagsBar.js 4KB
tasks.test.js 3KB
role_permissions.js 3KB
upload-qiniu.js 3KB
projects.js 3KB
verification_codes.js 3KB
task_task_tags.js 3KB
app.js 3KB
role_menus.js 3KB
user_roles.js 3KB
jurisdiction_handler.js 3KB
user_projects.js 3KB
task_lists.test.js 3KB
user_tasks.js 3KB
task.js 3KB
config.js 3KB
roles.js 3KB
connection.js 3KB
roles.test.js 3KB
user_projects.test.js 3KB
task_working_hours.test.js 3KB
config-user-task-like.js 3KB
user_tasks.test.js 3KB
user.js 3KB
uploads.js 3KB
role_permissions.test.js 3KB
config-user-task.js 3KB
index.js 3KB
20200110080210-create-project_file.js 3KB
menus.test.js 3KB
config-verification_code.js 3KB
project.js 3KB
config-task-taskTag.js 3KB
project_templates.js 3KB
verification_codes.test.js 3KB
permissions.test.js 3KB
共 500 条
- 1
- 2
- 3
- 4
- 5
资源评论
- Zruwen2024-06-05超级好的资源,很值得参考学习,对我启发很大,支持!
- Iuia2024-03-14资源很好用,有较大的参考价值,资源不错,支持一下。
- BearDaBeast2024-06-18感谢大佬分享的资源给了我灵感,果断支持!感谢分享~
神仙别闹
- 粉丝: 4099
- 资源: 7482
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 数电课设·简易数字钟(Quartus Ⅱ)
- 123456 sdfsadfsdfsd
- 基于知识图谱的电影知识问答系统(Python和Neo4j实现大作业源码)
- 免费识别语音并翻译实现生成中文字幕软件
- 技巧速记SSM上传照片至数据库存储#mysql存照片#ssm上传照片
- STM32F103单片机连接ESP8266 wifi模块实现远程采集温湿度数据WiFi发送TCP服务器.zip
- STM32F103单片机连接A7680C通过4G网络远程更新STM32程序固件-OTA远程升级.zip
- 动态粒子爱心演示视频:效果
- STM32F103单片机连接A7680C-4G模块实现远程采集及控制RS485接口的设备(数据透传).zip
- STM32F103单片机连接A7680C-4G模块实现接打电话.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功