# structure-admin **Repository Path**: structure-projects/structure-admin ## Basic Information - **Project Name**: structure-admin - **Description**: structure-admin - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-12-19 - **Last Updated**: 2025-06-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README structure-admin --- structure-admin 是一个基于 Spring Boot 的后台管理系统,提供了用户、部门、角色、菜单等基础管理功能,并集成了 Swagger 文档和 MyBatis-Plus 数据访问层。系统支持多租户架构,具备字典管理、权限绑定、文件上传下载等功能。 ### 功能特性 - **用户管理**:用户注册、登录认证、密码修改、用户启用/停用、用户锁定/解锁。 - **部门管理**:部门的增删改查、部门启用/停用、部门分页及子部门列表。 - **角色管理**:角色创建、修改、启用/停用,支持角色权限绑定。 - **菜单管理**:菜单增删改查、菜单启用/停用、菜单树结构展示。 - **字典管理**:支持字典类和字典项的管理,便于系统参数配置。 - **机构管理**:机构信息获取与更新,支持多租户架构。 - **空间管理**:支持空间的增删改查与启用/停用。 - **文件管理**:文件上传、下载、图片预览。 - **配置管理**:系统配置的获取与修改。 ### 快速开始 #### 依赖 - Java 1.8+ - Spring Boot - MyBatis-Plus - Swagger2 - Lombok - Spring Security - Feign - 多租户支持 #### 启动 1. 确保已安装 JDK 1.8+ 和 Maven。 2. 使用 Maven 构建项目: ```bash mvn clean package ``` 3. 运行主类: ```bash java -jar structure-admin-boot/target/structure-admin-boot.jar ``` ### 使用示例 - **用户注册**:`POST /user/register` - **登录**:`POST /login` - **获取用户菜单权限**:`GET /user/getUserMenu` - **修改用户密码**:`PUT /user/changePassword` - **新增部门**:`POST /dept` - **启用部门**:`PUT /dept/enable/{deptId}` - **禁用部门**:`PUT /dept/disable/{deptId}` - **部门分页列表**:`GET /dept/list/{page}/{pageSize}/` - **新增角色**:`POST /role` - **角色启用**:`PUT /role/enable/{roleId}` - **角色停用**:`PUT /role/disable/{roleId}` - **菜单新增**:`POST /menu` - **菜单详情**:`GET /menu/get` - **上传文件**:`POST /file/upload` ### 架构说明 - `structure-admin-boot`:Spring Boot 启动模块,包含应用主类。 - `structure-admin-client`:提供 Feign 客户端接口,用于模块间通信。 - `structure-admin-core`:核心业务逻辑模块,包含实体类、服务层、数据访问层、控制器等。 - `DTO`:数据传输对象,用于接收前端请求参数。 - `VO`:视图对象,用于向前端返回数据。 - `BO`:业务对象,用于封装业务逻辑。 - `Mapper`:MyBatis-Plus 数据访问接口。 - `Service`:服务实现类,实现业务逻辑。 - `Controller`:RESTful API 入口,集成 Swagger 注解。 - `Configuration`:配置类,如自动配置、MyBatis 配置。 - `Enums`:系统中使用的枚举定义。 - `Assemblers`:用于转换 DTO、VO、BO、Entity 等对象。 ### 贡献指南 欢迎贡献代码,请遵循以下步骤: 1. Fork 本仓库。 2. 创建新分支。 3. 提交 Pull Request。 ### 许可证 本项目采用 MIT 许可证。详情请查看 LICENSE 文件。