openydt-park — 车场信息域
CRITICAL:开始前 MUST 先用 Read 工具读取
../openydt-shared/SKILL.md,掌握认证 / profile / 签名 / 状态码 / 限速 / 安全规则后再执行任何openydt park命令。
何时用本技能
当用户的诉求落在「停车场静态/动态信息」上时使用本域,例如:
- 查停车场:列出授权商所有车场、看单个车场的基本信息 / 系统信息 / 区域 / 通道 / 云车场设备。
- 查车位:单个车场空车位、区域内(按经纬度半径)空车位、单个车场实时剩余车位、剩余车位 + 免费时长。
- 查费 / 计费:根据车场编码取收费信息(查费)、对某收费标准做其他车型计费测算。
- 车辆相关:车辆免费停车信息、车辆屏显及语音、车辆优惠券(电子券)记录。
- 授权 / 维护:取该账号下所有授权车场编码;设置(上报)车场实时车位(写操作)。
意图路由:
- 涉及「订单/账单/缴费/月票」→ 用
openydt trade(见 [[openydt-billing]])。 - 涉及「在场车/进出场/锁车/放行」→ 用
openydt parking(见 [[openydt-record]])。 - 涉及「黑/白名单、访客」→ 用
openydt blacklist/openydt redlist/openydt visitor(见 [[openydt-list]])。 - 涉及「电子券发放/核销」→ 用
openydt coupon(见 [[openydt-coupon]])。 - 涉及「设备开/关闸/抓拍/屏显下发」→ 用
openydt device(见 [[openydt-device]])。 - 涉及「月票/访客/黑名单月卡」→ 用
openydt ticket(见 [[openydt-monthticket]])。 - 「车场本身的属性、车位、车场维度查费」→ 留在本域
openydt park。
本域以查询为主、无强依赖链:各查询命令大多只需要 parkCode(停车场编号),可独立调用。仅 get-park-ydt-other-car-type-charge-info 需要先调用查费命令拿到结果对象后回填(见业务流程)。
可用命令
<use> 为命令真实 kebab 名,调用形如 openydt park <use>。所有命令支持 --body '<json>' 直接传完整请求体;列出的字段也提供同名 flag(flag 会合并覆盖 --body)。
| 中文名 | 命令 | 读/写 | 关键参数 |
|---|---|---|---|
| 获取授权商所有停车场信息 | openydt park get-park-list |
读 | (无) |
| 获取该账号下所有授权车场编码 | openydt park get-auth-park-codes |
读 | (无) |
| 获取停车场全部信息 | openydt park get-all-park-info |
读 | --park-code、--update-time-from、--update-time-to(均可选) |
| 获取单个停车场基本信息 | openydt park get-park-info |
读 | --park-code(可选) |
| 获取停车场系统信息(VEMS/云车场) | openydt park get-park-system-info |
读 | --park-code(可选) |
| 获取车场区域信息 | openydt park get-park-area-info |
读 | --park-code* |
| 获取云停车场通道信息 | openydt park get-channel-info |
读 | --park-code* |
| 获取云停车场设备信息 | openydt park get-cloud-park-device-info |
读 | --park-code* |
| 获取单个停车场空车位信息 | openydt park get-ept |
读 | --park-code* |
| 获取区域内所有停车场空车位信息 | openydt park get-area-ept |
读 | --longitude、--latitude、--radius* |
| 获取单个停车场实时车位信息 | openydt park get-park-remain-carport |
读 | --park-code*、--area-code、--area-id |
| 获取停车场剩余车位和免费时长 | openydt park get-park-remain-carport-and-free-time |
读 | parkCodes*(车场编号数组,用 --body) |
| 根据车场编码获取收费信息(查费) | openydt park get-park-ydt-charge |
读 | --park-code*、--start-date-time |
| 其他车型计费测算 | openydt park get-park-ydt-other-car-type-charge-info |
读 | --park-code、--standard-seq、--car-type、--start-time、parkYdtChargeVo*(用 --body) |
| 获取车辆免费停车信息 | openydt park get-car-free-parking-info |
读 | --park-code、--parking-code、--car-code、--vip-type、--is-support-special-charge-rule、--is-support-trigger-event |
| 获取车辆屏显及语音 | openydt park get-display-voice-by-car-code |
读 | --park-code、--car-code、--vip-type、channelCodeList(用 --body)、--feature-pass-time、--whether-charge |
| 获取车辆优惠券信息列表 | openydt park get-car-coupon-record |
读 | --page-num、--page-size、carPlateList*(车牌列表,用 --body) |
| 设置停车场实时车位信息 | openydt park set-park-remain-carport |
写(需 --yes) |
--park-code、remainCarportList(区域车位数组,用 --body) |
备注:标
*为必填。carPlateList/channelCodeList/parkCodes/parkYdtChargeVo/remainCarportList等数组/对象型字段没有独立 flag,需通过--bodyJSON 传入。适用场景:标注「云停车场」的命令(区域、通道、云车场设备、查费、计费测算、设置车位)仅对云车场有效,其余 VEMS 传统车场与云车场通用。
本表未列、但属 park 域的可调用接口(
getParkEquipmentInfo/getCarOwnerInfo/getMonthTicketAppointmentPark),用openydt api <cmd> --body '{...}'调用;详见 [[openydt-api-explorer]]。
业务流程
查费 → 其他车型计费测算(唯一需要回填上一步响应的链路)
- 先查费:
openydt park get-park-ydt-charge --park-code <parkCode>,从响应中拿到查费信息对象(即parkYdtChargeVo,含chargeTypeSeq/parkSysType/parkYdtChargeStandardVoList等,其中每个收费标准带有计费规则 IDstandardSeq与车辆类型carType)。 - 再测算:把上一步整个查费返回结果作为
parkYdtChargeVo字段、并指定要测算的standardSeq(收费标准 ID)、carType(计费规则的车辆类型,即「特殊车辆类型 ID」)、startTime(计费开始时间),调用:openydt park get-park-ydt-other-car-type-charge-info --body '{...}'- 强调:
standardSeq、carType、parkYdtChargeVo必须取自上一步get-park-ydt-charge的响应字段,不可臆造。
- 强调:
get-park-ydt-charge 返回的是车场计费组 parkYdtChargeStandardVoList(一个车型可挂多套标准),不是计费规则原文。每套标准里 standardSeq = 计费规则 ID(测算回填的就是它),chargeMap 是按时长档(1/2/3/4/8 小时)的费用预览估算(value.fee 单位元,以当前时刻试算)。要精确算某车某时段费用,用 trade 域实时查费([[openydt-billing]] 的 get-park-fee),别拿 chargeMap 当精确账单。
完整字段解读与「转人话」呈现范例见 references/openydt-park-charge.md
其余命令均为独立查询:拿到 parkCode(可先用 get-park-list / get-auth-park-codes 获取授权车场编码)后即可直接调用对应查询。
示例
- 列出账号下所有授权车场(无参数):
openydt park get-park-list
- 查某车场的实时剩余车位(parkCode 为文档化测试值,仅 test):
openydt park get-park-remain-carport --park-code 1ZS7H5PQH9
- 按经纬度 + 半径查区域内所有车场空车位(示例坐标,按实际位置替换):
openydt park get-area-ept --longitude 113.158978 --latitude 23.046084 --radius 200
- 写操作示例——设置车场实时车位(先
--dry-run预览,确认无误再--yes实发;parkCode 为文档化测试值,仅 test):
# 第一步:预览签名请求(不实际发送)
openydt park set-park-remain-carport --dry-run --body '{
"parkCode": "1ZS7H5PQH9",
"remainCarportList": [
{"areaId": 1, "totalRemain": 50, "tempRemain": 30, "fixedRemain": 20}
]
}'
# 第二步:确认无误后加 --yes 实发
openydt park set-park-remain-carport --yes --body '{
"parkCode": "1ZS7H5PQH9",
"remainCarportList": [
{"areaId": 1, "totalRemain": 50, "tempRemain": 30, "fixedRemain": 20}
]
}'