---
name: charge-order-query-skill
description: 订单门店查询技能 - 按手机号查询共享充电宝租借订单、按经纬度查询附近门店
version: "1.0.0"
author: ""
---

# 订单门店查询 Skill

本 Skill 通过 MCP 工具提供共享充电宝业务的订单查询与门店查询能力。两个工具均返回全中文 key 的字典列表。

## 可用工具

### getOrderInfoByID - 按手机号查询订单

根据手机号查询该用户的所有租借订单。

**参数说明**：

| 参数 | 类型 | 必填 | 说明 |
|------|------|:----:|------|
| phoneNumber | string | ✅ | 手机号，例如 "13800000000" |

**返回值**：`list[dict]`，每个元素为一条订单，字段（全中文 key）如下：

| 字段 | 说明 |
|------|------|
| 订单号 | 订单唯一编号 |
| 用户id | 用户标识 |
| 手机号 | 用户手机号 |
| 设备id | 租借设备标识 |
| 租借位置 | 租借发生门店（可能为空） |
| 租借开始时间 | 开始租借时间 |
| 退还时间 | 归还时间（未归还为空） |
| 持续时间/分钟 | 租借时长（分钟） |
| 归还地址 | 归还网点 |
| 计费 | 计费金额（元） |
| 租借状态 | 租借状态（如：已暂停） |
| 支付方式 | 支付渠道（如：wechat_pay） |

**使用示例**：
- 查询某手机号的订单：调用 `getOrderInfoByID`，传入 `phoneNumber` 参数
- 手机号不存在或为空时返回空列表 `[]`

### getSites - 按经纬度查询附近门店

根据经纬度查询距离最近的 N 个门店，按从近到远排序。

**参数说明**：

| 参数 | 类型 | 必填 | 默认值 | 说明 |
|------|------|:----:|--------|------|
| coordinates | string | ✅ | — | 经纬度，格式为 "经度,纬度"，例如 "116.370503,39.946613" |
| key | int | 否 | 1 | 返回门店数量，取距离最近的 key 个 |

**返回值**：`list[dict]`，按距离升序排列，最多 `key` 个元素。每个元素字段（全中文 key）如下：

| 字段 | 说明 |
|------|------|
| 网点名称 | 门店名称 |
| 状态 | 门店状态（如：正常） |
| 经纬度 | 门店经纬度（"经度,纬度" 格式） |
| 省份 | 所在省 |
| 城市 | 所在市 |
| 区/县 | 所在区/县 |
| 详细地址 | 详细地址 |
| 经度 | 经度数值 |
| 纬度 | 纬度数值 |
| 门店类型 | 门店类型（如：直营店） |
| 开业时间 | 开业日期 |
| 营业时间 | 营业时段 |
| 评分 | 门店评分 |
| 联系电话 | 联系电话 |
| 距离/公里 | 与目标坐标的距离（公里，保留 3 位小数） |

**使用示例**：
- 查询最近 1 家门店：调用 `getSites`，只传 `coordinates`
- 查询最近 3 家门店：调用 `getSites`，传 `coordinates` 和 `key: 3`

## 注意事项

- 该 MCP Server 通过 SSE 远程连接，无需额外认证
- 坐标格式非法（非 "经度,纬度"）时 `getSites` 返回空列表 `[]`
- `getSites` 的 `key` 传小于 1 的值时按 1 处理
- 返回数据字段均为中文 key，向用户展示时直接呈现中文含义即可
- 手机号、经纬度等参数应优先从用户输入中提取；缺失时向用户询问确认
