openydt-evcharge

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

openydt-evcharge — 电动车充电域 (evcharge)

openydt-evcharge — EV Charging Domain (evcharge)

CRITICAL:开始前 MUST 先用 Read 工具读取
../openydt-shared/SKILL.md
(认证 / profile / 签名 / 状态码 / 限速 / 安全规则)。未读共享基座不要执行任何命令。
CRITICAL:MUST use the Read tool to read
../openydt-shared/SKILL.md
before starting
(Authentication / Profile / Signature / Status Code / Rate Limiting / Security Rules). Do not execute any commands without reading the shared base.

何时用本技能

When to Use This Skill

当用户需要对电动车充电平台做只读查询/统计时使用本技能,例如:列某运营商(代理商)名下的充电站、看某充电站详情、查充电桩及枪口实时状态、统计站点/桩的经营数据(订单数、充电电量、电费/服务费)、查充电订单列表或单笔订单详情。
意图路由:
  • 站点:按运营商账号/手机号列站 →
    station-list
    ;按站点编号看单站(含 operatorName、pileCount) →
    station-detail
  • 充电桩/枪口
    pile-list
    (返回
    guns[]
    枪口状态)。
  • 经营数据/营收/电量
    station-statistics
    (按站点聚合到每根桩)。
  • 订单 → 列表用
    order-list
    (按时间段,可加 plotCodes/pileId/useraccount 过滤);单笔用
    order-detail
    (按 orderNo)。
  • 若要做停车(非充电)的查费/缴费、停车记录/在场、月票/券/设备/黑白名单等,请改用对应停车域技能 [[openydt-billing]] / [[openydt-record]] / [[openydt-park]] / [[openydt-monthticket]] / [[openydt-coupon]] / [[openydt-device]] / [[openydt-list]]。
  • 充电平台若有本技能未覆盖的 cmd,用 [[openydt-api-explorer]] 以
    openydt api <cmd>
    兜底。
Use this skill when users need to perform read-only queries/statistics on the EV charging platform, such as listing charging stations under an operator (agent), viewing details of a charging station, checking real-time status of charging piles and gun ports, statistics on operation data of stations/piles (order count, charging electricity, electricity fee/service fee), and querying charging order lists or single order details.
Intent Routing:
  • For stations: List stations by operator account/mobile number →
    station-list
    ; View single station details (including operatorName, pileCount) by station code →
    station-detail
    .
  • For charging piles/gun ports
    pile-list
    (returns
    guns[]
    gun port status).
  • For operation data/revenue/electricity
    station-statistics
    (aggregated to each pile by station).
  • For orders: Use
    order-list
    for lists (filtered by time period, optional plotCodes/pileId/useraccount); Use
    order-detail
    for single orders (by orderNo).
  • For parking (non-charging) fee inquiry/payment, parking records/presence, monthly tickets/coupons/devices/blacklists, etc., please use the corresponding parking domain skills [[openydt-billing]] / [[openydt-record]] / [[openydt-park]] / [[openydt-monthticket]] / [[openydt-coupon]] / [[openydt-device]] / [[openydt-list]].
  • If the charging platform has commands not covered by this skill, use [[openydt-api-explorer]] with
    openydt api <cmd>
    as a fallback.

可用命令

Available Commands

中文名命令读/写关键参数
获取充电站点列表
openydt evcharge station-list
useraccount / mobile(二选一)、pageNum、pageSize
获取充电站点详情
openydt evcharge station-detail
plotCode(必填)
获取充电桩设备列表
openydt evcharge pile-list
useraccount(必填)、plotCodes(数组,仅 --body)、pageNum、pageSize
获取站点经营数据
openydt evcharge station-statistics
useraccount(必填)、plotCodes(数组)、startDate、endDate(必填,≤30天)、分页
获取充电订单列表
openydt evcharge order-list
startDate、endDate(必填,≤30天)、useraccount/plotCodes/pileId(可选过滤)、分页
获取订单详情
openydt evcharge order-detail
orderNo(必填)
全部为只读命令,无需
--yes
。命令名已去掉冗余域前缀(
station-list
而非
evcharge-station-list
);原始业务码
evchargeStationList
等仍可作 alias 使用。
Chinese NameCommandRead/WriteKey Parameters
Get Charging Station List
openydt evcharge station-list
Readuseraccount / mobile (choose one), pageNum, pageSize
Get Charging Station Details
openydt evcharge station-detail
ReadplotCode (required)
Get Charging Pile Device List
openydt evcharge pile-list
Readuseraccount (required), plotCodes (array, only via --body), pageNum, pageSize
Get Station Operation Data
openydt evcharge station-statistics
Readuseraccount (required), plotCodes (array), startDate, endDate (required, ≤30 days), pagination
Get Charging Order List
openydt evcharge order-list
ReadstartDate, endDate (required, ≤30 days), optional filters: useraccount/plotCodes/pileId, pagination
Get Order Details
openydt evcharge order-detail
ReadorderNo (required)
All commands are read-only, no need for
--yes
. The command names have removed redundant domain prefixes (
station-list
instead of
evcharge-station-list
); Original business codes like
evchargeStationList
can still be used as aliases.

入参约束(来自平台规则)

Parameter Constraints (from Platform Rules)

  • station-list
    useraccount
    mobile
    至少传一个
  • plotCodes
    站点编号数组:只能经
    --body
    传(不是单值 flag);不传或空数组表示不按站点过滤,默认最多 50 个。
  • startDate
    /
    endDate
    :格式
    yyyy-MM-dd HH:mm:ss
    间隔不能超过 30 天(超过回 status=2 / resultCode=909「查询时间范围不能超过 30 天」)。
  • 分页:
    pageSize
    最大 50(超过回业务失败「pageSize 不能大于 50」);命令会按 catalog 文档默认值在缺省时注入
    pageNum=1
    /
    pageSize=10
  • station-list
    : At least one of
    useraccount
    and
    mobile
    must be passed
    .
  • plotCodes
    is an array of station codes: Can only be passed via
    --body
    (not a single-value flag); Not passing or passing an empty array means no filtering by stations, default maximum 50.
  • startDate
    /
    endDate
    : Format
    yyyy-MM-dd HH:mm:ss
    , interval cannot exceed 30 days (exceeding returns status=2 / resultCode=909 "Query time range cannot exceed 30 days").
  • Pagination:
    pageSize
    maximum 50 (exceeding returns business failure "pageSize cannot be greater than 50"); The command will inject default values
    pageNum=1
    /
    pageSize=10
    from the catalog document when missing.

业务流程

Business Process

充电域均为只读查询,典型链路是先定位运营商/站点,再下钻桩与订单,强调用前序响应字段作为后续入参:
  1. 定位站点:用
    station-list
    (传
    --useraccount
    --mobile
    )拿到站点的
    plotCode
    /
    plotName
    ;或已知
    plotCode
    直接
    station-detail
    看详情(返回
    operatorName
    pileCount
    、经纬度、运行状态)。
  2. 下钻充电桩:把第 1 步的
    plotCode
    放进
    pile-list
    --body
    plotCodes
    数组(配
    --useraccount
    ),得到各桩
    pileId
    enabled
    runningStatus
    guns[]
    枪口状态。
  3. 经营统计
    station-statistics
    (useraccount + plotCodes + 时间段)按站点聚合到每根桩,给出
    orderCount
    /
    chargeTotalTimes
    /
    totalPower
    /
    totalAmount
    /
    totalElectricFee
    /
    totalServiceFee
  4. 订单分析
    order-list
    (时间段必填,可用第 1/2 步的
    plotCodes
    pileId
    useraccount
    过滤)列订单并拿到
    orderNo
    ;需要单笔细节再用
    order-detail --order-no <orderNo>
字段传递要点:
station-list
/
station-detail
plotCode
pile-list
/
station-statistics
/
order-list
plotCodes
数组(经 --body);
pile-list
pileId
order-list
--pile-id
过滤;
order-list
orderNo
order-detail
--order-no
All operations in the charging domain are read-only queries. The typical link is first locate the operator/station, then drill down to piles and orders, emphasizing using response fields from previous steps as parameters for subsequent steps:
  1. Locate Station: Use
    station-list
    (pass
    --useraccount
    or
    --mobile
    ) to get
    plotCode
    /
    plotName
    of stations; Or directly use
    station-detail
    to view details if
    plotCode
    is known (returns
    operatorName
    ,
    pileCount
    , longitude/latitude, running status).
  2. Drill Down to Charging Piles: Put the
    plotCode
    from Step 1 into the
    plotCodes
    array in
    --body
    of
    pile-list
    (with
    --useraccount
    ) to get
    pileId
    ,
    enabled
    ,
    runningStatus
    of each pile and
    guns[]
    gun port status.
  3. Operation Statistics:
    station-statistics
    (useraccount + plotCodes + time period) aggregates data to each pile by station, providing
    orderCount
    /
    chargeTotalTimes
    /
    totalPower
    /
    totalAmount
    /
    totalElectricFee
    /
    totalServiceFee
    .
  4. Order Analysis:
    order-list
    (time period required, can be filtered by
    plotCodes
    ,
    pileId
    ,
    useraccount
    from Step 1/2) lists orders and gets
    orderNo
    ; Use
    order-detail --order-no <orderNo>
    for single order details.
Field Transfer Points:
plotCode
from
station-list
/
station-detail
plotCodes
array in
pile-list
/
station-statistics
/
order-list
(via --body);
pileId
from
pile-list
--pile-id
filter in
order-list
;
orderNo
from
order-list
--order-no
in
order-detail
.

响应字段/枚举速查(prod 实测,与对接文档有出入)

Quick Reference for Response Fields/Enumerations (prod actual measurement, inconsistent with docking document)

⚠️ 以下为正式环境实测结果;对接文档写的单一
orderStatus
英文枚举(PAID/CHARGING…)在 prod 未出现。以平台实测为准;若平台后续澄清,以平台为准。
  • 订单(
    order-list
    /
    order-detail
    )有两个状态维度
    • chargeStatus
      /
      chargeStatusName
      —— 充电状态:
      9002
      =充电中,
      9003
      =已完成。
    • orderState
      /
      orderStatusName
      —— 订单状态:
      1
      =下单,
      3
      =已支付。
    • 金额字段(
      totalAmount
      /
      electricFee
      /
      serviceFee
      )单位「元」,电量
      chargingPower
      单位「kWh」,
      chargingDuration
      形如「12分」「1分12秒」。
  • 充电桩(
    pile-list
    ):
    enabled
    0停用/1启用;桩
    runningStatus
    (原值)0运行/1离线;
    plotCode
    为所属站点;
    guns[].status
    实测 0=离线 / 2=空闲 / 4=已插枪(对接文档仅给 2=空闲)。
  • 站点经营(
    station-statistics
    ):
    piles[]
    chargeTotalTimes
    (充电次数,文档未列)及 orderCount/totalDuration/totalPower/totalAmount/totalElectricFee/totalServiceFee;recordList 项含
    stationName
  • 站点(
    station-list
    /
    station-detail
    ):
    runningStatus
    1运营中/0已停业;
    station-detail
    另含
    operatorName
    pileCount
    lng
    /
    lat
    region
⚠️ The following are actual measurement results from the production environment; The single
orderStatus
English enumeration (PAID/CHARGING…) written in the docking document does not appear in prod. Follow the actual platform measurement; If the platform clarifies later, follow the platform's instructions.
  • Orders(
    order-list
    /
    order-detail
    ) have two status dimensions:
    • chargeStatus
      /
      chargeStatusName
      —— Charging status:
      9002
      =Charging,
      9003
      =Completed.
    • orderState
      /
      orderStatusName
      —— Order status:
      1
      =Ordered,
      3
      =Paid.
    • Amount fields(
      totalAmount
      /
      electricFee
      /
      serviceFee
      ) are in "Yuan", electricity
      chargingPower
      is in "kWh",
      chargingDuration
      is in the format like "12min" "1min12sec".
  • Charging Piles(
    pile-list
    ):
    enabled
    0=Disabled/1=Enabled; Pile
    runningStatus
    (original value)0=Running/1=Offline;
    plotCode
    is the affiliated station;
    guns[].status
    actual measurement 0=Offline / 2=Idle / 4=Plugged in(docking document only provides 2=Idle).
  • Station Operation(
    station-statistics
    ):
    piles[]
    includes
    chargeTotalTimes
    (charging count, not listed in document) and orderCount/totalDuration/totalPower/totalAmount/totalElectricFee/totalServiceFee; recordList items include
    stationName
    .
  • Stations(
    station-list
    /
    station-detail
    ):
    runningStatus
    1=In Operation/0=Closed;
    station-detail
    additionally includes
    operatorName
    ,
    pileCount
    ,
    lng
    /
    lat
    ,
    region
    .

错误自愈速查

Quick Reference for Error Self-Healing

现象含义恢复动作
resultCode 909「查询时间范围不能超过 30 天」
order-list
/
station-statistics
时间窗 >30 天
收窄
startDate
/
endDate
到 ≤30 天
业务失败「pageSize 不能大于 50」分页超限
--page-size
≤ 50
station-list
报参数错误
useraccount
mobile
都没传
至少给一个
plotCodes
没生效
当成单值 flag 传了
--body '{"plotCodes":["C3CMHJX"]}'
(数组只能经 body)
返回空 / nodata多为时间窗无业务,或在 test 环境查充电(充电数据当前在 prod 验证)换时间窗,或
--env prod
+ 对应 prod 凭据核实,非接口故障
通用 status/resultCode、退出码、限速重试、签名版本见 [[openydt-shared]]。充电复用同一签名鉴权(默认 v2)。
PhenomenonMeaningRecovery Action
resultCode 909 "Query time range cannot exceed 30 days"Time window of
order-list
/
station-statistics
>30 days
Narrow
startDate
/
endDate
to ≤30 days
Business failure "pageSize cannot be greater than 50"Pagination exceeds limitSet
--page-size
≤ 50
station-list
reports parameter error
Neither
useraccount
nor
mobile
is passed
Provide at least one
plotCodes
does not take effect
Passed as a single-value flagUse
--body '{"plotCodes":["C3CMHJX"]}'
(array can only be passed via body)
Returns empty / nodataMostly no business data in the time window, or querying charging in test environment(charging data is currently verified in prod)Change time window, or add
--env prod
and verify with corresponding prod credentials, not an interface failure
General status/resultCode, exit code, rate limiting retry, signature version refer to [[openydt-shared]]. Charging reuses the same signature authentication(default v2).

示例

Examples

充电业务数据目前在 prod 验证(test 环境可能无充电数据);如需查 prod,加
--env prod
并配 prod 凭据。下列为只读命令,安全。样例站点
C3CMHJX
、运营商
DLS001
为实测值。
bash
undefined
Charging business data is currently verified in prod(test environment may have no charging data); To query prod, add
--env prod
and configure prod credentials. The following are read-only commands, safe. Sample station
C3CMHJX
, operator
DLS001
are actual measured values.
bash
undefined

1) 按运营商账号列充电站(二选一:--useraccount 或 --mobile)

1) List charging stations by operator account(choose one: --useraccount or --mobile)

openydt evcharge station-list --useraccount DLS001 --page-size 10
openydt evcharge station-list --useraccount DLS001 --page-size 10

2) 看单站详情(含运营商、桩数、运行状态)

2) View single station details(including operator, pile count, running status)

openydt evcharge station-detail --plot-code C3CMHJX
openydt evcharge station-detail --plot-code C3CMHJX

3) 列站内充电桩与枪口(plotCodes 是数组,必须经 --body)

3) List charging piles and gun ports in the station(plotCodes is array, must be passed via --body)

openydt evcharge pile-list --body '{"useraccount":"DLS001","plotCodes":["C3CMHJX"],"pageNum":1,"pageSize":10}'
openydt evcharge pile-list --body '{"useraccount":"DLS001","plotCodes":["C3CMHJX"],"pageNum":1,"pageSize":10}'

4) 站点经营数据(时间段 ≤30 天)

4) Station operation data(time period ≤30 days)

openydt evcharge station-statistics --body '{"useraccount":"DLS001","plotCodes":["C3CMHJX"],"startDate":"2026-06-01 00:00:00","endDate":"2026-06-18 23:59:59","pageNum":1,"pageSize":10}'
openydt evcharge station-statistics --body '{"useraccount":"DLS001","plotCodes":["C3CMHJX"],"startDate":"2026-06-01 00:00:00","endDate":"2026-06-18 23:59:59","pageNum":1,"pageSize":10}'

5) 充电订单列表(时间段必填,可按站点/桩/运营商过滤),拿到 orderNo

5) Charging order list(time period required, can be filtered by station/pile/operator), get orderNo

openydt evcharge order-list --body '{"plotCodes":["C3CMHJX"],"startDate":"2026-06-01 00:00:00","endDate":"2026-06-18 23:59:59","pageNum":1,"pageSize":10}'
openydt evcharge order-list --body '{"plotCodes":["C3CMHJX"],"startDate":"2026-06-01 00:00:00","endDate":"2026-06-18 23:59:59","pageNum":1,"pageSize":10}'

6) 单笔订单详情(用第 5 步响应里的 orderNo)

6) Single order detail(use orderNo from Step 5 response)

openydt evcharge order-detail --order-no 26061820675194016111704626880659
undefined
openydt evcharge order-detail --order-no 26061820675194016111704626880659
undefined