# yoe-shop-web 企业工作台接口文档

## 项目概述

## 张林的交接文档。

## 有一个问题：你记得我们写的pc接口的gateway可能会和之前的后台管理系统有冲突导致404，你得去gateway.yml文件里专门配置一下。

## 技术栈

- Vue 3.5.22
- TypeScript 5.9.3
- Element Plus 2.11.7
- Vite 6.4.1
- Axios 1.13.1

## API 文件结构

```
src/api/pc/
├── enterprise/          # 企业相关接口
│   ├── index.ts        # 企业信息、地址、发票
│   ├── order.ts        # 订单管理
│   ├── orderReturn.ts  # 售后服务
│   ├── statement.ts    # 对账单管理
│   └── invoice.ts      # 发票信息
├── organization/        # 组织管理接口
│   └── index.ts        # 部门、人员、角色
└── system/             # 系统接口
    ├── dict.ts         # 字典数据
    └── announcement.ts # 平台公告
```

---

## 一、企业账户模块

### 1.1 企业信息页面

**页面路径**: `src/views/enterprise/companyInfo/index.vue`

**API 文件**: `src/api/pc/enterprise/index.ts`

**接口列表**:

| 接口路径              | 方法 | 功能         | 函数名                       |
| --------------------- | ---- | ------------ | ---------------------------- |
| `/pc/enterprise/info` | GET  | 查询企业信息 | `getEnterpriseInfo()`        |
| `/pc/enterprise/info` | PUT  | 修改企业信息 | `updateEnterpriseInfo(data)` |

### 1.2 收货地址管理

**页面路径**: `src/views/easybuv/index.vue`

**API 文件**: `src/api/pc/enterprise/index.ts`

**接口列表**:

| 接口路径                         | 方法   | 功能             | 函数名                   |
| -------------------------------- | ------ | ---------------- | ------------------------ |
| `/pc/enterprise/address/list`    | GET    | 查询收货地址列表 | `getAddressList(params)` |
| `/pc/enterprise/address/{id}`    | GET    | 查询收货地址详情 | `getAddressInfo(id)`     |
| `/pc/enterprise/address`         | POST   | 新增收货地址     | `addAddress(data)`       |
| `/pc/enterprise/address`         | PUT    | 修改收货地址     | `updateAddress(data)`    |
| `/pc/enterprise/address/{ids}`   | DELETE | 删除收货地址     | `deleteAddress(ids)`     |
| `/pc/enterprise/address/default` | PUT    | 设置默认地址     | `setDefaultAddress(id)`  |

### 1.3 发票信息管理

**页面路径**: `src/views/enterprise/invoiceManage/index.vue`

**API 文件**: `src/api/pc/enterprise/index.ts`

**接口列表**:

| 接口路径                       | 方法   | 功能             | 函数名                   |
| ------------------------------ | ------ | ---------------- | ------------------------ |
| `/pc/enterprise/invoice/list`  | GET    | 查询发票信息列表 | `getInvoiceList(params)` |
| `/pc/enterprise/invoice/{id}`  | GET    | 查询发票详情     | `getInvoiceInfo(id)`     |
| `/pc/enterprise/invoice`       | POST   | 新增发票         | `addInvoice(data)`       |
| `/pc/enterprise/invoice`       | PUT    | 修改发票         | `updateInvoice(data)`    |
| `/pc/enterprise/invoice/{ids}` | DELETE | 删除发票         | `deleteInvoice(ids)`     |

### 1.4 专属服务人员

**API 文件**: `src/api/pc/enterprise/servicePerson.ts`

**接口列表**:

| 接口路径                            | 方法 | 功能             | 函数名                |
| ----------------------------------- | ---- | ---------------- | --------------------- |
| `/pc/enterprise/servicePerson/list` | GET  | 查询专属服务人员 | `getServicePersons()` |

---

## 二、交易管理模块

### 2.1 订单管理

**页面路径**: `src/views/order/orderManage/index.vue`

**API 文件**: `src/api/pc/enterprise/order.ts`

**接口列表**:

| 接口路径                           | 方法   | 功能             | 函数名                       |
| ---------------------------------- | ------ | ---------------- | ---------------------------- |
| `/pc/enterprise/order/list`        | GET    | 查询订单列表     | `getOrderList(params)`       |
| `/pc/enterprise/order/statusStats` | GET    | 查询订单状态统计 | `getOrderStatusStats()`      |
| `/pc/enterprise/order/{id}`        | GET    | 查询订单详情     | `getOrderInfo(id)`           |
| `/pc/enterprise/order/products`    | GET    | 查询订单商品明细 | `getOrderProducts(orderIds)` |
| `/pc/enterprise/order/cancel`      | PUT    | 取消订单         | `cancelOrder(data)`          |
| `/pc/enterprise/order/checkStatus` | PUT    | 审核订单         | `checkOrderStatus(data)`     |
| `/pc/enterprise/order/{ids}`       | DELETE | 删除订单         | `deleteOrder(ids)`           |

### 2.2 售后服务

**页面路径**: `src/views/order/afterSale/index.vue`

**API 文件**: `src/api/pc/enterprise/orderReturn.ts`

**接口列表**:

| 接口路径                           | 方法   | 功能             | 函数名                       |
| ---------------------------------- | ------ | ---------------- | ---------------------------- |
| `/pc/enterprise/orderReturn/list`  | GET    | 查询售后申请列表 | `getOrderReturnList(params)` |
| `/pc/enterprise/orderReturn/{id}`  | GET    | 查询售后详情     | `getOrderReturnInfo(id)`     |
| `/pc/enterprise/orderReturn`       | POST   | 新增售后申请     | `addOrderReturn(data)`       |
| `/pc/enterprise/orderReturn`       | PUT    | 修改售后申请     | `updateOrderReturn(data)`    |
| `/pc/enterprise/orderReturn/{ids}` | DELETE | 删除售后申请     | `deleteOrderReturn(ids)`     |

---

## 三、组织管理模块

### 3.1 部门管理

**页面路径**: `src/views/organization/deptManage/index.vue`

**API 文件**: `src/api/pc/organization/index.ts`

**接口列表**:

| 接口路径                      | 方法   | 功能         | 函数名                |
| ----------------------------- | ------ | ------------ | --------------------- |
| `/pc/organization/dept/tree`  | GET    | 查询部门树   | `getDeptTree()`       |
| `/pc/organization/dept/list`  | GET    | 查询部门列表 | `getDeptList(params)` |
| `/pc/organization/dept/{id}`  | GET    | 查询部门详情 | `getDeptInfo(id)`     |
| `/pc/organization/dept`       | POST   | 新增部门     | `addDept(data)`       |
| `/pc/organization/dept`       | PUT    | 修改部门     | `updateDept(data)`    |
| `/pc/organization/dept/{ids}` | DELETE | 删除部门     | `deleteDept(ids)`     |

### 3.2 人员管理

**页面路径**: `src/views/organization/staffManage/index.vue`

**API 文件**: `src/api/pc/organization/index.ts`

**接口列表**:

| 接口路径                           | 方法   | 功能             | 函数名                   |
| ---------------------------------- | ------ | ---------------- | ------------------------ |
| `/pc/organization/contact/current` | GET    | 获取当前用户信息 | `getCurrentUserInfo()`   |
| `/pc/organization/contact/list`    | GET    | 查询联系人列表   | `getContactList(params)` |
| `/pc/organization/contact/{id}`    | GET    | 查询联系人详情   | `getContactInfo(id)`     |
| `/pc/organization/contact`         | POST   | 新增联系人       | `addContact(data)`       |
| `/pc/organization/contact`         | PUT    | 修改联系人       | `updateContact(data)`    |
| `/pc/organization/contact/{ids}`   | DELETE | 删除联系人       | `deleteContact(ids)`     |

### 3.3 角色管理

**页面路径**: `src/views/organization/roleManage/index.vue`

**API 文件**: `src/api/pc/organization/index.ts`

**接口列表**:

| 接口路径                      | 方法   | 功能         | 函数名                |
| ----------------------------- | ------ | ------------ | --------------------- |
| `/pc/organization/role/list`  | GET    | 查询角色列表 | `getRoleList(params)` |
| `/pc/organization/role/{id}`  | GET    | 查询角色详情 | `getRoleInfo(id)`     |
| `/pc/organization/role`       | POST   | 新增角色     | `addRole(data)`       |
| `/pc/organization/role`       | PUT    | 修改角色     | `updateRole(data)`    |
| `/pc/organization/role/{ids}` | DELETE | 删除角色     | `deleteRole(ids)`     |

---

## 四、对账管理模块

### 4.1 对账单管理

**页面路径**: `src/views/reconciliation/billManage/index.vue`

**API 文件**: `src/api/pc/enterprise/statement.ts`

**接口列表**:

| 接口路径                               | 方法 | 功能               | 函数名                            |
| -------------------------------------- | ---- | ------------------ | --------------------------------- |
| `/pc/enterprise/statement/list`        | GET  | 查询对账单列表     | `getStatementList(params)`        |
| `/pc/enterprise/statement/{id}`        | GET  | 查询对账单详情     | `getStatementInfo(id)`            |
| `/pc/enterprise/statement/details`     | GET  | 查询对账单明细列表 | `getStatementDetails(params)`     |
| `/pc/enterprise/statement/confirm`     | PUT  | 确认对账单         | `confirmStatement(data)`          |
| `/pc/enterprise/statement/reject`      | PUT  | 驳回对账单         | `rejectStatement(data)`           |
| `/pc/enterprise/statementDetail/list`  | GET  | 查询对账单明细     | `getStatementDetailList(params)`  |
| `/pc/enterprise/statementProduct/list` | GET  | 查询对账单商品列表 | `getStatementProductList(params)` |
| `/pc/enterprise/statementInvoice/list` | GET  | 查询对账单发票列表 | `getStatementInvoiceList(params)` |

**对账状态说明**:

| 状态值 | 状态名称 | 说明                         |
| ------ | -------- | ---------------------------- |
| 0      | 待确认   | 后台生成对账单，等待企业确认 |
| 1      | 待对账   | 企业可以点击确认按钮         |
| 2      | 已对账   | 对账完成，按钮禁用           |
| 3      | 驳回     | 对账被驳回                   |
| 4      | 作废     | 对账单作废                   |

### 4.2 开票管理

**页面路径**: `src/views/reconciliation/invoiceManage/index.vue`

**API 文件**: `src/api/pc/enterprise/statement.ts`

**接口列表**: 同对账单管理接口

---

## 五、系统功能模块

### 5.1 字典数据

**API 文件**: `src/api/pc/system/dict.ts`

**接口列表**:

| 接口路径                   | 方法 | 功能                     | 函数名                    |
| -------------------------- | ---- | ------------------------ | ------------------------- |
| `/pc/dict/type/{dictType}` | GET  | 根据字典类型查询字典数据 | `getDictByType(dictType)` |

**常用字典类型**:

- `statement_status` - 对账状态
- `invoice_issuance_status` - 开票状态
- `payment_status` - 支付状态

### 5.2 平台公告

**API 文件**: `src/api/pc/system/announcement.ts`

**接口列表**:

| 接口路径                | 方法 | 功能             | 函数名                        |
| ----------------------- | ---- | ---------------- | ----------------------------- |
| `/pc/announcement/list` | GET  | 查询平台公告列表 | `getAnnouncementList(params)` |
| `/pc/announcement/{id}` | GET  | 查询平台公告详情 | `getAnnouncementInfo(id)`     |

---

## 六、后端控制器说明

### 6.1 对账单控制器

**后端文件**: `yoe-core/ruoyi-modules/ruoyi-bill/src/main/java/org/dromara/bill/pc/controller/PcStatementOrderController.java`

**权限控制**:

- PC 端用户只能查询自己企业的对账单
- 只允许查询状态为 1(待对账)、2(已对账)、3(驳回) 的对账单
- 不允许查询状态为 0(待确认)、4(作废) 的对账单

**核心方法**:

- `list()` - 查询对账单列表（带权限过滤）
- `getInfo()` - 查询对账单详情（验证企业权限）
- `confirm()` - 确认对账单（将状态从 1 改为 2）
- `reject()` - 驳回对账单（将状态改为 3）

---

## 七、开发环境配置

### 7.1 环境变量

**开发环境** (`.env.development`):

```
VITE_APP_BASE_API=/dev-api
VITE_APP_CONTEXT_PATH=/
```

**代理配置** (`vite.config.ts`):

```typescript
proxy: {
  '/dev-api': {
    target: 'http://localhost:8080',
    changeOrigin: true,
    rewrite: (path) => path.replace(/^\/dev-api/, '')
  }
}
```

### 7.2 启动命令

```bash
# 安装依赖
npm install

# 启动开发服务器
npm run dev

# 构建生产版本
npm run build:prod
```

---

## 八、注意事项

1. **接口前缀**: 所有 PC 端接口都以 `/pc` 开头
2. **权限控制**: 后端会根据登录用户的企业 ID 自动过滤数据
3. **状态管理**: 对账状态、开票状态、支付状态都通过字典管理
4. **错误处理**: 统一使用 Element Plus 的 `ElMessage` 显示错误信息
5. **数据刷新**: 操作成功后会自动刷新列表数据

---

## 九、常见问题
