3506 lines
96 KiB
YAML
3506 lines
96 KiB
YAML
openapi: 3.0.3
|
||
info:
|
||
title: 采购样品履约节点 API
|
||
version: 1.0.0
|
||
description: 客户范围、节点资格、版本与幂等由服务端校验;购买事实与资金结果分开保存。
|
||
security:
|
||
- bearerAuth: []
|
||
paths:
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/fulfillment:
|
||
get:
|
||
summary: 读取采购履约与货款结果
|
||
description: 权限 platform:overseas-business:purchase:list;平台主体。真实已发生的购买超预算或缺汇率时保留事实并返回 purchase.issue,不伪造扣款成功。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 统一业务响应,须检查 code;成功不等于资金已扣款
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Response'
|
||
'401':
|
||
description: 未认证
|
||
'403':
|
||
description: 主体或动作权限不允许
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/purchase:
|
||
post:
|
||
summary: 登记真实购买并核定样品货款
|
||
description: 权限 platform:overseas-business:purchase:buy;平台主体。真实已发生的购买超预算或缺汇率时保留事实并返回 purchase.issue,不伪造扣款成功。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Purchase'
|
||
responses:
|
||
'200':
|
||
description: 统一业务响应,须检查 code;成功不等于资金已扣款
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Response'
|
||
'401':
|
||
description: 未认证
|
||
'403':
|
||
description: 主体或动作权限不允许
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/purchase/confirm:
|
||
post:
|
||
summary: 补齐授权或汇率后核定原购买
|
||
description: 权限 platform:overseas-business:purchase:buy;平台主体。真实已发生的购买超预算或缺汇率时保留事实并返回 purchase.issue,不伪造扣款成功。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Command'
|
||
responses:
|
||
'200':
|
||
description: 统一业务响应,须检查 code;成功不等于资金已扣款
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Response'
|
||
'401':
|
||
description: 未认证
|
||
'403':
|
||
description: 主体或动作权限不允许
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/budget-authorizations:
|
||
post:
|
||
summary: 核验客户预算上限授权
|
||
description: 权限 platform:overseas-business:purchase:review;平台主体。真实已发生的购买超预算或缺汇率时保留事实并返回 purchase.issue,不伪造扣款成功。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Budget'
|
||
responses:
|
||
'200':
|
||
description: 统一业务响应,须检查 code;成功不等于资金已扣款
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Response'
|
||
'401':
|
||
description: 未认证
|
||
'403':
|
||
description: 主体或动作权限不允许
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/planned-warehouse:
|
||
post:
|
||
summary: 首次实收前选择计划采购仓
|
||
description: 权限 platform:overseas-business:purchase:review;平台主体。真实已发生的购买超预算或缺汇率时保留事实并返回 purchase.issue,不伪造扣款成功。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Warehouse'
|
||
responses:
|
||
'200':
|
||
description: 统一业务响应,须检查 code;成功不等于资金已扣款
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Response'
|
||
'401':
|
||
description: 未认证
|
||
'403':
|
||
description: 主体或动作权限不允许
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/cancel:
|
||
post:
|
||
summary: 购买前取消采购订单
|
||
description: 权限 platform:overseas-business:purchase:cancel;平台主体。真实已发生的购买超预算或缺汇率时保留事实并返回 purchase.issue,不伪造扣款成功。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Command'
|
||
responses:
|
||
'200':
|
||
description: 统一业务响应,须检查 code;成功不等于资金已扣款
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Response'
|
||
'401':
|
||
description: 未认证
|
||
'403':
|
||
description: 主体或动作权限不允许
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/physical:
|
||
get:
|
||
summary: 查询采购实收与当前装箱版本
|
||
description: 权限 platform:overseas-business:purchase:list;平台身份、订单范围、版本、幂等及节点准入均由服务端复验。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 检查业务code;返回最新采购实收及装箱快照
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/PhysicalResponse'
|
||
'403':
|
||
description: 无动作权限
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/overseas-receipts:
|
||
post:
|
||
summary: 登记海外分次实收
|
||
description: 权限 platform:overseas-business:purchase:receive-overseas;平台身份、订单范围、版本、幂等及节点准入均由服务端复验。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 检查业务code;返回最新采购实收及装箱快照
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/PhysicalResponse'
|
||
'403':
|
||
description: 无动作权限
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Receipt'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/domestic-receipts:
|
||
post:
|
||
summary: 按原交寄箱登记国内实收
|
||
description: 权限 platform:overseas-business:purchase:receive-domestic;平台身份、订单范围、版本、幂等及节点准入均由服务端复验。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 检查业务code;返回最新采购实收及装箱快照
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/PhysicalResponse'
|
||
'403':
|
||
description: 无动作权限
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Receipt'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/overseas-receipts/complete:
|
||
post:
|
||
summary: 确认海外收货完成
|
||
description: 权限 platform:overseas-business:purchase:receive-overseas;平台身份、订单范围、版本、幂等及节点准入均由服务端复验。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 检查业务code;返回最新采购实收及装箱快照
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/PhysicalResponse'
|
||
'403':
|
||
description: 无动作权限
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/FinishReceipt'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/domestic-receipts/complete:
|
||
post:
|
||
summary: 确认国内收货完成
|
||
description: 权限 platform:overseas-business:purchase:receive-domestic;平台身份、订单范围、版本、幂等及节点准入均由服务端复验。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 检查业务code;返回最新采购实收及装箱快照
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/PhysicalResponse'
|
||
'403':
|
||
description: 无动作权限
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/FinishReceipt'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/dispositions:
|
||
post:
|
||
summary: 确认单内差异处置
|
||
description: 权限 platform:overseas-business:purchase:manage;平台身份、订单范围、版本、幂等及节点准入均由服务端复验。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 检查业务code;返回最新采购实收及装箱快照
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/PhysicalResponse'
|
||
'403':
|
||
description: 无动作权限
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Disposition'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/packing:
|
||
post:
|
||
summary: 保存新的装箱清单版本
|
||
description: 权限 platform:overseas-business:purchase:pack;平台身份、订单范围、版本、幂等及节点准入均由服务端复验。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 检查业务code;返回最新采购实收及装箱快照
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/PhysicalResponse'
|
||
'403':
|
||
description: 无动作权限
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Packing'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/packing/confirm:
|
||
post:
|
||
summary: 确认整批装箱
|
||
description: 权限 platform:overseas-business:purchase:pack;平台身份、订单范围、版本、幂等及节点准入均由服务端复验。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 检查业务code;返回最新采购实收及装箱快照
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/PhysicalResponse'
|
||
'403':
|
||
description: 无动作权限
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/ConfirmPacking'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/packing/withdraw:
|
||
post:
|
||
summary: 撤回尚未交寄的确认清单
|
||
description: 权限 platform:overseas-business:purchase:manage;平台身份、订单范围、版本、幂等及节点准入均由服务端复验。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 检查业务code;返回最新采购实收及装箱快照
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/PhysicalResponse'
|
||
'403':
|
||
description: 无动作权限
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Command'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/receipts/{receiptId}/correct:
|
||
post:
|
||
summary: 保留原记录并受控更正实收
|
||
description: 权限 platform:overseas-business:purchase:manage;平台身份、订单范围、版本、幂等及节点准入均由服务端复验。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
- name: receiptId
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 检查业务code;返回最新采购实收及装箱快照
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/PhysicalResponse'
|
||
'403':
|
||
description: 无动作权限
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Correction'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/dispositions/{dispositionId}/revoke:
|
||
post:
|
||
summary: 凭证支持的差异处置更正
|
||
description: 权限 platform:overseas-business:purchase:manage;平台身份、订单范围、版本、幂等及节点准入均由服务端复验。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
- name: dispositionId
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 检查业务code;返回最新采购实收及装箱快照
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/PhysicalResponse'
|
||
'403':
|
||
description: 无动作权限
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/RevokeDisposition'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/transport:
|
||
get:
|
||
summary: 读取两段面单及实际交寄事实
|
||
description: 权限 platform:overseas-business:purchase:list。平台内部资料,不直接对客输出。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 业务结果,须检查code;资金处理中不代表已完成
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/TransportResponse'
|
||
'400':
|
||
description: 字段、来源或数量不合法
|
||
'403':
|
||
description: 主体或动作权限不足
|
||
'409':
|
||
description: 版本冲突、重复发运或节点尚未满足
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/labels:
|
||
post:
|
||
summary: 保存本段全批面单新版本
|
||
description: 权限 platform:overseas-business:purchase:label。清单、文件、页码与全部可寄原箱关联;国际寄件取实际仓主档。国内改最终收件信息须有本单EXCEPTION客户确认凭证。新版本不沿用旧贴单。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 业务结果,须检查code;资金处理中不代表已完成
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/TransportResponse'
|
||
'400':
|
||
description: 字段、来源或数量不合法
|
||
'403':
|
||
description: 主体或动作权限不足
|
||
'409':
|
||
description: 版本冲突、重复发运或节点尚未满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Labels'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/international-estimate:
|
||
post:
|
||
summary: 核对国际预估并申请冻结或释放
|
||
description: 权限 platform:overseas-business:purchase:estimate。仅CNY。同金额可显式沿用原FROZEN/ZERO;变价先申请释放,等待成功后以新请求确认新金额,未决不得交寄。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 业务结果,须检查code;资金处理中不代表已完成
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/TransportResponse'
|
||
'400':
|
||
description: 字段、来源或数量不合法
|
||
'403':
|
||
description: 主体或动作权限不足
|
||
'409':
|
||
description: 版本冲突、重复发运或节点尚未满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Estimate'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/labels/apply:
|
||
post:
|
||
summary: 逐箱登记真实贴单
|
||
description: 权限 platform:overseas-business:purchase:apply-label。仅海外段;可以分次贴单,不能重复记录相同版本相同箱。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 业务结果,须检查code;资金处理中不代表已完成
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/TransportResponse'
|
||
'400':
|
||
description: 字段、来源或数量不合法
|
||
'403':
|
||
description: 主体或动作权限不足
|
||
'409':
|
||
description: 版本冲突、重复发运或节点尚未满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/ApplyLabels'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/domestic-repack:
|
||
post:
|
||
summary: 国内原箱一对一换包装
|
||
description: 权限 platform:overseas-business:purchase:receive-domestic。不改变来源及件数,不拆箱合箱;使旧国内面单失效,并要求重新核对国内费用。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 业务结果,须检查code;资金处理中不代表已完成
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/TransportResponse'
|
||
'400':
|
||
description: 字段、来源或数量不合法
|
||
'403':
|
||
description: 主体或动作权限不足
|
||
'409':
|
||
description: 版本冲突、重复发运或节点尚未满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Repack'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/overseas-shipment:
|
||
post:
|
||
summary: 确认整批海外实际交寄
|
||
description: 权限 platform:overseas-business:purchase:ship-overseas。leg固定OVERSEAS;全部箱、当前面单、逐箱贴单、样品实扣关联、唯一有效预估均须通过。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 业务结果,须检查code;资金处理中不代表已完成
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/TransportResponse'
|
||
'400':
|
||
description: 字段、来源或数量不合法
|
||
'403':
|
||
description: 主体或动作权限不足
|
||
'409':
|
||
description: 版本冲突、重复发运或节点尚未满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Ship'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/customer-shipment:
|
||
post:
|
||
summary: 确认整批国内寄客户
|
||
description: 权限 platform:overseas-business:purchase:ship-customer。leg固定DOMESTIC;核费及全部资金完成才可交寄。每单每段最多一次,重复不同请求不能再发货。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 业务结果,须检查code;资金处理中不代表已完成
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/TransportResponse'
|
||
'400':
|
||
description: 字段、来源或数量不合法
|
||
'403':
|
||
description: 主体或动作权限不足
|
||
'409':
|
||
description: 版本冲突、重复发运或节点尚未满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Ship'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/files/{category}:
|
||
post:
|
||
summary: 上传采购内部附件
|
||
description: 按类别独立授权:PURCHASE=buy;BUDGET=review;LABEL=label;EXCEPTION=manage;RECEIPT=receive-overseas或receive-domestic;VOUCHER=charge或finance-adjust。新增四类只允许PDF/JPG/PNG,最大10MiB。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
- name: category
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
enum:
|
||
- RECEIPT
|
||
- VOUCHER
|
||
- LABEL
|
||
- PURCHASE
|
||
- BUDGET
|
||
- EXCEPTION
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
multipart/form-data:
|
||
schema:
|
||
type: object
|
||
required:
|
||
- file
|
||
properties:
|
||
file:
|
||
type: string
|
||
format: binary
|
||
responses:
|
||
'200':
|
||
description: 本单附件元数据业务响应
|
||
'403':
|
||
description: 主体或类别权限不足
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/files/{fileId}/content:
|
||
get:
|
||
summary: 读取本采购单内部文件
|
||
description: 权限 platform:overseas-business:purchase:list;校验客户、订单、分类与文件归属。附件下载,Cache-Control no-store。客户入口不开放这些内部文件。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
- name: fileId
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 文件内容
|
||
content:
|
||
application/octet-stream:
|
||
schema:
|
||
type: string
|
||
format: binary
|
||
'400':
|
||
description: 文件不属于本单
|
||
'403':
|
||
description: 无平台采购只读权限
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/charges:
|
||
get:
|
||
summary: 读取核费与资金处理结果
|
||
description: 权限 platform:overseas-business:purchase:list。仅平台使用,内部费用及诊断字段不得直接透传客户。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 业务结果,须检查code
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/ChargesResponse'
|
||
'400':
|
||
description: 参数或本单费用归属错误
|
||
'403':
|
||
description: 主体或动作权限不足
|
||
'409':
|
||
description: 版本冲突、原请求未决或节点未满足
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/fee-corrections:
|
||
get:
|
||
summary: 读取费用链更正历史
|
||
description: 权限 platform:overseas-business:purchase:list。不可变目标、原汇率、确认时净额及产生的逐笔差额或退款业务号。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 业务结果,须检查code
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/FeeCorrectionsResponse'
|
||
'400':
|
||
description: 参数或本单费用归属错误
|
||
'403':
|
||
description: 主体或动作权限不足
|
||
'409':
|
||
description: 版本冲突、原请求未决或节点未满足
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/charges/confirm:
|
||
post:
|
||
summary: 确认国内整单费用
|
||
description: 权限 platform:overseas-business:purchase:charge。须国内实收完成。三项固定费用明确核定,其他不适用不产生虚构收费行;重核引用原feeId不再次扣款,不可省略已有有效实际费用。确认不等于资金成功。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 业务结果,须检查code
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/ChargesResponse'
|
||
'400':
|
||
description: 参数或本单费用归属错误
|
||
'403':
|
||
description: 主体或动作权限不足
|
||
'409':
|
||
description: 版本冲突、原请求未决或节点未满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/ConfirmCharges'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/fees/{feeId}/retry:
|
||
post:
|
||
summary: 重试已明确失败的费用请求
|
||
description: 样品货款要求buy,预估要求estimate,实际国际运费/关税/国内运费/其他要求charge,调整/退款要求finance-adjust;未知结果拒绝新请求,已冻结仅重试结算。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
- name: feeId
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 业务结果,须检查code
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/ChargesResponse'
|
||
'400':
|
||
description: 参数或本单费用归属错误
|
||
'403':
|
||
description: 主体或动作权限不足
|
||
'409':
|
||
description: 版本冲突、原请求未决或节点未满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Command'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/fees/{feeId}/terminate:
|
||
post:
|
||
summary: 终止明确失败的费用版本
|
||
description: 权限 platform:overseas-business:purchase:finance-adjust。终止旧版本重试资格;有效冻结必须释放成功后才可替代,重新核对整单费用。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
- name: feeId
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 业务结果,须检查code
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/ChargesResponse'
|
||
'400':
|
||
description: 参数或本单费用归属错误
|
||
'403':
|
||
description: 主体或动作权限不足
|
||
'409':
|
||
description: 版本冲突、原请求未决或节点未满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Command'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/fees/{feeId}/correct-target:
|
||
post:
|
||
summary: 按正确原币总额更正费用链
|
||
description: 权限 platform:overseas-business:purchase:finance-adjust。选择原实际费用根。沿用原汇率计算正确CNY总额,以成功原扣+成功差额-成功退款求净额;正差额新扣、负差额逐笔关联退款,未决旧调整阻断。CNY差额单自身汇率为1,目标原币汇率保留在更正快照,不因分差反推原币。已寄客户不回退履约。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
- name: feeId
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 业务结果,须检查code
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/FeeCorrectionResponse'
|
||
'400':
|
||
description: 参数或本单费用归属错误
|
||
'403':
|
||
description: 主体或动作权限不足
|
||
'409':
|
||
description: 版本冲突、原请求未决或节点未满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/CorrectFeeTarget'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/fees/additional:
|
||
post:
|
||
summary: 登记独立新发生费用
|
||
description: 权限 platform:overseas-business:purchase:finance-adjust。仅已发生购买订单;按新费用真实业务日冻结汇率,以独立费用号发起扣款,核定入口为 FINANCIAL。保留原费用;普通核费首次确认后只引用已有版本。未交寄订单需重新核费,已交寄事实不回退。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 业务结果,须检查code
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/FeeVersionResponse'
|
||
'400':
|
||
description: 参数或本单费用归属错误
|
||
'403':
|
||
description: 主体或动作权限不足
|
||
'409':
|
||
description: 版本冲突、原请求未决或节点未满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/AdditionalFee'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/fees/{feeId}/replace-failed:
|
||
post:
|
||
summary: 重新核定已终止且未实扣的实际费用
|
||
description: 权限 platform:overseas-business:purchase:finance-adjust。仅允许最新原实际费用已明确失败、终止重试且有效冻结已释放后替代;拒绝已实扣、未决或已有后续版本。沿用原币、业务日和汇率快照,使用新资金业务身份;货款仍核验客户预算。以更正记录关联旧版本与新实际费用,零元不发起资金请求。原购买与履约事实不回退。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
- name: feeId
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 业务结果,须检查code
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/FeeCorrectionResponse'
|
||
'400':
|
||
description: 参数或本单费用归属错误
|
||
'403':
|
||
description: 主体或动作权限不足
|
||
'409':
|
||
description: 版本冲突、原请求未决或节点未满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/CorrectFeeTarget'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/fees/{feeId}/refund:
|
||
post:
|
||
summary: 关联原实扣退回客户钱包
|
||
description: 权限 platform:overseas-business:purchase:finance-adjust。amount为正额CNY。仅本单已结算消费可退;整链有未完成调整/退款时不接受新请求,重放原请求仍返回原退款。累计金额由Finance原子封顶,不走外部支付。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
- name: feeId
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 业务结果,须检查code
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/FeeVersionResponse'
|
||
'400':
|
||
description: 参数或本单费用归属错误
|
||
'403':
|
||
description: 主体或动作权限不足
|
||
'409':
|
||
description: 版本冲突、原请求未决或节点未满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/RefundFee'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/controls:
|
||
get:
|
||
summary: 读取异常、更正与剩余货物来源
|
||
description: 权限 platform:overseas-business:purchase:list。内部记录,剩余来源用于逐项填写最终去向。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 统一业务响应,须检查code
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/ControlResponse'
|
||
'400':
|
||
description: 来源、证据或数量不匹配
|
||
'403':
|
||
description: 无当前操作权限
|
||
'409':
|
||
description: 版本、实物或资金前置不满足
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/control-notes:
|
||
post:
|
||
summary: 追加事实更正说明或阻断异常
|
||
description: 权限 platform:overseas-business:purchase:manage。校验本单事实和EXCEPTION凭证;已交寄允许追加说明,不改原货物、运单或状态。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 统一业务响应,须检查code
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/ControlResponse'
|
||
'400':
|
||
description: 来源、证据或数量不匹配
|
||
'403':
|
||
description: 无当前操作权限
|
||
'409':
|
||
description: 版本、实物或资金前置不满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/ControlNote'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/control-notes/{noteId}/resolve:
|
||
post:
|
||
summary: 有凭证解除采购阻断异常
|
||
description: 权限 platform:overseas-business:purchase:manage。不覆盖原说明,记录处理人和证据;不改变资金结果。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
- name: noteId
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 统一业务响应,须检查code
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/ControlResponse'
|
||
'400':
|
||
description: 来源、证据或数量不匹配
|
||
'403':
|
||
description: 无当前操作权限
|
||
'409':
|
||
description: 版本、实物或资金前置不满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/ResolveControl'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/actual-warehouse/correct:
|
||
post:
|
||
summary: 受控更正实际收货仓
|
||
description: 权限 platform:overseas-business:purchase:manage。未有后续箱明细时更新有效实际仓并留原快照及原实收;已有后续实物或已结束时仅追加阻断说明,不重归属货物。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 统一业务响应,须检查code
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/ControlResponse'
|
||
'400':
|
||
description: 来源、证据或数量不匹配
|
||
'403':
|
||
description: 无当前操作权限
|
||
'409':
|
||
description: 版本、实物或资金前置不满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/CorrectWarehouse'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/exception-close:
|
||
post:
|
||
summary: 实物资金收口后异常关闭
|
||
description: 权限 platform:overseas-business:purchase:manage。购买后逐来源核平剩余货物最终去向,并提供客户停止履约证据、财务结论及对客摘要。全部已知资金与费用来源处理结束且无阻断异常才可关闭;不退款、不生成退货或零数量发运。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 统一业务响应,须检查code
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/ControlResponse'
|
||
'400':
|
||
description: 来源、证据或数量不匹配
|
||
'403':
|
||
description: 无当前操作权限
|
||
'409':
|
||
description: 版本、实物或资金前置不满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/ExceptionClose'
|
||
/api/platform/v1/last-leg/overseas-procurements/{orderNo}/fees/{feeId}/release-estimate:
|
||
post:
|
||
summary: 释放不再使用的预估冻结
|
||
description: 权限 platform:overseas-business:purchase:finance-adjust。只作用于本单有效预估;未决或已实际结算不允许释放。供异常处理使用,不能将实际消费当冻结释放。
|
||
parameters:
|
||
- name: orderNo
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
- name: customerId
|
||
in: query
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
- name: feeId
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
responses:
|
||
'200':
|
||
description: 统一业务响应,须检查code
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/ChargesResponse'
|
||
'400':
|
||
description: 来源、证据或数量不匹配
|
||
'403':
|
||
description: 无当前操作权限
|
||
'409':
|
||
description: 版本、实物或资金前置不满足
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/json:
|
||
schema:
|
||
$ref: '#/components/schemas/Command'
|
||
components:
|
||
securitySchemes:
|
||
bearerAuth:
|
||
type: http
|
||
scheme: bearer
|
||
bearerFormat: JWT
|
||
schemas:
|
||
Command:
|
||
type: object
|
||
required:
|
||
- version
|
||
- idempotencyKey
|
||
- reason
|
||
properties:
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
idempotencyKey:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
reason:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 1000
|
||
Purchase:
|
||
allOf:
|
||
- $ref: '#/components/schemas/Command'
|
||
- type: object
|
||
required:
|
||
- productName
|
||
- quantity
|
||
- amount
|
||
- currency
|
||
- purchasedAt
|
||
- estimatedArrivalAt
|
||
- voucherFileId
|
||
properties:
|
||
productName:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 255
|
||
specification:
|
||
type: string
|
||
nullable: true
|
||
maxLength: 500
|
||
quantity:
|
||
type: integer
|
||
format: int64
|
||
minimum: 1
|
||
amount:
|
||
type: number
|
||
minimum: 0
|
||
multipleOf: 0.01
|
||
currency:
|
||
type: string
|
||
enum:
|
||
- CNY
|
||
- USD
|
||
purchasedAt:
|
||
type: string
|
||
format: date-time
|
||
description: 真实购买时间,不得在未来
|
||
estimatedArrivalAt:
|
||
type: string
|
||
format: date-time
|
||
voucherFileId:
|
||
type: string
|
||
description: 必须属于本订单的购买或费用凭证
|
||
Budget:
|
||
allOf:
|
||
- $ref: '#/components/schemas/Command'
|
||
- type: object
|
||
required:
|
||
- amount
|
||
- currency
|
||
- voucherFileId
|
||
properties:
|
||
amount:
|
||
type: number
|
||
minimum: 0
|
||
multipleOf: 0.01
|
||
description: 新授权货款总上限
|
||
currency:
|
||
type: string
|
||
enum:
|
||
- CNY
|
||
- USD
|
||
voucherFileId:
|
||
type: string
|
||
description: 本订单客户书面或聊天确认凭证
|
||
Warehouse:
|
||
allOf:
|
||
- $ref: '#/components/schemas/Command'
|
||
- type: object
|
||
required:
|
||
- warehouseId
|
||
properties:
|
||
warehouseId:
|
||
type: string
|
||
description: 国内权威目录的有效公共海外收货仓引用
|
||
Response:
|
||
type: object
|
||
properties:
|
||
code:
|
||
type: string
|
||
message:
|
||
type: string
|
||
data:
|
||
type: object
|
||
properties:
|
||
orderNo:
|
||
type: string
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
status:
|
||
type: string
|
||
purchase:
|
||
type: object
|
||
properties:
|
||
recorded:
|
||
type: boolean
|
||
confirmed:
|
||
type: boolean
|
||
description: 货款已核定,不代表已扣款
|
||
issue:
|
||
type: string
|
||
nullable: true
|
||
feeNo:
|
||
type: string
|
||
nullable: true
|
||
walletStatus:
|
||
type: string
|
||
nullable: true
|
||
sourceLinked:
|
||
type: boolean
|
||
description: 已实扣费用成功入池关联或明确免费
|
||
Receipt:
|
||
allOf:
|
||
- $ref: '#/components/schemas/Command'
|
||
- type: object
|
||
required:
|
||
- leg
|
||
- receivedAt
|
||
properties:
|
||
leg:
|
||
type: string
|
||
enum:
|
||
- OVERSEAS
|
||
- DOMESTIC
|
||
warehouseId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
nullable: true
|
||
description: 海外段必填的实际公共收货仓,国内为空
|
||
sourceCartonId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
nullable: true
|
||
description: 国内段必填的本单原国际交寄箱,海外为空
|
||
goodQuantity:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
damagedQuantity:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
extraQuantity:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
receivedAt:
|
||
type: string
|
||
format: date-time
|
||
FinishReceipt:
|
||
allOf:
|
||
- $ref: '#/components/schemas/Command'
|
||
- type: object
|
||
required:
|
||
- leg
|
||
properties:
|
||
leg:
|
||
type: string
|
||
enum:
|
||
- OVERSEAS
|
||
- DOMESTIC
|
||
Disposition:
|
||
allOf:
|
||
- $ref: '#/components/schemas/Command'
|
||
- type: object
|
||
required:
|
||
- leg
|
||
- kind
|
||
- quantity
|
||
- decision
|
||
- voucherFileId
|
||
properties:
|
||
leg:
|
||
type: string
|
||
enum:
|
||
- OVERSEAS
|
||
- DOMESTIC
|
||
sourceCartonId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
nullable: true
|
||
receiptId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
nullable: true
|
||
kind:
|
||
type: string
|
||
enum:
|
||
- SHORTAGE
|
||
- DAMAGED
|
||
- EXTRA
|
||
quantity:
|
||
type: integer
|
||
format: int64
|
||
minimum: 1
|
||
decision:
|
||
type: string
|
||
enum:
|
||
- ACCEPT_SHORTAGE
|
||
- DISPOSE_DAMAGED
|
||
- RETURN_EXTRA
|
||
voucherFileId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
Source:
|
||
type: object
|
||
required:
|
||
- receiptId
|
||
- quantity
|
||
properties:
|
||
receiptId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
quantity:
|
||
type: integer
|
||
format: int64
|
||
minimum: 1
|
||
Carton:
|
||
type: object
|
||
required:
|
||
- cartonNo
|
||
- lengthCm
|
||
- widthCm
|
||
- heightCm
|
||
- grossWeightKg
|
||
- sources
|
||
properties:
|
||
cartonNo:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
lengthCm:
|
||
type: number
|
||
minimum: 0
|
||
exclusiveMinimum: true
|
||
multipleOf: 0.01
|
||
widthCm:
|
||
type: number
|
||
minimum: 0
|
||
exclusiveMinimum: true
|
||
multipleOf: 0.01
|
||
heightCm:
|
||
type: number
|
||
minimum: 0
|
||
exclusiveMinimum: true
|
||
multipleOf: 0.01
|
||
grossWeightKg:
|
||
type: number
|
||
minimum: 0
|
||
exclusiveMinimum: true
|
||
multipleOf: 0.001
|
||
sources:
|
||
type: array
|
||
minItems: 1
|
||
items:
|
||
$ref: '#/components/schemas/Source'
|
||
Packing:
|
||
allOf:
|
||
- $ref: '#/components/schemas/Command'
|
||
- type: object
|
||
required:
|
||
- cartons
|
||
properties:
|
||
cartons:
|
||
type: array
|
||
minItems: 1
|
||
items:
|
||
$ref: '#/components/schemas/Carton'
|
||
ConfirmPacking:
|
||
allOf:
|
||
- $ref: '#/components/schemas/Command'
|
||
- type: object
|
||
required:
|
||
- packingVersion
|
||
properties:
|
||
packingVersion:
|
||
type: integer
|
||
minimum: 1
|
||
Correction:
|
||
type: object
|
||
required:
|
||
- receipt
|
||
- voucherFileId
|
||
properties:
|
||
receipt:
|
||
$ref: '#/components/schemas/Receipt'
|
||
voucherFileId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
RevokeDisposition:
|
||
allOf:
|
||
- $ref: '#/components/schemas/Command'
|
||
- type: object
|
||
required:
|
||
- voucherFileId
|
||
properties:
|
||
voucherFileId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
PhysicalResponse:
|
||
type: object
|
||
properties:
|
||
code:
|
||
type: string
|
||
message:
|
||
type: string
|
||
data:
|
||
type: object
|
||
properties:
|
||
orderNo:
|
||
type: string
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
status:
|
||
type: string
|
||
packingVersion:
|
||
type: integer
|
||
nullable: true
|
||
packingStatus:
|
||
type: string
|
||
nullable: true
|
||
enum:
|
||
- DRAFT
|
||
- CONFIRMED
|
||
- SUPERSEDED
|
||
receipts:
|
||
type: array
|
||
items:
|
||
type: object
|
||
properties:
|
||
id:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
receiptNo:
|
||
type: string
|
||
leg:
|
||
type: string
|
||
enum:
|
||
- OVERSEAS
|
||
- DOMESTIC
|
||
sourceCartonId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
nullable: true
|
||
goodQuantity:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
damagedQuantity:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
extraQuantity:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
receivedAt:
|
||
type: string
|
||
format: date-time
|
||
active:
|
||
type: boolean
|
||
dispositions:
|
||
type: array
|
||
description: 平台处置历史,active=0为已撤销记录;不直接对客输出内部依据
|
||
items:
|
||
type: object
|
||
cartons:
|
||
type: array
|
||
items:
|
||
allOf:
|
||
- $ref: '#/components/schemas/Carton'
|
||
- type: object
|
||
properties:
|
||
id:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
quantity:
|
||
type: integer
|
||
format: int64
|
||
minimum: 1
|
||
PostalAddress:
|
||
type: object
|
||
required:
|
||
- name
|
||
- phone
|
||
- address
|
||
properties:
|
||
name:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
phone:
|
||
type: string
|
||
pattern: ^[+0-9 ()-]{5,64}$
|
||
address:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 1000
|
||
Label:
|
||
type: object
|
||
required:
|
||
- cartonId
|
||
- fileId
|
||
- page
|
||
- carrier
|
||
- trackingNo
|
||
properties:
|
||
cartonId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
fileId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
page:
|
||
type: integer
|
||
minimum: 1
|
||
carrier:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
trackingNo:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
Labels:
|
||
type: object
|
||
required:
|
||
- version
|
||
- idempotencyKey
|
||
- reason
|
||
- leg
|
||
- packingVersion
|
||
- receiver
|
||
- labels
|
||
properties:
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
idempotencyKey:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
reason:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 1000
|
||
leg:
|
||
type: string
|
||
enum:
|
||
- OVERSEAS
|
||
- DOMESTIC
|
||
packingVersion:
|
||
type: integer
|
||
minimum: 1
|
||
receiver:
|
||
$ref: '#/components/schemas/PostalAddress'
|
||
addressVoucherFileId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
nullable: true
|
||
labels:
|
||
type: array
|
||
minItems: 1
|
||
items:
|
||
$ref: '#/components/schemas/Label'
|
||
Estimate:
|
||
type: object
|
||
required:
|
||
- version
|
||
- idempotencyKey
|
||
- reason
|
||
- labelVersion
|
||
- amount
|
||
- businessDate
|
||
properties:
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
idempotencyKey:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
reason:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 1000
|
||
labelVersion:
|
||
type: integer
|
||
minimum: 1
|
||
amount:
|
||
type: number
|
||
minimum: 0
|
||
multipleOf: 0.01
|
||
businessDate:
|
||
type: string
|
||
format: date
|
||
ApplyLabels:
|
||
type: object
|
||
required:
|
||
- version
|
||
- idempotencyKey
|
||
- reason
|
||
- labelVersion
|
||
- cartonIds
|
||
- appliedAt
|
||
properties:
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
idempotencyKey:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
reason:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 1000
|
||
labelVersion:
|
||
type: integer
|
||
minimum: 1
|
||
cartonIds:
|
||
type: array
|
||
minItems: 1
|
||
items:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
uniqueItems: true
|
||
appliedAt:
|
||
type: string
|
||
format: date-time
|
||
Ship:
|
||
type: object
|
||
required:
|
||
- version
|
||
- idempotencyKey
|
||
- reason
|
||
- leg
|
||
- labelVersion
|
||
- cartonIds
|
||
- shippedAt
|
||
properties:
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
idempotencyKey:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
reason:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 1000
|
||
leg:
|
||
type: string
|
||
enum:
|
||
- OVERSEAS
|
||
- DOMESTIC
|
||
labelVersion:
|
||
type: integer
|
||
minimum: 1
|
||
cartonIds:
|
||
type: array
|
||
minItems: 1
|
||
items:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
uniqueItems: true
|
||
shippedAt:
|
||
type: string
|
||
format: date-time
|
||
Repack:
|
||
type: object
|
||
required:
|
||
- version
|
||
- idempotencyKey
|
||
- reason
|
||
- cartonId
|
||
- lengthCm
|
||
- widthCm
|
||
- heightCm
|
||
- grossWeightKg
|
||
- voucherFileId
|
||
properties:
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
idempotencyKey:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
reason:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 1000
|
||
cartonId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
lengthCm:
|
||
type: number
|
||
exclusiveMinimum: true
|
||
minimum: 0
|
||
multipleOf: 0.01
|
||
widthCm:
|
||
type: number
|
||
exclusiveMinimum: true
|
||
minimum: 0
|
||
multipleOf: 0.01
|
||
heightCm:
|
||
type: number
|
||
exclusiveMinimum: true
|
||
minimum: 0
|
||
multipleOf: 0.01
|
||
grossWeightKg:
|
||
type: number
|
||
exclusiveMinimum: true
|
||
minimum: 0
|
||
multipleOf: 0.001
|
||
voucherFileId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
LabelRow:
|
||
allOf:
|
||
- $ref: '#/components/schemas/Label'
|
||
- type: object
|
||
required:
|
||
- appliedAt
|
||
properties:
|
||
appliedAt:
|
||
type: string
|
||
format: date-time
|
||
nullable: true
|
||
LabelSet:
|
||
type: object
|
||
required:
|
||
- id
|
||
- version
|
||
- manifestId
|
||
- cargoHash
|
||
- sender
|
||
- receiver
|
||
- labels
|
||
properties:
|
||
id:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
version:
|
||
type: integer
|
||
manifestId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
cargoHash:
|
||
type: string
|
||
sender:
|
||
$ref: '#/components/schemas/PostalAddress'
|
||
receiver:
|
||
$ref: '#/components/schemas/PostalAddress'
|
||
labels:
|
||
type: array
|
||
minItems: 1
|
||
items:
|
||
$ref: '#/components/schemas/LabelRow'
|
||
TransportCargo:
|
||
type: object
|
||
required: [cartonId, cartonNo, quantity, lengthCm, widthCm, heightCm, grossWeightKg, packagingRecordId, sources]
|
||
properties:
|
||
cartonId:
|
||
type: string
|
||
pattern: '^[1-9][0-9]*$'
|
||
cartonNo:
|
||
type: string
|
||
quantity:
|
||
type: integer
|
||
format: int64
|
||
minimum: 1
|
||
lengthCm:
|
||
type: number
|
||
minimum: 0
|
||
exclusiveMinimum: true
|
||
multipleOf: 0.01
|
||
widthCm:
|
||
type: number
|
||
minimum: 0
|
||
exclusiveMinimum: true
|
||
multipleOf: 0.01
|
||
heightCm:
|
||
type: number
|
||
minimum: 0
|
||
exclusiveMinimum: true
|
||
multipleOf: 0.01
|
||
grossWeightKg:
|
||
type: number
|
||
minimum: 0
|
||
exclusiveMinimum: true
|
||
multipleOf: 0.001
|
||
packagingRecordId:
|
||
type: string
|
||
nullable: true
|
||
sources:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/Source'
|
||
TransportResponse:
|
||
type: object
|
||
required:
|
||
- code
|
||
- message
|
||
- data
|
||
properties:
|
||
code:
|
||
type: string
|
||
message:
|
||
type: string
|
||
data:
|
||
type: object
|
||
required:
|
||
- orderNo
|
||
- version
|
||
- status
|
||
- overseasLabels
|
||
- domesticLabels
|
||
- overseasCargo
|
||
- domesticCargo
|
||
- shipments
|
||
properties:
|
||
orderNo:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
status:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
overseasCargo:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/TransportCargo'
|
||
domesticCargo:
|
||
type: array
|
||
description: 国内有效合格实收及最新一对一换包装箱规,不包含已处置的破损或多货
|
||
items:
|
||
$ref: '#/components/schemas/TransportCargo'
|
||
overseasLabels:
|
||
allOf:
|
||
- $ref: '#/components/schemas/LabelSet'
|
||
nullable: true
|
||
domesticLabels:
|
||
allOf:
|
||
- $ref: '#/components/schemas/LabelSet'
|
||
nullable: true
|
||
shipments:
|
||
type: array
|
||
items:
|
||
type: object
|
||
required:
|
||
- id
|
||
- shipmentNo
|
||
- leg
|
||
- shippedAt
|
||
properties:
|
||
id:
|
||
type: string
|
||
pattern: '^[1-9][0-9]*$'
|
||
shipmentNo:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
leg:
|
||
type: string
|
||
enum:
|
||
- OVERSEAS
|
||
- DOMESTIC
|
||
shippedAt:
|
||
type: string
|
||
format: date-time
|
||
ChargeAmount:
|
||
type: object
|
||
required:
|
||
- determination
|
||
- amount
|
||
- currency
|
||
- businessDate
|
||
- reason
|
||
properties:
|
||
determination:
|
||
type: string
|
||
enum:
|
||
- POSITIVE
|
||
- ZERO
|
||
- NOT_APPLICABLE
|
||
amount:
|
||
type: number
|
||
minimum: 0
|
||
multipleOf: 0.01
|
||
currency:
|
||
type: string
|
||
enum:
|
||
- CNY
|
||
- USD
|
||
businessDate:
|
||
type: string
|
||
format: date
|
||
voucherFileId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
nullable: true
|
||
reason:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 500
|
||
ChargeSelection:
|
||
type: object
|
||
required: []
|
||
properties:
|
||
feeId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
nullable: true
|
||
value:
|
||
allOf:
|
||
- $ref: '#/components/schemas/ChargeAmount'
|
||
nullable: true
|
||
description: feeId与value恰有一个。引用本单同用途有效费用用于重新核对,不产生新扣款;新核定用value,未知不能当零元。
|
||
oneOf:
|
||
- required:
|
||
- feeId
|
||
properties:
|
||
value:
|
||
type: object
|
||
nullable: true
|
||
enum:
|
||
- null
|
||
feeId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
- required:
|
||
- value
|
||
properties:
|
||
feeId:
|
||
type: string
|
||
nullable: true
|
||
enum:
|
||
- null
|
||
value:
|
||
$ref: '#/components/schemas/ChargeAmount'
|
||
OtherCharge:
|
||
type: object
|
||
required:
|
||
- code
|
||
- name
|
||
- selection
|
||
properties:
|
||
code:
|
||
type: string
|
||
pattern: ^[A-Z][A-Z0-9_]{0,31}$
|
||
name:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
selection:
|
||
$ref: '#/components/schemas/ChargeSelection'
|
||
ConfirmCharges:
|
||
type: object
|
||
required:
|
||
- version
|
||
- idempotencyKey
|
||
- reason
|
||
- internationalFreight
|
||
- duty
|
||
- domesticFreight
|
||
- otherDetermination
|
||
- otherFees
|
||
properties:
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
idempotencyKey:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
reason:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 1000
|
||
internationalFreight:
|
||
$ref: '#/components/schemas/ChargeSelection'
|
||
duty:
|
||
$ref: '#/components/schemas/ChargeSelection'
|
||
domesticFreight:
|
||
$ref: '#/components/schemas/ChargeSelection'
|
||
otherDetermination:
|
||
type: string
|
||
enum:
|
||
- NOT_APPLICABLE
|
||
- ITEMIZED
|
||
otherFees:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/OtherCharge'
|
||
AdditionalFee:
|
||
type: object
|
||
additionalProperties: false
|
||
required: [version, idempotencyKey, name, amount, currency, businessDate, voucherFileId, reason]
|
||
properties:
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
idempotencyKey:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
name:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
amount:
|
||
type: number
|
||
minimum: 0
|
||
exclusiveMinimum: true
|
||
multipleOf: 0.01
|
||
description: 正额原币金额,原币及折算 CNY 均须在费用来源容量内(最多14位整数)。
|
||
currency:
|
||
type: string
|
||
enum: [CNY, USD]
|
||
businessDate:
|
||
type: string
|
||
format: date
|
||
description: 已发生费用的实际业务日期,不允许未来日期。
|
||
voucherFileId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
reason:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 500
|
||
CorrectFeeTarget:
|
||
type: object
|
||
required:
|
||
- version
|
||
- idempotencyKey
|
||
- reason
|
||
- targetOriginalAmount
|
||
- voucherFileId
|
||
properties:
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
idempotencyKey:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
reason:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 500
|
||
targetOriginalAmount:
|
||
type: number
|
||
minimum: 0
|
||
multipleOf: 0.01
|
||
voucherFileId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
RefundFee:
|
||
type: object
|
||
required:
|
||
- version
|
||
- idempotencyKey
|
||
- reason
|
||
- amount
|
||
- voucherFileId
|
||
properties:
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
idempotencyKey:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
reason:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 500
|
||
amount:
|
||
type: number
|
||
minimum: 0
|
||
multipleOf: 0.01
|
||
exclusiveMinimum: true
|
||
voucherFileId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
ProcurementFeeVersion:
|
||
type: object
|
||
required:
|
||
- id
|
||
- feeNo
|
||
- purpose
|
||
- amount
|
||
- walletStatus
|
||
properties:
|
||
id:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
feeNo:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
purpose:
|
||
type: string
|
||
enum:
|
||
- SAMPLE_PAYMENT
|
||
- INTERNATIONAL_ESTIMATE
|
||
- INTERNATIONAL_FREIGHT
|
||
- DUTY
|
||
- DOMESTIC_FREIGHT
|
||
- OTHER
|
||
- ADJUSTMENT
|
||
- REFUND
|
||
confirmationOrigin:
|
||
type: string
|
||
enum: [BUSINESS, FINANCIAL]
|
||
description: 核定入口决定重试权限;客户响应不包含此字段。
|
||
feeVersion:
|
||
type: integer
|
||
active:
|
||
type: boolean
|
||
determination:
|
||
type: string
|
||
feeItemCode:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
feeItemName:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
amount:
|
||
type: number
|
||
minimum: 0
|
||
multipleOf: 0.01
|
||
currency:
|
||
type: string
|
||
enum:
|
||
- CNY
|
||
originalCurrency:
|
||
type: string
|
||
enum:
|
||
- CNY
|
||
- USD
|
||
originalAmount:
|
||
type: number
|
||
minimum: 0
|
||
multipleOf: 0.01
|
||
exchangeRate:
|
||
type: number
|
||
exchangeRateMonth:
|
||
type: string
|
||
businessDate:
|
||
type: string
|
||
format: date
|
||
parentFeeId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
nullable: true
|
||
walletStatus:
|
||
type: string
|
||
voucherFileId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
nullable: true
|
||
remark:
|
||
type: string
|
||
nullable: true
|
||
ChargesSnapshot:
|
||
type: object
|
||
required:
|
||
- orderNo
|
||
- version
|
||
- status
|
||
- confirmedAt
|
||
- fees
|
||
properties:
|
||
orderNo:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
status:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
confirmedAt:
|
||
type: string
|
||
format: date-time
|
||
nullable: true
|
||
fees:
|
||
type: array
|
||
items:
|
||
type: object
|
||
required:
|
||
- detail
|
||
- sourceLinked
|
||
properties:
|
||
detail:
|
||
$ref: '#/components/schemas/ProcurementFeeVersion'
|
||
sourceLinked:
|
||
type: boolean
|
||
FeeCorrectionResult:
|
||
type: object
|
||
required:
|
||
- correctionNo
|
||
- rootFeeNo
|
||
- targetOriginalAmount
|
||
- originalCurrency
|
||
- exchangeRate
|
||
- exchangeRateMonth
|
||
- targetAmount
|
||
- previousNetAmount
|
||
- differenceAmount
|
||
- feeNos
|
||
properties:
|
||
correctionNo:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
rootFeeNo:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
targetOriginalAmount:
|
||
type: number
|
||
minimum: 0
|
||
multipleOf: 0.01
|
||
originalCurrency:
|
||
type: string
|
||
exchangeRate:
|
||
type: number
|
||
exchangeRateMonth:
|
||
type: string
|
||
targetAmount:
|
||
type: number
|
||
minimum: 0
|
||
multipleOf: 0.01
|
||
previousNetAmount:
|
||
type: number
|
||
minimum: 0
|
||
multipleOf: 0.01
|
||
differenceAmount:
|
||
type: number
|
||
multipleOf: 0.01
|
||
feeNos:
|
||
type: array
|
||
items:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
ChargesResponse:
|
||
type: object
|
||
required:
|
||
- code
|
||
- message
|
||
- data
|
||
properties:
|
||
code:
|
||
type: string
|
||
message:
|
||
type: string
|
||
data:
|
||
$ref: '#/components/schemas/ChargesSnapshot'
|
||
FeeCorrectionResponse:
|
||
type: object
|
||
required:
|
||
- code
|
||
- message
|
||
- data
|
||
properties:
|
||
code:
|
||
type: string
|
||
message:
|
||
type: string
|
||
data:
|
||
$ref: '#/components/schemas/FeeCorrectionResult'
|
||
FeeCorrectionsResponse:
|
||
type: object
|
||
required:
|
||
- code
|
||
- message
|
||
- data
|
||
properties:
|
||
code:
|
||
type: string
|
||
message:
|
||
type: string
|
||
data:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/FeeCorrectionResult'
|
||
FeeVersionResponse:
|
||
type: object
|
||
required:
|
||
- code
|
||
- message
|
||
- data
|
||
properties:
|
||
code:
|
||
type: string
|
||
message:
|
||
type: string
|
||
data:
|
||
$ref: '#/components/schemas/ProcurementFeeVersion'
|
||
ControlNote:
|
||
type: object
|
||
required:
|
||
- version
|
||
- idempotencyKey
|
||
- reason
|
||
- targetType
|
||
- blocking
|
||
- voucherFileId
|
||
properties:
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
idempotencyKey:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
reason:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 1000
|
||
targetType:
|
||
type: string
|
||
enum:
|
||
- PURCHASE
|
||
- WAREHOUSE
|
||
- RECEIPT
|
||
- SHIPMENT
|
||
targetId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
nullable: true
|
||
blocking:
|
||
type: boolean
|
||
voucherFileId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
clientSummary:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 500
|
||
nullable: true
|
||
ResolveControl:
|
||
type: object
|
||
required:
|
||
- version
|
||
- idempotencyKey
|
||
- reason
|
||
- voucherFileId
|
||
properties:
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
idempotencyKey:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
reason:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 1000
|
||
voucherFileId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
CorrectWarehouse:
|
||
type: object
|
||
required:
|
||
- version
|
||
- idempotencyKey
|
||
- reason
|
||
- warehouseId
|
||
- voucherFileId
|
||
properties:
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
idempotencyKey:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
reason:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 1000
|
||
warehouseId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
voucherFileId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
CloseResolution:
|
||
type: object
|
||
required:
|
||
- kind
|
||
- quantity
|
||
- decision
|
||
- destination
|
||
- voucherFileId
|
||
properties:
|
||
kind:
|
||
type: string
|
||
enum:
|
||
- PURCHASE_REMAINDER
|
||
- TRANSIT_REMAINDER
|
||
- GOOD
|
||
- DAMAGED
|
||
- EXTRA
|
||
sourceId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
nullable: true
|
||
quantity:
|
||
type: integer
|
||
format: int64
|
||
minimum: 1
|
||
decision:
|
||
type: string
|
||
enum:
|
||
- SUPPLIER_RETAINED
|
||
- RETURNED_TO_SUPPLIER
|
||
- RETURNED_TO_SENDER
|
||
- LOSS_CONFIRMED
|
||
- CUSTOMER_AUTHORIZED_RETENTION
|
||
- DISPOSED
|
||
destination:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 500
|
||
voucherFileId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
ExceptionClose:
|
||
type: object
|
||
required:
|
||
- version
|
||
- idempotencyKey
|
||
- reason
|
||
- resolutions
|
||
- customerVoucherFileId
|
||
- financialConclusion
|
||
- clientSummary
|
||
properties:
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
idempotencyKey:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
reason:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 1000
|
||
resolutions:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/CloseResolution'
|
||
customerVoucherFileId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
financialConclusion:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 1000
|
||
clientSummary:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 500
|
||
ControlRemaining:
|
||
type: object
|
||
required:
|
||
- kind
|
||
- sourceId
|
||
- businessNo
|
||
- quantity
|
||
properties:
|
||
kind:
|
||
type: string
|
||
enum:
|
||
- PURCHASE_REMAINDER
|
||
- TRANSIT_REMAINDER
|
||
- GOOD
|
||
- DAMAGED
|
||
- EXTRA
|
||
sourceId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
nullable: true
|
||
businessNo:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
quantity:
|
||
type: integer
|
||
format: int64
|
||
minimum: 1
|
||
ControlSnapshot:
|
||
type: object
|
||
required:
|
||
- orderNo
|
||
- version
|
||
- status
|
||
- notes
|
||
- remaining
|
||
- closures
|
||
- closureItems
|
||
properties:
|
||
orderNo:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
status:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
notes:
|
||
type: array
|
||
items:
|
||
type: object
|
||
description: 平台内部更正事实,含原始凭证和处理说明;字段为表结构snake_case,不对客透传
|
||
remaining:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/ControlRemaining'
|
||
closures:
|
||
type: array
|
||
items:
|
||
type: object
|
||
closureItems:
|
||
type: array
|
||
items:
|
||
type: object
|
||
ControlResponse:
|
||
type: object
|
||
required:
|
||
- code
|
||
- message
|
||
- data
|
||
properties:
|
||
code:
|
||
type: string
|
||
message:
|
||
type: string
|
||
data:
|
||
$ref: '#/components/schemas/ControlSnapshot'
|
||
ProcurementHeader:
|
||
type: object
|
||
required:
|
||
- id
|
||
- orderNo
|
||
- productName
|
||
- purchaseQuantity
|
||
- status
|
||
- version
|
||
properties:
|
||
orderNo:
|
||
type: string
|
||
nullable: true
|
||
customerId:
|
||
type: string
|
||
nullable: true
|
||
customerName:
|
||
type: string
|
||
nullable: true
|
||
purchaseCategory:
|
||
type: string
|
||
nullable: true
|
||
productName:
|
||
type: string
|
||
nullable: true
|
||
productSpecification:
|
||
type: string
|
||
nullable: true
|
||
productUrl:
|
||
type: string
|
||
nullable: true
|
||
currency:
|
||
type: string
|
||
nullable: true
|
||
receivingAddress:
|
||
type: string
|
||
nullable: true
|
||
contactName:
|
||
type: string
|
||
nullable: true
|
||
contactPhone:
|
||
type: string
|
||
nullable: true
|
||
plannedWarehouseName:
|
||
type: string
|
||
nullable: true
|
||
actualWarehouseCode:
|
||
type: string
|
||
nullable: true
|
||
actualWarehouseName:
|
||
type: string
|
||
nullable: true
|
||
status:
|
||
type: string
|
||
nullable: true
|
||
id:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
purchaseQuantity:
|
||
type: integer
|
||
format: int64
|
||
budgetUnitPrice:
|
||
type: number
|
||
nullable: true
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
estimatedArrivalAt:
|
||
type: string
|
||
format: date-time
|
||
nullable: true
|
||
createdAt:
|
||
type: string
|
||
format: date-time
|
||
nullable: true
|
||
updatedAt:
|
||
type: string
|
||
format: date-time
|
||
nullable: true
|
||
ProcurementBudget:
|
||
type: object
|
||
required:
|
||
- totalAmount
|
||
- currency
|
||
- authorizedAt
|
||
properties:
|
||
totalAmount:
|
||
type: number
|
||
nullable: true
|
||
currency:
|
||
type: string
|
||
authorizedAt:
|
||
type: string
|
||
format: date-time
|
||
nullable: true
|
||
ProcurementProgress:
|
||
type: object
|
||
required:
|
||
- key
|
||
- title
|
||
- completedAt
|
||
properties:
|
||
key:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
title:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
completedAt:
|
||
type: string
|
||
format: date-time
|
||
nullable: true
|
||
CustomerBox:
|
||
type: object
|
||
required:
|
||
- cartonNo
|
||
- quantity
|
||
- lengthCm
|
||
- widthCm
|
||
- heightCm
|
||
- grossWeightKg
|
||
properties:
|
||
cartonNo:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
quantity:
|
||
type: integer
|
||
format: int64
|
||
lengthCm:
|
||
type: number
|
||
widthCm:
|
||
type: number
|
||
heightCm:
|
||
type: number
|
||
grossWeightKg:
|
||
type: number
|
||
CustomerShipment:
|
||
type: object
|
||
required:
|
||
- shipmentNo
|
||
- leg
|
||
- shippedAt
|
||
- cartonNo
|
||
- quantity
|
||
- carrier
|
||
- trackingNo
|
||
properties:
|
||
shipmentNo:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
leg:
|
||
type: string
|
||
enum:
|
||
- OVERSEAS
|
||
- DOMESTIC
|
||
shippedAt:
|
||
type: string
|
||
format: date-time
|
||
cartonNo:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
quantity:
|
||
type: integer
|
||
format: int64
|
||
carrier:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
trackingNo:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
CustomerFee:
|
||
type: object
|
||
required:
|
||
- feeNo
|
||
- purpose
|
||
- name
|
||
- determination
|
||
- currency
|
||
- originalCurrency
|
||
- exchangeRateMonth
|
||
- parentFeeNo
|
||
- walletStatus
|
||
- version
|
||
- active
|
||
- amount
|
||
- originalAmount
|
||
- exchangeRate
|
||
- businessDate
|
||
- sourceLinked
|
||
properties:
|
||
feeNo:
|
||
type: string
|
||
nullable: true
|
||
purpose:
|
||
type: string
|
||
nullable: true
|
||
name:
|
||
type: string
|
||
nullable: true
|
||
determination:
|
||
type: string
|
||
nullable: true
|
||
currency:
|
||
type: string
|
||
nullable: true
|
||
originalCurrency:
|
||
type: string
|
||
nullable: true
|
||
exchangeRateMonth:
|
||
type: string
|
||
nullable: true
|
||
parentFeeNo:
|
||
type: string
|
||
nullable: true
|
||
walletStatus:
|
||
type: string
|
||
nullable: true
|
||
version:
|
||
type: integer
|
||
nullable: true
|
||
active:
|
||
type: boolean
|
||
amount:
|
||
type: number
|
||
originalAmount:
|
||
type: number
|
||
nullable: true
|
||
exchangeRate:
|
||
type: number
|
||
nullable: true
|
||
businessDate:
|
||
type: string
|
||
format: date
|
||
nullable: true
|
||
sourceLinked:
|
||
type: boolean
|
||
additionalProperties: false
|
||
description: 客户费用白名单:不含凭证、备注、资金命令/冻结/流水引用和原始诊断
|
||
ProcurementCustomerView:
|
||
type: object
|
||
required:
|
||
- order
|
||
- budget
|
||
- purchased
|
||
- purchaseConfirmed
|
||
- purchaseNeedsAttention
|
||
- progress
|
||
- boxes
|
||
- shipments
|
||
- fees
|
||
- exceptionSummaries
|
||
properties:
|
||
order:
|
||
$ref: '#/components/schemas/ProcurementHeader'
|
||
budget:
|
||
$ref: '#/components/schemas/ProcurementBudget'
|
||
purchased:
|
||
type: boolean
|
||
purchaseConfirmed:
|
||
type: boolean
|
||
purchaseNeedsAttention:
|
||
type: boolean
|
||
progress:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/ProcurementProgress'
|
||
boxes:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/CustomerBox'
|
||
shipments:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/CustomerShipment'
|
||
fees:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/CustomerFee'
|
||
exceptionSummaries:
|
||
type: array
|
||
items:
|
||
type: string
|
||
additionalProperties: false
|
||
description: 客户仅获取此独立投影;boxes只包含已确认海外清单。内部采购异常只提供需要处理标记,异常摘要来自人工明确填写的对客字段。
|
||
ProcurementAction:
|
||
type: object
|
||
required:
|
||
- key
|
||
- label
|
||
- permission
|
||
- allowed
|
||
- reason
|
||
properties:
|
||
key:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
label:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
permission:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
allowed:
|
||
type: boolean
|
||
reason:
|
||
type: string
|
||
nullable: true
|
||
ProcurementPlatformView:
|
||
type: object
|
||
required:
|
||
- customerView
|
||
- purchaseFacts
|
||
- physical
|
||
- transport
|
||
- fees
|
||
- feeCorrections
|
||
- controls
|
||
- files
|
||
- reviewHistory
|
||
- operations
|
||
- actions
|
||
- internalRemark
|
||
properties:
|
||
customerView:
|
||
$ref: '#/components/schemas/ProcurementCustomerView'
|
||
purchaseFacts:
|
||
type: object
|
||
description: 平台内部履约事实,字段snake_case
|
||
physical:
|
||
type: object
|
||
properties:
|
||
orderNo:
|
||
type: string
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
status:
|
||
type: string
|
||
packingVersion:
|
||
type: integer
|
||
nullable: true
|
||
packingStatus:
|
||
type: string
|
||
nullable: true
|
||
enum:
|
||
- DRAFT
|
||
- CONFIRMED
|
||
- SUPERSEDED
|
||
receipts:
|
||
type: array
|
||
items:
|
||
type: object
|
||
properties:
|
||
id:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
receiptNo:
|
||
type: string
|
||
leg:
|
||
type: string
|
||
enum:
|
||
- OVERSEAS
|
||
- DOMESTIC
|
||
sourceCartonId:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
nullable: true
|
||
goodQuantity:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
damagedQuantity:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
extraQuantity:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
receivedAt:
|
||
type: string
|
||
format: date-time
|
||
active:
|
||
type: boolean
|
||
dispositions:
|
||
type: array
|
||
description: 平台处置历史,active=0为已撤销记录;不直接对客输出内部依据
|
||
items:
|
||
type: object
|
||
cartons:
|
||
type: array
|
||
items:
|
||
allOf:
|
||
- $ref: '#/components/schemas/Carton'
|
||
- type: object
|
||
properties:
|
||
id:
|
||
type: string
|
||
pattern: ^[1-9][0-9]*$
|
||
quantity:
|
||
type: integer
|
||
format: int64
|
||
minimum: 1
|
||
transport:
|
||
type: object
|
||
required:
|
||
- orderNo
|
||
- version
|
||
- status
|
||
- overseasLabels
|
||
- domesticLabels
|
||
- overseasCargo
|
||
- domesticCargo
|
||
- shipments
|
||
properties:
|
||
orderNo:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
version:
|
||
type: integer
|
||
format: int64
|
||
minimum: 0
|
||
status:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 128
|
||
overseasCargo:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/TransportCargo'
|
||
domesticCargo:
|
||
type: array
|
||
description: 国内有效合格实收及最新一对一换包装箱规,不包含已处置的破损或多货
|
||
items:
|
||
$ref: '#/components/schemas/TransportCargo'
|
||
overseasLabels:
|
||
allOf:
|
||
- $ref: '#/components/schemas/LabelSet'
|
||
nullable: true
|
||
domesticLabels:
|
||
allOf:
|
||
- $ref: '#/components/schemas/LabelSet'
|
||
nullable: true
|
||
shipments:
|
||
type: array
|
||
items:
|
||
type: object
|
||
required:
|
||
- id
|
||
- shipmentNo
|
||
- leg
|
||
- shippedAt
|
||
properties:
|
||
id:
|
||
type: string
|
||
pattern: '^[1-9][0-9]*$'
|
||
shipmentNo:
|
||
type: string
|
||
minLength: 1
|
||
maxLength: 64
|
||
leg:
|
||
type: string
|
||
enum:
|
||
- OVERSEAS
|
||
- DOMESTIC
|
||
shippedAt:
|
||
type: string
|
||
format: date-time
|
||
fees:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/ProcurementFeeVersion'
|
||
feeCorrections:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/FeeCorrectionResult'
|
||
controls:
|
||
$ref: '#/components/schemas/ControlSnapshot'
|
||
files:
|
||
type: array
|
||
items:
|
||
type: object
|
||
reviewHistory:
|
||
type: array
|
||
items:
|
||
type: object
|
||
operations:
|
||
type: array
|
||
items:
|
||
type: object
|
||
actions:
|
||
type: array
|
||
items:
|
||
$ref: '#/components/schemas/ProcurementAction'
|
||
internalRemark:
|
||
type: string
|
||
nullable: true
|
||
ProcurementCustomerResponse:
|
||
type: object
|
||
required:
|
||
- code
|
||
- message
|
||
- data
|
||
properties:
|
||
code:
|
||
type: string
|
||
message:
|
||
type: string
|
||
data:
|
||
$ref: '#/components/schemas/ProcurementCustomerView'
|
||
ProcurementPlatformResponse:
|
||
type: object
|
||
required:
|
||
- code
|
||
- message
|
||
- data
|
||
properties:
|
||
code:
|
||
type: string
|
||
message:
|
||
type: string
|
||
data:
|
||
$ref: '#/components/schemas/ProcurementPlatformView'
|