# 承销商 — 订单与牦牛详情（移动端 / 小程序）

## 1. 概述

| 项 | 说明 |
| --- | --- |
| 订单 Base Path | `/app/distributor/order` |
| 牦牛 Base Path | `/app/distributor/yak` |
| 鉴权 | 需登录；承销商账号须绑定 `biz_distributor.sys_user_id` |
| 数据范围 | 仅当前承销商的 `biz_trade_order`（`del_flag=0`） |

界面 Tab 与 `statusTab`：

| 界面 | `statusTab` |
| --- | --- |
| 全部订单 | `ALL`（默认） |
| 待支付 | `PENDING`（`order_status=0`） |
| 已完成 | `COMPLETED`（`order_status=1`） |

## 2. 订单分页列表

`GET /app/distributor/order/list`

### 2.1 请求

| 参数 | 必填 | 说明 |
| --- | --- | --- |
| `statusTab` | 否 | `ALL` / `PENDING` / `COMPLETED` |
| `pageNum` | 否 | 页码，默认 1 |
| `pageSize` | 否 | 每页条数，默认 10 |

### 2.2 响应

标准 `TableDataInfo`：`rows` 为订单数组，每项含 **主表字段** + **`lineList`**（`biz_trade_order_line` 明细）。

主表字段含：`id`、`orderNo`、`supplierId`、`supplierName`、`distributorId`、`distributorName`、`totalHeads`、`totalAmount`、`orderStatus`、`orderStatusName`、`payVoucherUrl`、`payVoucherPath`、`finishTime`（支付时间）、`createTime`、`remark` 等。

明细 `lineList[]`：`id`、`orderId`、`supplierId`、`earTag`、`weight`、`amount`、`gradeCode`、`gradeName`。

排序：`create_time` 降序。

## 3. 订单详情

`GET /app/distributor/order/{id}`

仅可查看 **本承销商** 订单；否则返回「订单不存在或无权查看」。

响应 `data` 结构同列表单条（主表 + `lineList`）。

## 4. 牦牛基本信息

`GET /app/distributor/yak/basic`

订单明细「查看」跳转牦牛详情页时调用。

### 4.1 请求

| 参数 | 必填 | 说明 |
| --- | --- | --- |
| `supplierId` | 是 | 供应商 ID（与订单明细一致） |
| `earTag` | 是 | 耳标号 |

### 4.2 逻辑

1. 在 `biz_entry_isolation` 中按 `supplier_id` 查找，耳标须出现在主表 `ear_tags` 或分圈表 `biz_entry_isolation_alloc.ear_tags`（逗号分隔）；多条取 **最近进场** 一条。
2. 返回：供应商名称、供应商联系方式（`biz_supplier.contact_phone`）、进场时间、检疫证号、预计解除隔离日期（`expectedReleaseDate`）。
3. 巡查列表：该入场关联圈位、隔离期内（`entry_time`～预计解除日 23:59:59）的 `biz_isolation_patrol`，且 `ear_tags` 为空、`sick_dead_qty=0`，按 `patrol_time` 升序。

### 4.3 响应 `data`

| 字段 | 说明 |
| --- | --- |
| `earTag` | 规范化后的耳标号 |
| `entryIsolation` | 入场隔离：`id`、`entryTime`、`supplierId`、`supplierName`、`supplierContactPhone`、`certNo`、`expectedReleaseDate`、`earTags` |
| `patrolList` | 巡查数组：`patrolTime`、`contentDesc`、`handleDesc`、`photoUrl`、`penCode` 等 |

### 4.4 示例

```http
GET /app/distributor/yak/basic?supplierId=1&earTag=E101
```

## 5. 常见失败

| 场景 | `msg` |
| --- | --- |
| 未绑定承销商 | 当前账号未绑定承销商… |
| 订单无权 | 订单不存在或无权查看 |
| 无入场记录 | 未找到该牦牛的入场隔离记录 |
| 非法 statusTab | 订单状态筛选仅支持 ALL、PENDING、COMPLETED |

## 6. 界面参考

`doc/大屏/Snipaste_2026-06-01_21-17-04.jpg`（订单列表、订单详情、牦牛详情）
