打印服务
This commit is contained in:
@@ -0,0 +1,131 @@
|
||||
openapi: 3.0.3
|
||||
info:
|
||||
title: Baiyue Print Internal API
|
||||
version: 1.0.0
|
||||
description: Internal stateless PDF rendering API. This path must not be exposed through Gateway.
|
||||
paths:
|
||||
/internal/print/v1/pdfs/inbound-marks:
|
||||
post:
|
||||
summary: Generate an inbound-mark PDF
|
||||
operationId: generateInboundMarkPdf
|
||||
security:
|
||||
- internalServiceToken: []
|
||||
parameters:
|
||||
- $ref: '#/components/parameters/RequestId'
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/InboundMarkPdfRequest'
|
||||
responses:
|
||||
'200':
|
||||
description: PDF generation succeeded, or a business error was returned as ApiResponse JSON.
|
||||
headers:
|
||||
Content-Disposition:
|
||||
description: UTF-8 attachment filename. Present only for a successful PDF.
|
||||
schema:
|
||||
type: string
|
||||
Cache-Control:
|
||||
schema:
|
||||
type: string
|
||||
example: no-store
|
||||
X-Print-Page-Count:
|
||||
schema:
|
||||
type: integer
|
||||
minimum: 1
|
||||
maximum: 2000
|
||||
X-Request-Id:
|
||||
schema:
|
||||
type: string
|
||||
content:
|
||||
application/pdf:
|
||||
schema:
|
||||
type: string
|
||||
format: binary
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/ApiError'
|
||||
'413':
|
||||
description: Request body exceeds the configured limit.
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/ApiError'
|
||||
components:
|
||||
securitySchemes:
|
||||
internalServiceToken:
|
||||
type: apiKey
|
||||
in: header
|
||||
name: X-Internal-Service-Token
|
||||
parameters:
|
||||
RequestId:
|
||||
name: X-Request-Id
|
||||
in: header
|
||||
required: false
|
||||
schema:
|
||||
type: string
|
||||
schemas:
|
||||
InboundMarkPdfRequest:
|
||||
type: object
|
||||
required: [templateCode, pageSpec, labels]
|
||||
properties:
|
||||
templateCode:
|
||||
type: string
|
||||
enum: [INBOUND_MARK_V1]
|
||||
pageSpec:
|
||||
$ref: '#/components/schemas/PageSpec'
|
||||
downloadFileName:
|
||||
type: string
|
||||
maxLength: 120
|
||||
example: PCHK2608040174-19件-MCC1.pdf
|
||||
labels:
|
||||
type: array
|
||||
minItems: 1
|
||||
maxItems: 2000
|
||||
items:
|
||||
$ref: '#/components/schemas/InboundMarkLabel'
|
||||
PageSpec:
|
||||
type: object
|
||||
required: [widthMm, heightMm]
|
||||
properties:
|
||||
widthMm:
|
||||
type: number
|
||||
enum: [100]
|
||||
heightMm:
|
||||
type: number
|
||||
enum: [100]
|
||||
InboundMarkLabel:
|
||||
type: object
|
||||
required: [topCode, warehouseText, cartonText, routeText, qrContent]
|
||||
properties:
|
||||
topCode:
|
||||
type: string
|
||||
warehouseText:
|
||||
type: string
|
||||
cartonText:
|
||||
type: string
|
||||
routeText:
|
||||
type: string
|
||||
qrContent:
|
||||
type: string
|
||||
minLength: 1
|
||||
maxLength: 34
|
||||
pattern: '^[\\x20-\\x7E]+$'
|
||||
ApiError:
|
||||
type: object
|
||||
required: [code, message]
|
||||
properties:
|
||||
code:
|
||||
type: string
|
||||
enum: [A0400, A0403, A0422, A0429, S0500]
|
||||
message:
|
||||
type: string
|
||||
data:
|
||||
nullable: true
|
||||
requestId:
|
||||
type: string
|
||||
nullable: true
|
||||
traceId:
|
||||
type: string
|
||||
nullable: true
|
||||
Reference in New Issue
Block a user