121 lines
6.4 KiB
YAML
121 lines
6.4 KiB
YAML
openapi: 3.0.3
|
||
info:
|
||
title: 仓储转运与混箱库存数量
|
||
version: 1.0.0
|
||
description: 件、箱、托分开记录。所有Long数量序列化为十进制字符串;未知件数保持null,空筛选返回零。同托部分出库可同时属于历史实收、剩余、出库集合,禁止托数相减。
|
||
paths:
|
||
/api/platform/v1/last-leg/orders/warehouse-transfer-quantities:
|
||
get:
|
||
operationId: platformWarehouseTransferQuantityTotals
|
||
description: 权限platform:overseas-warehouse:last-mile-order:list,平台访问域与主订单列表一致。复用主订单全部Query筛选及relabelNo,额外限定WAREHOUSE_TRANSFER;page/size不参与汇总。
|
||
responses:
|
||
'200':
|
||
description: ApiResponse.data为TransferQuantityTotals。
|
||
content:
|
||
application/json:
|
||
schema: { $ref: '#/components/schemas/TotalsEnvelope' }
|
||
/api/merchant/v1/last-leg/warehouse-transfers/quantities:
|
||
get:
|
||
operationId: merchantWarehouseTransferQuantityTotals
|
||
description: 权限merchant:overseas-warehouse:transfer:list,客户范围只从会话获取。复用转运列表完整筛选,包括transferNo/inboundCode/operatingWarehouseId/fbaWarehouseCode/status/needRelabel和创建、审核、清点完成、出库日期区间;日期区间上界包含端点。page/size不参与汇总。
|
||
responses:
|
||
'200':
|
||
description: ApiResponse.data为TransferQuantityTotals。
|
||
content:
|
||
application/json:
|
||
schema: { $ref: '#/components/schemas/TotalsEnvelope' }
|
||
/api/platform/v1/last-leg/inventory/piece-projection:
|
||
get:
|
||
operationId: platformInventoryPieceProjection
|
||
description: 权限platform:overseas-warehouse:inventory:list,与库存列表相同平台客户访问域及BalanceQuery完整筛选,不分页。按原箱清点及正式目的仓签收凭据投影当前未占用可用库存。每仓位精确箱映射数量须等于available_packages,箱内SKU件数须等于箱总清点件数;缺失、不一致、无法追溯的非转运库存均为未知,不按箱规或首SKU推算。通用余额MIXED也逐箱读取全部SKU。SKU查询可命中混箱第二SKU。
|
||
responses:
|
||
'200':
|
||
description: ApiResponse.data为InventoryPieceProjection。
|
||
content:
|
||
application/json:
|
||
schema:
|
||
type: object
|
||
properties:
|
||
code: { type: string }
|
||
data: { $ref: '#/components/schemas/InventoryPieceProjection' }
|
||
components:
|
||
schemas:
|
||
Count:
|
||
type: string
|
||
pattern: '^[0-9]+$'
|
||
NullableCount:
|
||
type: string
|
||
nullable: true
|
||
pattern: '^[0-9]+$'
|
||
TransferQuantityView:
|
||
type: object
|
||
description: 主订单列表与详情summary.warehouseTransferQuantity,仅转运订单提供。新到仓历史实收取counted_at非空且COUNTED/DISCARD_PENDING/DISCARDED/SHIPPED原箱;库存转运实收取正式目的仓签收凭据,件数取精确原箱清点。
|
||
properties:
|
||
lastlegOrderId: { $ref: '#/components/schemas/Count' }
|
||
declaredPieceCount: { $ref: '#/components/schemas/NullableCount' }
|
||
receivedPieceCount: { $ref: '#/components/schemas/NullableCount' }
|
||
declaredCartonCount: { $ref: '#/components/schemas/Count' }
|
||
receivedCartonCount: { $ref: '#/components/schemas/Count' }
|
||
receivedPalletCount: { $ref: '#/components/schemas/Count' }
|
||
availableCartonCount: { type: string, description: 原箱当前COUNTED数,非扣除其他业务预留后的可用库存。真实可用数读取库存投影。 }
|
||
shippedCartonCount: { $ref: '#/components/schemas/Count' }
|
||
remainingPalletCount: { $ref: '#/components/schemas/Count' }
|
||
shippedPalletCount: { $ref: '#/components/schemas/Count' }
|
||
TransferQuantityTotals:
|
||
allOf:
|
||
- { $ref: '#/components/schemas/TransferQuantityView' }
|
||
- type: object
|
||
properties:
|
||
orderCount: { $ref: '#/components/schemas/Count' }
|
||
knownDeclaredPieceCount: { $ref: '#/components/schemas/Count' }
|
||
unknownDeclaredOrderCount: { $ref: '#/components/schemas/Count' }
|
||
knownReceivedPieceCount: { $ref: '#/components/schemas/Count' }
|
||
unknownReceivedOrderCount: { $ref: '#/components/schemas/Count' }
|
||
TotalsEnvelope:
|
||
type: object
|
||
properties:
|
||
code: { type: string }
|
||
data: { $ref: '#/components/schemas/TransferQuantityTotals' }
|
||
Sku:
|
||
type: object
|
||
properties:
|
||
skuCode: { type: string }
|
||
quantity: { $ref: '#/components/schemas/Count' }
|
||
InventoryPieceProjection:
|
||
type: object
|
||
properties:
|
||
availablePieceCount: { $ref: '#/components/schemas/NullableCount' }
|
||
knownAvailablePieceCount: { $ref: '#/components/schemas/Count' }
|
||
unknownCartonCount: { $ref: '#/components/schemas/Count' }
|
||
availableCartonCount: { $ref: '#/components/schemas/Count' }
|
||
availablePalletCount: { $ref: '#/components/schemas/Count' }
|
||
groups:
|
||
type: array
|
||
items:
|
||
type: object
|
||
properties:
|
||
customerId: { type: string }
|
||
warehouseId: { type: string }
|
||
destinationCode: { type: string, nullable: true }
|
||
anchorSkuCode: { type: string, nullable: true, description: 原余额记账SKU,可能为MIXED。完整SKU在skuContents中。 }
|
||
availablePieceCount: { $ref: '#/components/schemas/NullableCount' }
|
||
knownAvailablePieceCount: { $ref: '#/components/schemas/Count' }
|
||
unknownCartonCount: { $ref: '#/components/schemas/Count' }
|
||
availableCartonCount: { $ref: '#/components/schemas/Count' }
|
||
availablePalletCount: { $ref: '#/components/schemas/Count' }
|
||
skuContents:
|
||
type: array
|
||
items: { $ref: '#/components/schemas/Sku' }
|
||
cartons:
|
||
type: array
|
||
items:
|
||
type: object
|
||
properties:
|
||
cartonMark: { type: string }
|
||
inventoryPositionId: { type: string }
|
||
palletId: { type: string, nullable: true }
|
||
quantity: { $ref: '#/components/schemas/NullableCount' }
|
||
items:
|
||
type: array
|
||
items: { $ref: '#/components/schemas/Sku' }
|