# 项目概述 ## 项目简介 本项目是一个基于Spring Boot + Vue3的前后端分离的Java快速开发脚手架,专为电商业务场景设计。项目采用现代化的架构设计,集成了企业微信、微信支付、智能柜等多种功能模块。 ## 技术栈 ### 后端技术栈 - **框架**: Spring Boot 2.7.10 - **数据库**: MySQL 8.0 - **ORM**: MyBatis Plus 3.5.2 - **缓存**: Caffeine + Redis - **安全**: Spring Security + JWT - **文档**: SpringDoc OpenAPI 3.0 - **工具包**: Hutool、Guava ### 前端技术栈 - **框架**: Vue3 + TypeScript - **UI组件**: Element Plus - **状态管理**: Pinia - **构建工具**: Vite ## 项目架构 ### 模块化设计 ``` agileboot ├── agileboot-admin # 管理后台接口模块 ├── agileboot-api # 开放接口模块(供客户端调用) ├── agileboot-common # 通用工具模块 ├── agileboot-domain # 业务领域模块 ├── agileboot-infrastructure # 基础设施模块 ``` ### 架构特点 - **DDD领域驱动设计**: 采用CQRS模式,分离查询和命令操作 - **多级缓存**: Caffeine本地缓存 + Redis分布式缓存 - **权限控制**: 基于注解的菜单权限和数据权限 - **企业微信集成**: 完整的企微应用集成方案 - **微信支付**: 支持JSAPI支付和退款功能 ## 主要功能模块 ### 1. 电商核心模块 - **商品管理**: 商品分类、商品信息、库存管理 - **订单管理**: 订单创建、支付、退款、物流跟踪 - **用户管理**: 微信用户信息、会员体系 - **支付系统**: 微信支付集成、支付回调处理 ### 2. 企业微信集成 - **企微认证**: 企业微信应用授权管理 - **部门管理**: 企微部门同步和管理 - **消息推送**: 企微应用消息发送 - **用户同步**: 企微用户与系统用户关联 ### 3. 智能柜系统 - **柜体管理**: 智能柜设备管理 - **格口操作**: 柜体格口状态监控 - **企业微信集成**: 支持corpid字段的企业微信对接 ### 4. 系统管理 - **用户权限**: RBAC权限模型 - **数据字典**: 系统常量管理 - **操作日志**: 完整的操作审计 - **系统监控**: 缓存监控、服务状态监控 ## 开发规范 ### 代码规范 - 统一使用Google代码格式化模板 - 前后端命名规范统一 - 异常处理和错误码统一设计 - 使用枚举替代字典类型数据 ### 数据库设计 - 精简设计,核心表约10张 - 统一使用软删除 - 支持多租户数据隔离 - 完整的索引优化 ## 部署环境 ### 开发环境 - JDK 1.8+ - MySQL 8.0+ - Redis 6.0+ - Node.js 16+ ### 生产环境 - 支持Docker容器化部署 - 内置H2数据库和Redis(开发测试用) - 支持多环境配置 ## 项目特色 1. **性能优化**: 多级缓存设计,Caffeine本地缓存提升性能 2. **安全性**: JWT认证、数据权限控制、XSS防护 3. **可扩展性**: 模块化设计,易于二次开发 4. **文档完善**: 完整的API文档和开发指南 5. **测试覆盖**: 大量的单元测试和集成测试 ## 快速开始 详细的使用说明请参考: - [快速启动指南](./快速启动指南.md) - [API接口文档](./API接口文档.md) - [企业微信集成指南](./企业微信集成指南.md) - [微信支付集成指南](./微信支付集成指南.md)