# TaskManageSystem **Repository Path**: Yang_Dang_Code/task-manage-system ## Basic Information - **Project Name**: TaskManageSystem - **Description**: 基于springcloud的任务管理系统 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2025-06-14 - **Last Updated**: 2025-06-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # TaskManageSystem - 团队协作任务管理系统 ## 项目介绍 基于SpringCloud微服务架构的团队协作任务管理系统,致力于提供高效、安全、可扩展的企业级任务管理解决方案。系统具备用户权限管理、任务分配跟踪、日志记录分析等核心功能,采用前后端分离架构,支持分布式部署。 ## 系统架构 - **微服务架构**:基于SpringCloud构建,服务间通过OpenFeign进行通信 - **网关统一入口**:使用SpringCloud Gateway作为API网关,统一处理请求路由、权限验证 - **服务注册发现**:基于Nacos实现服务注册与配置管理 - **统一认证授权**:集成Sa-Token实现用户认证与权限控制 - **异步消息通信**:通过RabbitMQ实现服务间的异步通信,提高系统吞吐量 - **日志收集分析**:自研日志服务,支持API调用记录、操作审计、数据统计 ## 核心模块 - **网关模块(gateway)**:请求路由、权限验证、接口日志记录 - **用户服务(service-user)**:用户管理、认证授权、角色分配 - **日志服务(service-log)**:系统日志、操作审计、数据统计分析 - **权限服务(service-permission)**:权限管理、动态权限控制 - **公共模块(common)**:共享工具类、消息队列、Redis操作封装 - **模型模块(model)**:实体类定义、数据传输对象 ## 技术栈 ### 后端技术 - **主框架**:SpringBoot 3.3.4 + SpringCloud 2023.0.3 - **微服务组件**:SpringCloud Alibaba 2023.0.3.2 - **服务调用**:OpenFeign 4.1.3 - **网关框架**:SpringCloud Gateway 4.1.5 - **权限框架**:Sa-Token - **ORM框架**:MyBatis Plus - **数据库**:MySQL - **缓存**:Redis - **消息队列**:RabbitMQ - **日志**:自研日志系统,基于RabbitMQ的异步日志 ### 安全特性 - **分布式会话**:基于Sa-Token的分布式Session - **数据加密**:密码MD5加盐加密 - **数据完整性验证**:基于SHA-256哈希算法的数据签名 - **防重放攻击**:Token时效性控制 - **接口限流**:基于Gateway的限流控制 - **IP限制**:异常登录IP封禁机制 ## 已实现功能 - [x] 用户认证(账号密码/手机号验证码) - [x] 用户管理(新增/修改/删除/查询) - [x] 动态权限控制 - [x] 菜单权限管理 - [x] 角色分配管理 - [x] API操作日志 - [x] 系统运行日志 - [x] 数据统计分析(日/周/月/年) - [x] 密码重置(邮件/短信) - [x] 登录安全策略(连续失败锁定) - [x] 在线用户管理(强制下线) - [x] 数据完整性验证 - [x] 消息队列优化 ## 环境要求 - JDK 17+ - Maven 3.6+ - MySQL 8.0+ - Redis 6.0+ - RabbitMQ 3.9+ - Nacos 2.2.0+ ## 安装部署 1. 克隆项目到本地 ```bash git clone https://gitee.com/your-username/TaskManageSystem.git ``` 2. 修改配置文件 - 修改`application.yml`中的数据库连接信息 - 修改Nacos、Redis、RabbitMQ的连接信息 3. 启动Nacos、Redis、RabbitMQ服务 4. 执行数据库脚本 - 执行`sql`目录下的建表脚本(暂不提供) 5. 启动服务(按顺序) - 先启动基础服务:`service-email`、`service-log` - 然后启动业务服务: `service-user`、`service-permission` - 最后启动网关服务:`gateway` ## 开发规范 1. 分支管理 - `master`: 稳定版本分支,只接受合并请求 - `develop`: 开发主分支,功能开发完成后合并至此 2. 代码提交规范 暂无 ## 参与贡献 1. Fork 本仓库 2. 新建功能分支 (`git checkout -b feature/AmazingFeature`) 3. 提交代码 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 新建 Pull Request ## 版权信息 黑奴团队