@tillhub/schemas 6.103.0 → 6.107.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +40 -0
- package/lib/v0/loyalty_abocard_systems/base.js +31 -2
- package/lib/v0/safes/book.js +2 -1
- package/lib/v0/safes_log_book/base.js +1 -0
- package/lib/v0/staff/base.js +5 -0
- package/lib/v1/carts/items/create.js +2 -1
- package/lib/v1/products/index.js +4 -0
- package/lib/v1/products/prices/actual/query.js +34 -0
- package/lib/v1/products/prices/actual/response.js +16 -0
- package/lib/v1/transactions/components/embedded/discount/base.js +5 -2
- package/lib/v1/transactions/components/embedded/voucher/base.js +7 -1
- package/lib/v1/transactions/legacy/items/base.js +4 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,43 @@
|
|
|
1
|
+
# [6.107.0](https://github.com/tillhub/schemas/compare/v6.106.0...v6.107.0) (2021-12-21)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Features
|
|
5
|
+
|
|
6
|
+
* **staffs:** Staff permissions from template instead of scopes ([#653](https://github.com/tillhub/schemas/issues/653)) ([821e7c5](https://github.com/tillhub/schemas/commit/821e7c5))
|
|
7
|
+
|
|
8
|
+
# [6.106.0](https://github.com/tillhub/schemas/compare/v6.105.0...v6.106.0) (2021-12-13)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Bug Fixes
|
|
12
|
+
|
|
13
|
+
* **transactions:** items ([876dc02](https://github.com/tillhub/schemas/commit/876dc02))
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
### Features
|
|
17
|
+
|
|
18
|
+
* **transactions:** legacy ([eb5ae77](https://github.com/tillhub/schemas/commit/eb5ae77))
|
|
19
|
+
* **transactions:** legacy ([910471b](https://github.com/tillhub/schemas/commit/910471b))
|
|
20
|
+
|
|
21
|
+
# [6.105.0](https://github.com/tillhub/schemas/compare/v6.104.0...v6.105.0) (2021-12-13)
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
### Bug Fixes
|
|
25
|
+
|
|
26
|
+
* **abocard-systems:** fixes due to linter ([49ddbc3](https://github.com/tillhub/schemas/commit/49ddbc3))
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
### Features
|
|
30
|
+
|
|
31
|
+
* **abocard:** Add "discount_type" and "selling_price_method" ([#649](https://github.com/tillhub/schemas/issues/649)) ([b2024de](https://github.com/tillhub/schemas/commit/b2024de))
|
|
32
|
+
* **prices:** add actual prices schema #API-1257 ([2260e72](https://github.com/tillhub/schemas/commit/2260e72)), closes [#API-1257](https://github.com/tillhub/schemas/issues/API-1257)
|
|
33
|
+
|
|
34
|
+
# [6.104.0](https://github.com/tillhub/schemas/compare/v6.103.0...v6.104.0) (2021-12-07)
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
### Features
|
|
38
|
+
|
|
39
|
+
* **safes:** add pos_to_safe_cancel ([2f0dfda](https://github.com/tillhub/schemas/commit/2f0dfda))
|
|
40
|
+
|
|
1
41
|
# [6.103.0](https://github.com/tillhub/schemas/compare/v6.102.0...v6.103.0) (2021-11-08)
|
|
2
42
|
|
|
3
43
|
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
const { oneOf } = require('../../helpers/payload-or-null')
|
|
2
2
|
const baseObject = require('../../common/base')
|
|
3
|
+
const currencyAmount = require('../../common/currency_amount')
|
|
3
4
|
const voucherSystemPropertiesFull = require('../voucher_systems/base')
|
|
4
5
|
|
|
5
6
|
const {
|
|
@@ -231,7 +232,28 @@ const request = {
|
|
|
231
232
|
description: 'Defines whether assigning a customer is required for creation actions within this system.',
|
|
232
233
|
type: 'boolean',
|
|
233
234
|
default: 'false'
|
|
234
|
-
})
|
|
235
|
+
}),
|
|
236
|
+
discount_type: oneOf(
|
|
237
|
+
{
|
|
238
|
+
description: `
|
|
239
|
+
the calculation type of the discount of the Purpose Product (Zweck/Artikel).
|
|
240
|
+
* \`relative\` - stores discount absolute in currency of system
|
|
241
|
+
* \`absolute\` - stores relative discount value in percent (e.g.: 12,58%) to allow two decimals on percent if necessary (which wouldn’t be possible with a rate)
|
|
242
|
+
`,
|
|
243
|
+
type: 'string',
|
|
244
|
+
enum: ['relative', 'absolute']
|
|
245
|
+
},
|
|
246
|
+
{ default: null }
|
|
247
|
+
),
|
|
248
|
+
selling_price_method: {
|
|
249
|
+
description: `
|
|
250
|
+
"static", "dynamic" configuration of selling price.
|
|
251
|
+
* \`static\` - For "static" we use the current behavior of our implementation.
|
|
252
|
+
* \`dynamic\` - For "dynamic" we calculate the selling price according to this document
|
|
253
|
+
`,
|
|
254
|
+
enum: ['static', 'dynamic'],
|
|
255
|
+
default: 'static'
|
|
256
|
+
}
|
|
235
257
|
}
|
|
236
258
|
|
|
237
259
|
const response = {
|
|
@@ -239,7 +261,14 @@ const response = {
|
|
|
239
261
|
deleted: {
|
|
240
262
|
type: 'boolean'
|
|
241
263
|
},
|
|
242
|
-
...request
|
|
264
|
+
...request,
|
|
265
|
+
actual_amount: {
|
|
266
|
+
description: 'The calculated amount of abocard based on abocard system settings (discount_type, selling_price_method, etc.) and location',
|
|
267
|
+
...oneOf({
|
|
268
|
+
...currencyAmount
|
|
269
|
+
}),
|
|
270
|
+
default: null
|
|
271
|
+
}
|
|
243
272
|
}
|
|
244
273
|
|
|
245
274
|
module.exports = {
|
package/lib/v0/safes/book.js
CHANGED
package/lib/v0/staff/base.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
const { oneOf } = require('../../helpers/payload-or-null')
|
|
2
|
+
|
|
1
3
|
module.exports = {
|
|
2
4
|
firstname: {
|
|
3
5
|
anyOf: [
|
|
@@ -210,6 +212,9 @@ module.exports = {
|
|
|
210
212
|
}
|
|
211
213
|
]
|
|
212
214
|
},
|
|
215
|
+
user_permission_template_id: oneOf({
|
|
216
|
+
type: 'string'
|
|
217
|
+
}),
|
|
213
218
|
active: {
|
|
214
219
|
type: 'boolean'
|
|
215
220
|
},
|
package/lib/v1/products/index.js
CHANGED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
module.exports = {
|
|
2
|
+
$id: 'https://schemas.tillhub.com/v1/products.prices.actual.query.schema.json',
|
|
3
|
+
$schema: 'http://json-schema.org/draft-07/schema#',
|
|
4
|
+
additionalProperties: false,
|
|
5
|
+
type: 'object',
|
|
6
|
+
required: [
|
|
7
|
+
'location'
|
|
8
|
+
],
|
|
9
|
+
properties: {
|
|
10
|
+
product_id: {
|
|
11
|
+
description: 'Product ID (required if no "product_custom_id" provided)',
|
|
12
|
+
type: 'string',
|
|
13
|
+
format: 'uuid',
|
|
14
|
+
example: 'fd4bac62-937b-445f-b7bf-fb9e653de50f'
|
|
15
|
+
},
|
|
16
|
+
product_custom_id: {
|
|
17
|
+
description: 'Product custom ID',
|
|
18
|
+
type: 'string',
|
|
19
|
+
example: '936835 1234'
|
|
20
|
+
},
|
|
21
|
+
location: {
|
|
22
|
+
description: 'Product location',
|
|
23
|
+
type: 'string',
|
|
24
|
+
format: 'uuid',
|
|
25
|
+
example: '69ac1b92-7956-43d8-8620-e556299b5023'
|
|
26
|
+
},
|
|
27
|
+
quantity: {
|
|
28
|
+
description: 'Product quantity (to search among product scaled price embedded in product only)',
|
|
29
|
+
type: 'integer',
|
|
30
|
+
minimum: 0,
|
|
31
|
+
example: 3
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
const priceBookEntryBase = require('../book/entry').base
|
|
2
|
+
|
|
3
|
+
module.exports = {
|
|
4
|
+
$id: 'https://schemas.tillhub.com/v1/products.prices.actual.response.schema.json',
|
|
5
|
+
$schema: 'http://json-schema.org/draft-07/schema#',
|
|
6
|
+
additionalProperties: false,
|
|
7
|
+
type: 'object',
|
|
8
|
+
required: [
|
|
9
|
+
],
|
|
10
|
+
properties: {
|
|
11
|
+
amount_net: priceBookEntryBase.amount_net,
|
|
12
|
+
amount_gross: priceBookEntryBase.amount_gross,
|
|
13
|
+
rate: priceBookEntryBase.rate,
|
|
14
|
+
currency: priceBookEntryBase.currency
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -88,7 +88,8 @@ module.exports = {
|
|
|
88
88
|
'sconto',
|
|
89
89
|
'item',
|
|
90
90
|
'promotion',
|
|
91
|
-
'voucher'
|
|
91
|
+
'voucher',
|
|
92
|
+
'product_voucher'
|
|
92
93
|
]
|
|
93
94
|
}),
|
|
94
95
|
name: {
|
|
@@ -132,7 +133,9 @@ module.exports = {
|
|
|
132
133
|
'item',
|
|
133
134
|
'customer',
|
|
134
135
|
'promotion',
|
|
135
|
-
'sconto'
|
|
136
|
+
'sconto',
|
|
137
|
+
'voucher',
|
|
138
|
+
'product_voucher'
|
|
136
139
|
]
|
|
137
140
|
},
|
|
138
141
|
{
|
|
@@ -123,6 +123,10 @@ module.exports = {
|
|
|
123
123
|
maxLength: 2048,
|
|
124
124
|
description: 'Messages from voucher processing.'
|
|
125
125
|
},
|
|
126
|
+
creation: oneOf({
|
|
127
|
+
type: 'object',
|
|
128
|
+
description: 'Client specified container to store created abocards and/or vouchers.'
|
|
129
|
+
}),
|
|
126
130
|
type: {
|
|
127
131
|
type: 'string',
|
|
128
132
|
description: 'Mainly legacy support for Fleurop flows.',
|
|
@@ -136,7 +140,9 @@ module.exports = {
|
|
|
136
140
|
'tillhub_create', // formerly 6
|
|
137
141
|
'tillhub_recharge', // formerly 7
|
|
138
142
|
'tillhub_reedeem', // formerly 8
|
|
139
|
-
'tillhub_percentage' // formerly 9
|
|
143
|
+
'tillhub_percentage', // formerly 9
|
|
144
|
+
'tillhub_product', // ...
|
|
145
|
+
'tillhub_abocard_sell' // ...
|
|
140
146
|
]
|
|
141
147
|
},
|
|
142
148
|
status: {
|
|
@@ -285,7 +285,6 @@ module.exports = {
|
|
|
285
285
|
})
|
|
286
286
|
},
|
|
287
287
|
discounts: {
|
|
288
|
-
deprecated: true,
|
|
289
288
|
...oneOf({
|
|
290
289
|
type: 'array',
|
|
291
290
|
items: {
|
|
@@ -306,7 +305,8 @@ module.exports = {
|
|
|
306
305
|
'sconto', // originated from rounding currencies that do not use a 0.01 physical unit, e.g. CHF
|
|
307
306
|
'item', // discounts that can only be used per item
|
|
308
307
|
'promotion', // originated from applying the outcome of a promotion
|
|
309
|
-
'voucher' // originated from applying a percentage voucher
|
|
308
|
+
'voucher', // originated from applying a percentage voucher
|
|
309
|
+
'product_voucher' // originated from applying a voucher bound to a product
|
|
310
310
|
],
|
|
311
311
|
description: 'The group type of discount (type was taken)'
|
|
312
312
|
},
|
|
@@ -410,6 +410,8 @@ module.exports = {
|
|
|
410
410
|
'voucher_is_locked', // If is_voucher, indicates the locked state within the API
|
|
411
411
|
'voucher_message', // If is_voucher, collected messages from voucher processing API calls
|
|
412
412
|
'voucher_title', // If is_voucher, a currently not used custom title
|
|
413
|
+
'voucher_linked_product', // If is_voucher and of type product, the id of the affected product
|
|
414
|
+
'voucher_creation', // If is_voucher and it involves creation of vocuhers or abocards - a stringified JSON of the relevant contents
|
|
413
415
|
/*
|
|
414
416
|
the voucher_type enum:
|
|
415
417
|
[
|