# 0xcafe **Repository Path**: sysping/0xcafe ## Basic Information - **Project Name**: 0xcafe - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-08-01 - **Last Updated**: 2025-11-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 0xcafe 项目文档 ## 项目简介 0xcafe 是一个基于 Spring Boot 的综合管理系统,包含多个功能模块,如用户管理、角色权限、菜单配置、附件管理、服务单管理、质保单管理等。该项目主要用于企业后台管理系统开发,支持微信用户登录、阿里云 OSS 文件存储、短信服务等功能。 ## 功能模块 - **用户管理**:支持用户创建、更新、删除、角色分配、密码重置等操作。 - **角色权限管理**:支持角色创建、更新、删除、菜单权限分配。 - **菜单管理**:支持菜单的创建、更新、删除及权限控制。 - **附件管理**:支持文件上传、下载、分页查询等功能。 - **门店管理**:支持门店信息的创建、更新、删除、冻结/解冻等操作。 - **部门管理**:支持部门的创建、更新、删除。 - **字典管理**:支持字典类型和数据的管理。 - **装修配置管理**:用于管理装修信息,如首页横幅、案例图片、视频等。 - **服务单管理**:支持服务单的创建、更新、审核、导出等操作。 - **质保单管理**:支持质保单的创建、查询、导出,以及微信用户查询自己的质保单。 - **车膜产品管理**:支持车膜产品的创建、更新、删除、查询。 - **微信用户管理**:支持微信用户的登录、绑定手机号、查询等操作。 - **后台首页信息**:提供后台首页数据统计接口。 - **测试接口**:提供测试用的接口,如短信发送测试、用户信息查询等。 ## 技术架构 - **后端框架**:Spring Boot + Spring Security + MyBatis Plus - **认证授权**:基于 JWT 的 Token 认证,支持微信登录和密码登录 - **数据库**:MySQL - **文件存储**:阿里云 OSS - **缓存**:Redis - **日志**:Logback - **部署**:Linux Shell 脚本部署 - **前端交互**:RESTful API,支持 Swagger 文档 ## 模块结构 ``` 0xcafe/ ├── 0xcafe-application/ # 主应用模块,包含核心业务逻辑 ├── 0xcafe-boot/ # 启动模块,包含 Spring Boot 配置 │ ├── 0xcafe-boot-excel/ # Excel 导出模块 │ ├── 0xcafe-boot-mybatis/ # MyBatis Plus 配置模块 │ ├── 0xcafe-boot-oauth/ # 认证授权模块 │ └── 0xcafe-boot-web/ # Web 层通用配置模块 ├── 0xcafe-build-plugin/ # Maven 构建插件模块 ├── 0xcafe-common/ # 公共工具类、常量、异常处理等 ├── 0xcafe-dependencies/ # 项目依赖管理模块 ├── linux/ # 部署脚本和配置文件 └── pom.xml # 项目根 POM 文件 ``` ## 安装与部署 ### 本地开发环境搭建 1. **JDK 17+** 2. **Maven 3.8+** 3. **MySQL 8+** 4. **Redis 6+** 5. **IDE**:IntelliJ IDEA 或 Eclipse ### 项目构建 ```bash mvn clean install ``` ### 启动项目 ```bash cd 0xcafe-application mvn spring-boot:run ``` ### 生产部署 使用 `linux/deploy.sh` 脚本进行部署: ```bash ./deploy.sh start ``` ## 使用说明 ### 接口文档 项目使用 Swagger 生成接口文档,访问地址: ``` http://localhost:8080/swagger-ui.html ``` ### 用户登录 - **密码登录**:`POST /user-info/login` - **微信登录**:`GET /wechat-user/bind-phone/{phoneCode}` ### 文件上传 - **阿里云 OSS 上传**:`GET /v1/attachment/aliyun/policy` - **本地上传**:`POST /v1/attachment/upload` ### 短信服务 - **发送短信**:`POST /test/test-sms` ### 数据统计 - **后台首页数据**:`GET /backend-home/info` ### 权限控制 使用 Spring Security + JWT 实现权限控制,支持基于角色的菜单访问控制。 ## 依赖配置 - **数据库配置**:`application.yml` - **OSS 配置**:`application.yml` - **短信服务配置**:`application.yml` - **Redis 配置**:`application.yml` ## 日志与监控 - **日志输出**:使用 Logback 输出日志到 `logs` 目录 - **访问日志**:通过 `WebLoggerInterceptor` 记录请求日志 - **UV 统计**:通过 `@StatisticsUV` 注解统计接口访问量 ## 开发规范 - **代码风格**:使用 Lombok 简化代码 - **异常处理**:统一使用 `GlobalExceptionHandler` 处理异常 - **分页查询**:使用 `PageDomain` 和 `PageResult` 实现分页 - **国际化支持**:使用 Spring 的 `MessageSource` 实现多语言支持 ## 扩展性设计 - **Excel 导出**:通过 `@ExcelExport` 注解实现异步导出 - **事件驱动**:使用 Spring Event 实现事件监听机制 - **多租户支持**:通过 `tenant_id` 实现多租户隔离 ## 开源协议 本项目采用 **Apache License 2.0** 协议。详见 `LICENSE` 文件。 ## 贡献指南 欢迎提交 PR 和 Issue,贡献代码请遵循以下规范: - 使用统一的代码风格(IDE 导入 Lombok 插件) - 提交前确保单元测试通过 - 提交 PR 时请说明修改内容和影响范围 ## 联系方式 - **项目地址**:[Gitee 仓库](https://gitee.com/sysping/0xcafe) - **作者**:sysping - **问题反馈**:请在 Gitee 上提交 Issue --- 如需进一步了解项目细节,请参考源码中的注释和文档。