# MCP 角色体系参考（2026-07-30 补充）

## 关键发现

`下单人` 和 `销售员` 在 MCP 中不是普通字段（field），而是**工作项角色（role）**。

原因：MQL `SELECT 下单人` → `attr label not found`；但 Excel 导出第5列明确显示了 `下单人` = 销售员名。

## 获取路径

### ① 查角色 ID

```python
list_workitem_role_config(
    project_key='6593cd71471290e3cc6be6e6',
    work_item_type='662612aea6bb7089fea044ef',
    role_query='下单人'
)
# → role_00a9b7 = "下单人"
# → role_7dd6e0 = "销售员" （也可用 role_query='销售员'）
```

### ② 查单个订单的角色成员

```python
get_workitem_brief(
    fields=['role_7dd6e0'],
    work_item_id='7059668451'
)
# 返回 role_members: [{key: "role_7dd6e0", name: "销售员", members: [{name: "陈溪子", email: "chenxizi@biori.com"}]}]
```

### ③ 批量汇总走 Excel 导出

`get_workitem_brief` 需逐条调用（7月1431条=1431次API），不实用。
**批量 KPI 走飞书导出 Excel** → openpyxl 解析 `下单人` 列 → 按销售员汇总 → kpi_progress.json。

## 各类型已有角色

| 工作项类型 | type_key | 关键角色 |
|-----------|----------|---------|
| 销售订单 | 662612aea6bb7089fea044ef | 下单人(role_00a9b7)、销售员(role_7dd6e0)、技术支持、客户-所属人、客户-协作人 |
| 活动 | 65ae1e5d44338dbe7c39a29a | 创建者(owner) 即活动执行人 |
