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:
seb
2026-08-06 19:58:25 +02:00
parent 74269cd3ef
commit cdae7b6eab
19 changed files with 2668 additions and 0 deletions

View File

@@ -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]