# sky **Repository Path**: maxwade/sky ## Basic Information - **Project Name**: sky - **Description**: # sky 基于 [RuoYi-Vue-Plus](https://gitee.com/dromara/RuoYi-Vue-Plus) 的单体技术脚手架,对代码结构进行了提炼和优化。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-11 - **Last Updated**: 2026-06-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # sky 基于 [RuoYi-Vue-Plus](https://gitee.com/dromara/RuoYi-Vue-Plus) 的单体技术脚手架,对代码结构进行了提炼和优化。 ## 技术栈 | 技术 | 版本 | 说明 | |------|------|------| | Spring Boot | 3.3.5 | 基础框架 | | MyBatis-Plus | 3.5.9 | ORM 框架 | | Sa-Token | 1.45.0 | 权限认证 | | Knife4j | 4.5.0 | API 文档 | | Warm Flow | 1.8.5 | 工作流引擎 | | Hutool | 5.8.34 | 工具集 | ## 快速开始 ### 环境要求 - JDK 17+ - Maven 3.8+ - MySQL 8.0+ - Redis ### 启动步骤 1. 克隆项目 ```bash git clone https://gitee.com/maxwade/sky.git ``` 2. 导入数据库脚本(如有) 3. 修改数据库配置 `src/main/resources/application-local.yml` 4. 启动项目 ```bash mvn spring-boot:run ``` 5. 访问接口文档 http://localhost:8080/doc.html ## 项目结构 ``` src/main/java/com/sky/ ├── SkyApplication.java # 启动类 │ ├── adapter/ # 适配器层(Controller) │ └── web/ │ ├── auth/ # 认证接口(登录、验证码) │ ├── system/ # 系统管理接口 │ │ ├── user/ # 用户管理 │ │ ├── role/ # 角色管理 │ │ ├── menu/ # 菜单管理 │ │ ├── dept/ # 部门管理 │ │ ├── dict/ # 字典管理 │ │ ├── notice/ # 通知公告 │ │ └── log/ # 操作日志 │ ├── workflow/ # 工作流接口 │ ├── leave/ # 请假示例 │ └── mqtt/ # MQTT 测试接口 │ ├── core/ # 核心业务层(Service) │ ├── auth/ # 认证服务 │ ├── user/ # 用户管理 │ ├── role/ # 角色管理 │ ├── menu/ # 菜单管理 │ ├── dept/ # 部门管理 │ ├── dict/ # 字典管理 │ ├── notice/ # 通知公告 │ ├── log/ # 操作日志 │ └── mqtt/ # MQTT 服务 │ ├── dao/ # 数据访问层 │ ├── user/ # 用户 Mapper/Entity │ ├── role/ # 角色 │ ├── menu/ # 菜单 │ ├── dept/ # 部门 │ ├── dict/ # 字典 │ ├── notice/ # 通知 │ └── userrole/ # 用户角色关联 │ ├── common/ # 公共模块 │ ├── encrypt/ # 加解密(API 传输 + 字段级) │ ├── repeatsubmit/ # 防重复提交 │ ├── sse/ # SSE 服务端推送 │ ├── result/ # 统一响应封装 │ ├── request/ # 分页请求 │ ├── sensitive/ # 数据脱敏 │ └── log/ # 操作日志注解 │ ├── config/ # 配置类 │ ├── WebConfig.java # CORS 跨域、LocalDateTime 格式 │ ├── SaTokenConfig.java # Sa-Token 拦截器 │ ├── Knife4jConfig.java # API 文档配置 │ ├── MybatisPlusConfig.java # MyBatis-Plus 配置 │ ├── RedisConfigure.java # Redis 配置 │ ├── filter/ # 过滤器(TraceId、ContentCaching) │ └── mqtt/ # MQTT 配置 │ ├── mqtt/ # MQTT 通信 │ ├── gateway/ # 消息网关 │ ├── handler/ # 消息处理 │ └── model/ # 消息模型 │ ├── workflow/ # 工作流 │ ├── handler/ # 流程处理器 │ ├── listener/ # 事件监听 │ ├── mapper/ # Mapper │ └── enums/ # 枚举 │ ├── util/ # 工具类 │ ├── LoginHelper.java # 登录上下文 │ ├── RedisUtils.java # Redis 工具 │ ├── PageUtil.java # 分页工具 │ ├── ExcelUtil.java # Excel 导入导出 │ └── ip/ # IP 地址定位 │ └── exception/ # 异常处理 ├── GlobalExceptionHandler.java # 全局异常处理器 ├── BizException.java # 业务异常 └── UniversalErrorCode.java # 错误码枚举 ``` ## 核心功能 | 功能 | 说明 | |------|------| | 用户管理 | 用户增删改查、角色分配、密码重置 | | 角色管理 | 角色增删改查、菜单权限分配 | | 菜单管理 | 动态菜单、按钮权限、树形结构 | | 部门管理 | 组织架构、树形结构 | | 字典管理 | 数据字典、字典项维护 | | 通知公告 | 站内信、SSE 实时推送 | | 操作日志 | 登录日志、操作审计 | | 工作流 | 基于 Warm Flow 的流程引擎 | | MQTT | 基于 Spring Integration 的消息通信 | | 防重复提交 | 基于 Redis SETNX | | 数据脱敏 | 手机号、身份证等敏感数据脱敏 | | API 加解密 | RSA + AES 传输加解密 | ## 默认账号 | 用户名 | 密码 | |--------|------| | admin | 123456 | ## 相关项目 - 前端项目:[sky-web](https://gitee.com/maxwade/sky-web)