# EBuyMall **Repository Path**: ypd0210/ebuy-mall ## Basic Information - **Project Name**: EBuyMall - **Description**: 易购商城 - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-10-05 - **Last Updated**: 2025-09-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # EBuyMall ## 介绍 易购商城是基于微服务架构的电商系统,提供商品管理、购物车、订单处理等核心电商功能。系统采用SpringCloud微服务架构,实现了服务拆分与治理。 ## 技术架构 - 核心框架:SpringBoot 2.6.x - 微服务框架:SpringCloud 2021.x - 数据持久:MyBatis Plus + MySQL - 接口文档:Swagger3 / Knife4j - 服务注册:Nacos - 负载均衡:Ribbon - 熔断降级:Sentinel - 分布式事务:Seata - 服务网关:SpringCloud Gateway - 权限控制:SpringSecurity + JWT ## 功能模块 1. **商品服务(item-service)** - 商品管理 - 库存管理 - 商品搜索 2. **购物车服务(cart-service)** - 购物车增删改查 - 购物车商品数量限制 - 购物车数据同步 3. **订单服务(order-service)** - 订单创建 - 订单支付状态更新 - 订单明细管理 4. **支付服务(pay-service)** - 支付单生成 - 余额支付 - 支付状态查询 5. **用户服务(user-service)** - 用户登录/注册 - 收货地址管理 - 用户余额管理 6. **API模块(ebuy-api)** - FeignClient服务调用 - 数据传输对象(DTO) - 枚举定义 7. **公共模块(ebuy-common)** - 通用异常处理 - 分页工具 - JWT工具 - 自定义注解 ## 快速启动 1. 环境准备 - JDK11+ - Maven 3.8+ - Nacos Server - MySQL 8.0+ 2. 启动顺序 ```bash # 启动注册中心 start nacos-server # 构建公共模块 cd eBuy-common && mvn install cd eBuy-api && mvn install # 启动各微服务 cd item-service && mvn spring-boot:run cd cart-service && mvn spring-boot:run cd order-service && mvn spring-boot:run cd pay-service && mvn spring-boot:run cd user-service && mvn spring-boot:run # 启动网关服务 cd eBuy-getway && mvn spring-boot:run ``` ## 使用示例 1. **商品操作** ```bash # 查询商品 GET /items/{id} # 商品搜索 GET /search/list?key=手机 ``` 2. **购物车操作** ```bash # 添加到购物车 POST /carts { "itemId": 1001, "num": 2 } # 查询购物车 GET /carts ``` 3. **订单操作** ```bash # 创建订单 POST /orders { "addressId": 1, "paymentType": 3, "details": [ {"itemId": 1001, "num": 2} ] } ``` 4. **支付操作** ```bash # 生成支付单 POST /pay-orders { "bizOrderNo": 10001, "amount": 19990, "payType": 5 } ``` ## 网关配置 - 请求鉴权配置在`AuthProperties` - JWT密钥配置在`JwtProperties` - 动态路由通过Nacos配置中心管理 - 全局鉴权过滤器`AuthGlobalFilter` ## 开发规范 1. DTO对象使用Lombok注解 2. 接口文档使用Swagger注解 3. 服务异常统一返回`R`对象 4. 数据校验使用Hibernate Validator 5. 分页查询使用`PageQuery`统一参数 ## 贡献指南 1. Fork本仓库 2. 新建`Feat_xxx`分支 3. 提交代码 4. 新建Pull Request ## 许可证 本项目采用MIT开源许可证,详情请参考LICENSE文件。