这个项目是一个典型的仓储管理系统（WMS, Warehouse Management System），采用了微服务架构，前后端分离。下面是对项目结构和各部分功能的详细介绍：

---

## 1. 项目整体结构

```
Warehosue/
├── api-gateway/           # API 网关服务
├── commodity-service/     # 商品服务
├── Customer-Services/     # 客户服务
├── Inventory-Services/    # 库存服务
├── Warehouse-Services/    # 仓库服务
├── wms-frontend/          # 前端 React 应用
├── docker-compose.yml     # Docker Compose 配置
├── go.mod / go.sum        # Go 依赖管理
├── go.work / go.work.sum  # Go 多模块工作区
```

---

## 2. 各模块功能说明

### 2.1 api-gateway（API 网关）

- 作用：作为所有前端请求的统一入口，负责路由转发、认证、聚合等。
- 主要文件：
  - `main.go`：服务入口
  - `controller/`：处理请求的控制器
  - `routes/`：定义路由
  - `config/`：配置文件

### 2.2 commodity-service（商品服务）

- 作用：管理商品信息，如商品的增删改查。
- 主要文件：
  - `model/commodity.go`：商品数据模型
  - `controller/`：商品相关的业务控制器
  - `repository/`：数据库操作
  - `service/`：业务逻辑
  - `routes/`：路由定义
  - `database/`：数据库连接

### 2.3 Customer-Services（客户服务）

- 作用：管理客户信息，如客户的注册、查询、修改等。
- 结构与 commodity-service 类似，包含 model、controller、repository、service、routes、database 等目录。

### 2.4 Inventory-Services（库存服务）

- 作用：管理商品库存，包括库存的增减、查询等。
- 结构与 commodity-service 类似。

### 2.5 Warehouse-Services（仓库服务）

- 作用：管理仓库信息，如仓库的增删改查。
- 结构与 commodity-service 类似。

### 2.6 wms-frontend（前端）

- 技术栈：React
- 作用：为用户提供可视化的操作界面，调用 API 网关暴露的接口，实现仓储管理的各项功能。
- 主要文件：
  - `src/`：前端主要源码
  - `public/`：静态资源
  - `package.json`：前端依赖管理

---

## 3. 运行与部署

- 使用 Docker Compose 进行多服务编排，`docker-compose.yml` 文件定义了各服务的容器配置。
- 每个微服务都包含独立的 `Dockerfile`，可单独构建和部署。
- Go 作为后端开发语言，采用 go.mod/go.sum 进行依赖管理，go.work 支持多模块开发。

---

## 4. 技术特点

- **微服务架构**：每个业务领域（商品、客户、库存、仓库）独立服务，便于扩展和维护。
- **API 网关**：统一入口，简化前端调用，便于安全控制和流量管理。
- **前后端分离**：React 前端与 Go 后端通过 HTTP API 通信。
- **容器化部署**：支持 Docker Compose 一键启动所有服务，方便本地开发和生产部署。

---

## 5. 适用场景

本项目适用于中小型企业的仓储管理系统开发、教学演示、微服务架构学习等场景。可以根据实际业务需求扩展更多服务（如订单、运输等）。

---

如需了解某个服务的具体实现或代码细节，可以指定服务或文件，我可以为你详细解读！