Add quote and order HTTP APIs on manifest documents.
Expose store-backed CRUD for quotes and sales orders with shared ManifestLine shapes, entityId customers, and documented date semantics.
This commit is contained in:
@@ -271,6 +271,108 @@
|
||||
* type: array
|
||||
* items:
|
||||
* $ref: '#/components/schemas/DeliveryLine'
|
||||
* ManifestLine:
|
||||
* type: object
|
||||
* required: [id, articleId, sku, amount, net, rebate, tax, comment]
|
||||
* description: Line shape for quote and order (no transactedAmount)
|
||||
* properties:
|
||||
* id:
|
||||
* type: integer
|
||||
* articleId:
|
||||
* type: integer
|
||||
* nullable: true
|
||||
* sku:
|
||||
* type: string
|
||||
* nullable: true
|
||||
* amount:
|
||||
* type: number
|
||||
* net:
|
||||
* type: number
|
||||
* rebate:
|
||||
* type: number
|
||||
* tax:
|
||||
* type: number
|
||||
* description: tax.rate
|
||||
* comment:
|
||||
* type: string
|
||||
* nullable: true
|
||||
* ManifestLineInput:
|
||||
* type: object
|
||||
* required: [sku, amount, net, tax]
|
||||
* properties:
|
||||
* sku:
|
||||
* type: string
|
||||
* amount:
|
||||
* type: number
|
||||
* net:
|
||||
* type: number
|
||||
* tax:
|
||||
* type: number
|
||||
* description: Tax rate (resolved via tax.ensure)
|
||||
* rebate:
|
||||
* type: number
|
||||
* description: Defaults to 0
|
||||
* comment:
|
||||
* type: string
|
||||
* nullable: true
|
||||
* QuoteSummary:
|
||||
* type: object
|
||||
* required: [id, number, type, entityId, date]
|
||||
* properties:
|
||||
* id:
|
||||
* type: integer
|
||||
* number:
|
||||
* type: string
|
||||
* type:
|
||||
* type: string
|
||||
* enum: [quote]
|
||||
* entityId:
|
||||
* type: integer
|
||||
* nullable: true
|
||||
* description: Customer (manifest.entity_id)
|
||||
* date:
|
||||
* type: string
|
||||
* format: date-time
|
||||
* description: Document date / valid-until
|
||||
* Quote:
|
||||
* allOf:
|
||||
* - $ref: '#/components/schemas/QuoteSummary'
|
||||
* - type: object
|
||||
* required: [lines]
|
||||
* properties:
|
||||
* lines:
|
||||
* type: array
|
||||
* items:
|
||||
* $ref: '#/components/schemas/ManifestLine'
|
||||
* OrderSummary:
|
||||
* type: object
|
||||
* required: [id, number, type, entityId, date]
|
||||
* properties:
|
||||
* id:
|
||||
* type: integer
|
||||
* number:
|
||||
* type: string
|
||||
* type:
|
||||
* type: string
|
||||
* enum: [order]
|
||||
* entityId:
|
||||
* type: integer
|
||||
* nullable: true
|
||||
* description: Customer (manifest.entity_id)
|
||||
* date:
|
||||
* type: string
|
||||
* format: date-time
|
||||
* description: Document date / expected delivery
|
||||
* Order:
|
||||
* allOf:
|
||||
* - $ref: '#/components/schemas/OrderSummary'
|
||||
* - type: object
|
||||
* required: [lines]
|
||||
* properties:
|
||||
* lines:
|
||||
* type: array
|
||||
* items:
|
||||
* $ref: '#/components/schemas/ManifestLine'
|
||||
* ArticleImage:
|
||||
* type: object
|
||||
* required: [picId, sort, full, thumb, hash, thumbHash]
|
||||
|
||||
Reference in New Issue
Block a user