@things-factory/sales-base 4.3.639 → 4.3.642
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/dist-server/service/arrival-notice/arrival-notice-mutation.js +33 -2
- package/dist-server/service/arrival-notice/arrival-notice-mutation.js.map +1 -1
- package/dist-server/service/arrival-notice/arrival-notice-query.js +10 -3
- package/dist-server/service/arrival-notice/arrival-notice-query.js.map +1 -1
- package/dist-server/service/arrival-notice/arrival-notice-types.js +2 -2
- package/dist-server/service/arrival-notice/arrival-notice-types.js.map +1 -1
- package/dist-server/service/inventory-check-item/inventory-check-item-types.js +48 -12
- package/dist-server/service/inventory-check-item/inventory-check-item-types.js.map +1 -1
- package/dist-server/service/inventory-check-item/inventory-check-item.js +56 -4
- package/dist-server/service/inventory-check-item/inventory-check-item.js.map +1 -1
- package/dist-server/service/order-inventory/order-inventory-query.js +5 -1
- package/dist-server/service/order-inventory/order-inventory-query.js.map +1 -1
- package/dist-server/service/order-inventory/order-inventory-types.js +12 -12
- package/dist-server/service/order-inventory/order-inventory-types.js.map +1 -1
- package/dist-server/service/order-inventory/order-inventory.js +189 -13
- package/dist-server/service/order-inventory/order-inventory.js.map +1 -1
- package/dist-server/service/order-package-item/order-package-item-types.js +14 -2
- package/dist-server/service/order-package-item/order-package-item-types.js.map +1 -1
- package/dist-server/service/order-package-item/order-package-item.js +28 -2
- package/dist-server/service/order-package-item/order-package-item.js.map +1 -1
- package/dist-server/service/order-product/order-product-types.js +18 -18
- package/dist-server/service/order-product/order-product-types.js.map +1 -1
- package/dist-server/service/order-product/order-product.js +104 -13
- package/dist-server/service/order-product/order-product.js.map +1 -1
- package/dist-server/service/order-tote-item/order-tote-item-types.js +2 -2
- package/dist-server/service/order-tote-item/order-tote-item-types.js.map +1 -1
- package/dist-server/service/order-tote-item/order-tote-item.js +15 -1
- package/dist-server/service/order-tote-item/order-tote-item.js.map +1 -1
- package/dist-server/service/others/other-query.js +4 -4
- package/dist-server/service/others/other-query.js.map +1 -1
- package/dist-server/service/others/other-types.js +8 -4
- package/dist-server/service/others/other-types.js.map +1 -1
- package/dist-server/service/release-good/release-good-mutation.js +35 -6
- package/dist-server/service/release-good/release-good-mutation.js.map +1 -1
- package/dist-server/service/release-good/release-good-query.js +23 -11
- package/dist-server/service/release-good/release-good-query.js.map +1 -1
- package/dist-server/service/release-good/release-good-types.js +1 -1
- package/dist-server/service/release-good/release-good-types.js.map +1 -1
- package/dist-server/utils/inventory-util.js +18 -14
- package/dist-server/utils/inventory-util.js.map +1 -1
- package/package.json +8 -8
- package/server/service/arrival-notice/arrival-notice-mutation.ts +39 -2
- package/server/service/arrival-notice/arrival-notice-query.ts +40 -68
- package/server/service/arrival-notice/arrival-notice-types.ts +4 -4
- package/server/service/inventory-check-item/inventory-check-item-types.ts +37 -10
- package/server/service/inventory-check-item/inventory-check-item.ts +52 -4
- package/server/service/order-inventory/order-inventory-query.ts +5 -0
- package/server/service/order-inventory/order-inventory-types.ts +12 -12
- package/server/service/order-inventory/order-inventory.ts +171 -13
- package/server/service/order-package-item/order-package-item-types.ts +12 -3
- package/server/service/order-package-item/order-package-item.ts +26 -2
- package/server/service/order-product/order-product-types.ts +18 -18
- package/server/service/order-product/order-product.ts +96 -12
- package/server/service/order-tote-item/order-tote-item-types.ts +3 -3
- package/server/service/order-tote-item/order-tote-item.ts +14 -1
- package/server/service/others/other-query.ts +8 -8
- package/server/service/others/other-types.ts +7 -4
- package/server/service/release-good/release-good-mutation.ts +51 -9
- package/server/service/release-good/release-good-query.ts +30 -14
- package/server/service/release-good/release-good-types.ts +1 -1
- package/server/utils/inventory-util.ts +50 -60
|
@@ -153,7 +153,18 @@ export class OrderInventory {
|
|
|
153
153
|
@Field(type => User, { nullable: true })
|
|
154
154
|
putawayBy: User
|
|
155
155
|
|
|
156
|
-
@Column({
|
|
156
|
+
@Column({
|
|
157
|
+
nullable: true,
|
|
158
|
+
type: 'decimal',
|
|
159
|
+
scale: 3,
|
|
160
|
+
transformer: {
|
|
161
|
+
to: (value: string | null) => value,
|
|
162
|
+
from: (value: string | null) => {
|
|
163
|
+
if (value === null || value === undefined) return null
|
|
164
|
+
const parsed = parseFloat(value)
|
|
165
|
+
return isNaN(parsed) ? null : parsed
|
|
166
|
+
}
|
|
167
|
+
} })
|
|
157
168
|
@Field({ nullable: true })
|
|
158
169
|
actualPackUomValue: number
|
|
159
170
|
|
|
@@ -229,7 +240,18 @@ export class OrderInventory {
|
|
|
229
240
|
@Field({ nullable: true })
|
|
230
241
|
originQty: number
|
|
231
242
|
|
|
232
|
-
@Column({
|
|
243
|
+
@Column({
|
|
244
|
+
nullable: true,
|
|
245
|
+
type: 'decimal',
|
|
246
|
+
scale: 3,
|
|
247
|
+
transformer: {
|
|
248
|
+
to: (value: string | null) => value,
|
|
249
|
+
from: (value: string | null) => {
|
|
250
|
+
if (value === null || value === undefined) return null
|
|
251
|
+
const parsed = parseFloat(value)
|
|
252
|
+
return isNaN(parsed) ? null : parsed
|
|
253
|
+
}
|
|
254
|
+
} })
|
|
233
255
|
@Field({ nullable: true })
|
|
234
256
|
inspectedQty: number
|
|
235
257
|
|
|
@@ -237,7 +259,18 @@ export class OrderInventory {
|
|
|
237
259
|
@Field({ nullable: true })
|
|
238
260
|
originUomValue: number
|
|
239
261
|
|
|
240
|
-
@Column({
|
|
262
|
+
@Column({
|
|
263
|
+
nullable: true,
|
|
264
|
+
type: 'decimal',
|
|
265
|
+
scale: 3,
|
|
266
|
+
transformer: {
|
|
267
|
+
to: (value: string | null) => value,
|
|
268
|
+
from: (value: string | null) => {
|
|
269
|
+
if (value === null || value === undefined) return null
|
|
270
|
+
const parsed = parseFloat(value)
|
|
271
|
+
return isNaN(parsed) ? null : parsed
|
|
272
|
+
}
|
|
273
|
+
} })
|
|
241
274
|
@Field({ nullable: true })
|
|
242
275
|
inspectedUomValue: number
|
|
243
276
|
|
|
@@ -270,23 +303,86 @@ export class OrderInventory {
|
|
|
270
303
|
@RelationId((orderInventory: OrderInventory) => orderInventory.binLocation)
|
|
271
304
|
binLocationId: string
|
|
272
305
|
|
|
273
|
-
@Column({
|
|
306
|
+
@Column({
|
|
307
|
+
nullable: true,
|
|
308
|
+
type: 'decimal',
|
|
309
|
+
scale: 3,
|
|
310
|
+
transformer: {
|
|
311
|
+
to: (value: string | null) => value,
|
|
312
|
+
from: (value: string | null) => {
|
|
313
|
+
if (value === null || value === undefined) return null
|
|
314
|
+
const parsed = parseFloat(value)
|
|
315
|
+
return isNaN(parsed) ? null : parsed
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
})
|
|
274
319
|
@Field({ nullable: true })
|
|
275
320
|
releaseQty: number
|
|
276
321
|
|
|
277
|
-
@Column({
|
|
322
|
+
@Column({
|
|
323
|
+
nullable: true,
|
|
324
|
+
type: 'decimal',
|
|
325
|
+
scale: 3,
|
|
326
|
+
default: 0,
|
|
327
|
+
transformer: {
|
|
328
|
+
to: (value: string | null) => value,
|
|
329
|
+
from: (value: string | null) => {
|
|
330
|
+
if (value === null || value === undefined) return null
|
|
331
|
+
const parsed = parseFloat(value)
|
|
332
|
+
return isNaN(parsed) ? null : parsed
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
})
|
|
278
336
|
@Field({ nullable: true })
|
|
279
337
|
pickedQty: number
|
|
280
338
|
|
|
281
|
-
@Column({
|
|
339
|
+
@Column({
|
|
340
|
+
nullable: true,
|
|
341
|
+
type: 'decimal',
|
|
342
|
+
scale: 3,
|
|
343
|
+
default: 0,
|
|
344
|
+
transformer: {
|
|
345
|
+
to: (value: string | null) => value,
|
|
346
|
+
from: (value: string | null) => {
|
|
347
|
+
if (value === null || value === undefined) return null
|
|
348
|
+
const parsed = parseFloat(value)
|
|
349
|
+
return isNaN(parsed) ? null : parsed
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
})
|
|
282
353
|
@Field({ nullable: true })
|
|
283
354
|
packedQty: number
|
|
284
355
|
|
|
285
|
-
@Column({
|
|
356
|
+
@Column({
|
|
357
|
+
nullable: true,
|
|
358
|
+
type: 'decimal',
|
|
359
|
+
scale: 3,
|
|
360
|
+
default: 0,
|
|
361
|
+
transformer: {
|
|
362
|
+
to: (value: string | null) => value,
|
|
363
|
+
from: (value: string | null) => {
|
|
364
|
+
if (value === null || value === undefined) return null
|
|
365
|
+
const parsed = parseFloat(value)
|
|
366
|
+
return isNaN(parsed) ? null : parsed
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
})
|
|
286
370
|
@Field({ nullable: true })
|
|
287
371
|
sortedQty: number
|
|
288
372
|
|
|
289
|
-
@Column({
|
|
373
|
+
@Column({
|
|
374
|
+
nullable: true,
|
|
375
|
+
type: 'decimal',
|
|
376
|
+
scale: 3,
|
|
377
|
+
transformer: {
|
|
378
|
+
to: (value: string | null) => value,
|
|
379
|
+
from: (value: string | null) => {
|
|
380
|
+
if (value === null || value === undefined) return null
|
|
381
|
+
const parsed = parseFloat(value)
|
|
382
|
+
return isNaN(parsed) ? null : parsed
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
})
|
|
290
386
|
@Field({ nullable: true })
|
|
291
387
|
releaseUomValue: number
|
|
292
388
|
|
|
@@ -294,23 +390,82 @@ export class OrderInventory {
|
|
|
294
390
|
@Field({ nullable: true })
|
|
295
391
|
uom: string
|
|
296
392
|
|
|
297
|
-
@Column({
|
|
393
|
+
@Column({
|
|
394
|
+
nullable: true,
|
|
395
|
+
type: 'decimal',
|
|
396
|
+
scale: 3,
|
|
397
|
+
transformer: {
|
|
398
|
+
to: (value: string | null) => value,
|
|
399
|
+
from: (value: string | null) => {
|
|
400
|
+
if (value === null || value === undefined) return null
|
|
401
|
+
const parsed = parseFloat(value)
|
|
402
|
+
return isNaN(parsed) ? null : parsed
|
|
403
|
+
}
|
|
404
|
+
}
|
|
405
|
+
})
|
|
298
406
|
@Field({ nullable: true })
|
|
299
407
|
returnQty: number
|
|
300
408
|
|
|
301
|
-
@Column({
|
|
409
|
+
@Column({
|
|
410
|
+
nullable: true,
|
|
411
|
+
type: 'decimal',
|
|
412
|
+
scale: 3,
|
|
413
|
+
transformer: {
|
|
414
|
+
to: (value: string | null) => value,
|
|
415
|
+
from: (value: string | null) => {
|
|
416
|
+
if (value === null || value === undefined) return null
|
|
417
|
+
const parsed = parseFloat(value)
|
|
418
|
+
return isNaN(parsed) ? null : parsed
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
})
|
|
302
422
|
@Field({ nullable: true })
|
|
303
423
|
returnUomValue: number
|
|
304
424
|
|
|
305
|
-
@Column({
|
|
425
|
+
@Column({
|
|
426
|
+
nullable: true,
|
|
427
|
+
type: 'decimal',
|
|
428
|
+
scale: 3,
|
|
429
|
+
transformer: {
|
|
430
|
+
to: (value: string | null) => value,
|
|
431
|
+
from: (value: string | null) => {
|
|
432
|
+
if (value === null || value === undefined) return null
|
|
433
|
+
const parsed = parseFloat(value)
|
|
434
|
+
return isNaN(parsed) ? null : parsed
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
})
|
|
306
438
|
@Field({ nullable: true })
|
|
307
439
|
returnToLocationQty: number
|
|
308
440
|
|
|
309
|
-
@Column({
|
|
441
|
+
@Column({
|
|
442
|
+
nullable: true,
|
|
443
|
+
type: 'decimal',
|
|
444
|
+
scale: 3,
|
|
445
|
+
transformer: {
|
|
446
|
+
to: (value: string | null) => value,
|
|
447
|
+
from: (value: string | null) => {
|
|
448
|
+
if (value === null || value === undefined) return null
|
|
449
|
+
const parsed = parseFloat(value)
|
|
450
|
+
return isNaN(parsed) ? null : parsed
|
|
451
|
+
}
|
|
452
|
+
}
|
|
453
|
+
})
|
|
310
454
|
@Field({ nullable: true })
|
|
311
455
|
returnToLocationUomValue: number
|
|
312
456
|
|
|
313
|
-
@Column({
|
|
457
|
+
@Column({
|
|
458
|
+
nullable: true,
|
|
459
|
+
type: 'decimal',
|
|
460
|
+
scale: 3,
|
|
461
|
+
transformer: {
|
|
462
|
+
to: (value: string | null) => value,
|
|
463
|
+
from: (value: string | null) => {
|
|
464
|
+
if (value === null || value === undefined) return null
|
|
465
|
+
const parsed = parseFloat(value)
|
|
466
|
+
return isNaN(parsed) ? null : parsed
|
|
467
|
+
}
|
|
468
|
+
} })
|
|
314
469
|
@Field({ nullable: true })
|
|
315
470
|
actualPackQty: number
|
|
316
471
|
|
|
@@ -490,6 +645,9 @@ export class OrderInventory {
|
|
|
490
645
|
@Field({ nullable: true })
|
|
491
646
|
pickingBin: string
|
|
492
647
|
|
|
648
|
+
@Field({ nullable: true })
|
|
649
|
+
isInventoryDecimal: boolean
|
|
650
|
+
|
|
493
651
|
@Field(type => [ProductDetail], { nullable: true })
|
|
494
652
|
productDetails: ProductDetail[]
|
|
495
653
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Field, ID, InputType, Int, ObjectType } from 'type-graphql'
|
|
1
|
+
import { Field, Float, ID, InputType, Int, ObjectType } from 'type-graphql'
|
|
2
2
|
|
|
3
3
|
import { OrderPackageItem } from './order-package-item'
|
|
4
4
|
|
|
@@ -9,6 +9,12 @@ export class NewOrderPackageItem {
|
|
|
9
9
|
|
|
10
10
|
@Field({ nullable: true })
|
|
11
11
|
status?: string
|
|
12
|
+
|
|
13
|
+
@Field(type => Float, { nullable: true })
|
|
14
|
+
releaseQty?: number
|
|
15
|
+
|
|
16
|
+
@Field(type => Float, { nullable: true })
|
|
17
|
+
packedQty?: number
|
|
12
18
|
}
|
|
13
19
|
|
|
14
20
|
@InputType()
|
|
@@ -19,9 +25,12 @@ export class OrderPackageItemPatch {
|
|
|
19
25
|
@Field({ nullable: true })
|
|
20
26
|
name?: string
|
|
21
27
|
|
|
22
|
-
@Field({ nullable: true })
|
|
28
|
+
@Field(type => Float, { nullable: true })
|
|
23
29
|
releaseQty?: number
|
|
24
30
|
|
|
31
|
+
@Field(type => Float, { nullable: true })
|
|
32
|
+
packedQty?: number
|
|
33
|
+
|
|
25
34
|
@Field({ nullable: true })
|
|
26
35
|
status?: string
|
|
27
36
|
|
|
@@ -46,6 +55,6 @@ export class TrackingInformation {
|
|
|
46
55
|
@Field(type => String)
|
|
47
56
|
sku: string
|
|
48
57
|
|
|
49
|
-
@Field(type =>
|
|
58
|
+
@Field(type => Float)
|
|
50
59
|
releaseQty: number
|
|
51
60
|
}
|
|
@@ -70,11 +70,35 @@ export class OrderPackageItem {
|
|
|
70
70
|
@Field({ nullable: true })
|
|
71
71
|
status?: string
|
|
72
72
|
|
|
73
|
-
@Column({
|
|
73
|
+
@Column({
|
|
74
|
+
type: 'decimal',
|
|
75
|
+
scale: 3,
|
|
76
|
+
nullable: true,
|
|
77
|
+
transformer: {
|
|
78
|
+
to: (value: string | null) => value,
|
|
79
|
+
from: (value: string | null) => {
|
|
80
|
+
if (value === null || value === undefined) return null
|
|
81
|
+
const parsed = parseFloat(value)
|
|
82
|
+
return isNaN(parsed) ? null : parsed
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
})
|
|
74
86
|
@Field({ nullable: true })
|
|
75
87
|
releaseQty: number
|
|
76
88
|
|
|
77
|
-
@Column({
|
|
89
|
+
@Column({
|
|
90
|
+
type: 'decimal',
|
|
91
|
+
scale: 3,
|
|
92
|
+
nullable: true,
|
|
93
|
+
transformer: {
|
|
94
|
+
to: (value: string | null) => value,
|
|
95
|
+
from: (value: string | null) => {
|
|
96
|
+
if (value === null || value === undefined) return null
|
|
97
|
+
const parsed = parseFloat(value)
|
|
98
|
+
return isNaN(parsed) ? null : parsed
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
})
|
|
78
102
|
@Field({ nullable: true })
|
|
79
103
|
packedQty: number
|
|
80
104
|
|
|
@@ -132,25 +132,25 @@ export class OrderProductPatch {
|
|
|
132
132
|
@Field(type => Float, { nullable: true })
|
|
133
133
|
unpackUomValue: number
|
|
134
134
|
|
|
135
|
-
@Field(type =>
|
|
135
|
+
@Field(type => Float, { nullable: true })
|
|
136
136
|
packQty: number
|
|
137
137
|
|
|
138
|
-
@Field(type =>
|
|
138
|
+
@Field(type => Float, { nullable: true })
|
|
139
139
|
adjustedPackQty: number
|
|
140
140
|
|
|
141
|
-
@Field(type =>
|
|
141
|
+
@Field(type => Float, { nullable: true })
|
|
142
142
|
actualPackQty: number
|
|
143
143
|
|
|
144
|
-
@Field(type =>
|
|
144
|
+
@Field(type => Float, { nullable: true })
|
|
145
145
|
unpackQty: number
|
|
146
146
|
|
|
147
|
-
@Field(type =>
|
|
147
|
+
@Field(type => Float, { nullable: true })
|
|
148
148
|
palletQty: number
|
|
149
149
|
|
|
150
|
-
@Field(type =>
|
|
150
|
+
@Field(type => Float, { nullable: true })
|
|
151
151
|
actualPalletQty: number
|
|
152
152
|
|
|
153
|
-
@Field(type =>
|
|
153
|
+
@Field(type => Float, { nullable: true })
|
|
154
154
|
adjustedPalletQty: number
|
|
155
155
|
|
|
156
156
|
@Field({ nullable: true })
|
|
@@ -162,7 +162,7 @@ export class OrderProductPatch {
|
|
|
162
162
|
@Field({ nullable: true })
|
|
163
163
|
totalUomValue: string
|
|
164
164
|
|
|
165
|
-
@Field(type =>
|
|
165
|
+
@Field(type => Float, { nullable: true })
|
|
166
166
|
releaseQty: number
|
|
167
167
|
|
|
168
168
|
@Field(type => Float, { nullable: true })
|
|
@@ -282,37 +282,37 @@ export class NewOrderProduct {
|
|
|
282
282
|
@Field(type => Float, { nullable: true })
|
|
283
283
|
unpackUomValue: number
|
|
284
284
|
|
|
285
|
-
@Field(type =>
|
|
285
|
+
@Field(type => Float, { nullable: true })
|
|
286
286
|
packQty: number
|
|
287
287
|
|
|
288
|
-
@Field(type =>
|
|
288
|
+
@Field(type => Float, { nullable: true })
|
|
289
289
|
adjustedPackQty: number
|
|
290
290
|
|
|
291
|
-
@Field(type =>
|
|
291
|
+
@Field(type => Float, { nullable: true })
|
|
292
292
|
actualPackQty: number
|
|
293
293
|
|
|
294
|
-
@Field(type =>
|
|
294
|
+
@Field(type => Float, { nullable: true })
|
|
295
295
|
unpackQty: number
|
|
296
296
|
|
|
297
|
-
@Field(type =>
|
|
297
|
+
@Field(type => Float, { nullable: true })
|
|
298
298
|
palletQty: number
|
|
299
299
|
|
|
300
|
-
@Field(type =>
|
|
300
|
+
@Field(type => Float, { nullable: true })
|
|
301
301
|
actualPalletQty: number
|
|
302
302
|
|
|
303
|
-
@Field(type =>
|
|
303
|
+
@Field(type => Float, { nullable: true })
|
|
304
304
|
adjustedPalletQty: number
|
|
305
305
|
|
|
306
306
|
@Field({ nullable: true })
|
|
307
|
-
|
|
307
|
+
adjustedTotalUomValue: string
|
|
308
308
|
|
|
309
309
|
@Field({ nullable: true })
|
|
310
|
-
|
|
310
|
+
palletId: string
|
|
311
311
|
|
|
312
312
|
@Field({ nullable: true })
|
|
313
313
|
totalUomValue: string
|
|
314
314
|
|
|
315
|
-
@Field(type =>
|
|
315
|
+
@Field(type => Float, { nullable: true })
|
|
316
316
|
releaseQty: number
|
|
317
317
|
|
|
318
318
|
@Field(type => Float, { nullable: true })
|
|
@@ -254,25 +254,101 @@ export class OrderProduct {
|
|
|
254
254
|
@Field({ nullable: true })
|
|
255
255
|
adjustedUomValue: number
|
|
256
256
|
|
|
257
|
-
@Column(
|
|
257
|
+
@Column({
|
|
258
|
+
nullable: true,
|
|
259
|
+
type: 'decimal',
|
|
260
|
+
scale: 3,
|
|
261
|
+
transformer: {
|
|
262
|
+
to: (value: string | null) => value,
|
|
263
|
+
from: (value: string | null) => {
|
|
264
|
+
if (value === null || value === undefined) return null
|
|
265
|
+
const parsed = parseFloat(value)
|
|
266
|
+
return isNaN(parsed) ? null : parsed
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
})
|
|
270
|
+
@Field({ nullable: true })
|
|
271
|
+
unpackQty: number
|
|
272
|
+
|
|
273
|
+
@Column({
|
|
274
|
+
nullable: true,
|
|
275
|
+
type: 'decimal',
|
|
276
|
+
scale: 3,
|
|
277
|
+
transformer: {
|
|
278
|
+
to: (value: string | null) => value,
|
|
279
|
+
from: (value: string | null) => {
|
|
280
|
+
if (value === null || value === undefined) return null
|
|
281
|
+
const parsed = parseFloat(value)
|
|
282
|
+
return isNaN(parsed) ? null : parsed
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
})
|
|
258
286
|
@Field({ nullable: true })
|
|
259
287
|
unpackUomValue: number
|
|
260
288
|
|
|
261
|
-
@Column(
|
|
262
|
-
|
|
289
|
+
@Column({
|
|
290
|
+
nullable: true,
|
|
291
|
+
type: 'decimal',
|
|
292
|
+
scale: 3,
|
|
293
|
+
transformer: {
|
|
294
|
+
to: (value: string | null) => value,
|
|
295
|
+
from: (value: string | null) => {
|
|
296
|
+
if (value === null || value === undefined) return null
|
|
297
|
+
const parsed = parseFloat(value)
|
|
298
|
+
return isNaN(parsed) ? null : parsed
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
})
|
|
302
|
+
@Field({ nullable: true })
|
|
263
303
|
packQty: number
|
|
264
304
|
|
|
265
|
-
@Column({
|
|
305
|
+
@Column({
|
|
306
|
+
nullable: true,
|
|
307
|
+
type: 'decimal',
|
|
308
|
+
scale: 3,
|
|
309
|
+
transformer: {
|
|
310
|
+
to: (value: string | null) => value,
|
|
311
|
+
from: (value: string | null) => {
|
|
312
|
+
if (value === null || value === undefined) return null
|
|
313
|
+
const parsed = parseFloat(value)
|
|
314
|
+
return isNaN(parsed) ? null : parsed
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
})
|
|
266
318
|
@Field({ nullable: true })
|
|
267
319
|
adjustedPackQty: number
|
|
268
320
|
|
|
269
|
-
@Column({
|
|
321
|
+
@Column({
|
|
322
|
+
nullable: true,
|
|
323
|
+
type: 'decimal',
|
|
324
|
+
scale: 3,
|
|
325
|
+
transformer: {
|
|
326
|
+
to: (value: string | null) => value,
|
|
327
|
+
from: (value: string | null) => {
|
|
328
|
+
if (value === null || value === undefined) return null
|
|
329
|
+
const parsed = parseFloat(value)
|
|
330
|
+
return isNaN(parsed) ? null : parsed
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
})
|
|
270
334
|
@Field({ nullable: true })
|
|
271
335
|
actualPackQty: number
|
|
272
336
|
|
|
273
|
-
@Column(
|
|
337
|
+
@Column({
|
|
338
|
+
nullable: true,
|
|
339
|
+
type: 'decimal',
|
|
340
|
+
scale: 3,
|
|
341
|
+
transformer: {
|
|
342
|
+
to: (value: string | null) => value,
|
|
343
|
+
from: (value: string | null) => {
|
|
344
|
+
if (value === null || value === undefined) return null
|
|
345
|
+
const parsed = parseFloat(value)
|
|
346
|
+
return isNaN(parsed) ? null : parsed
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
})
|
|
274
350
|
@Field({ nullable: true })
|
|
275
|
-
|
|
351
|
+
releaseUomValue: number
|
|
276
352
|
|
|
277
353
|
@Column('float', { nullable: true })
|
|
278
354
|
@Field({ nullable: true })
|
|
@@ -326,14 +402,22 @@ export class OrderProduct {
|
|
|
326
402
|
@Field({ nullable: true })
|
|
327
403
|
adjustedTotalUomValue: string
|
|
328
404
|
|
|
329
|
-
@Column({
|
|
405
|
+
@Column({
|
|
406
|
+
nullable: true,
|
|
407
|
+
type: 'decimal',
|
|
408
|
+
scale: 3,
|
|
409
|
+
transformer: {
|
|
410
|
+
to: (value: string | null) => value,
|
|
411
|
+
from: (value: string | null) => {
|
|
412
|
+
if (value === null || value === undefined) return null
|
|
413
|
+
const parsed = parseFloat(value)
|
|
414
|
+
return isNaN(parsed) ? null : parsed
|
|
415
|
+
}
|
|
416
|
+
}
|
|
417
|
+
})
|
|
330
418
|
@Field({ nullable: true })
|
|
331
419
|
releaseQty: number
|
|
332
420
|
|
|
333
|
-
@Column({ nullable: true, type: 'float' })
|
|
334
|
-
@Field({ nullable: true })
|
|
335
|
-
releaseUomValue: number
|
|
336
|
-
|
|
337
421
|
@Column({ nullable: true })
|
|
338
422
|
@Field({ nullable: true })
|
|
339
423
|
remark: string
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Field, InputType, Int, ObjectType } from 'type-graphql'
|
|
1
|
+
import { Field, Float, InputType, Int, ObjectType } from 'type-graphql'
|
|
2
2
|
|
|
3
3
|
import { ObjectRef } from '@things-factory/shell'
|
|
4
4
|
|
|
@@ -30,7 +30,7 @@ export class NewOrderToteItem {
|
|
|
30
30
|
@Field(type => ObjectRef, { nullable: true })
|
|
31
31
|
orderTote: ObjectRef
|
|
32
32
|
|
|
33
|
-
@Field(type =>
|
|
33
|
+
@Field(type => Float, { nullable: true })
|
|
34
34
|
qty: number
|
|
35
35
|
}
|
|
36
36
|
|
|
@@ -51,6 +51,6 @@ export class OrderToteItemPatch {
|
|
|
51
51
|
@Field(type => ObjectRef, { nullable: true })
|
|
52
52
|
orderTote: ObjectRef
|
|
53
53
|
|
|
54
|
-
@Field(type =>
|
|
54
|
+
@Field(type => Float, { nullable: true })
|
|
55
55
|
qty: number
|
|
56
56
|
}
|
|
@@ -47,7 +47,20 @@ export class OrderToteItem {
|
|
|
47
47
|
@RelationId((orderToteItem: OrderToteItem) => orderToteItem.orderTote)
|
|
48
48
|
orderToteId: string
|
|
49
49
|
|
|
50
|
-
@Column(
|
|
50
|
+
@Column({
|
|
51
|
+
type: 'decimal',
|
|
52
|
+
scale: 3,
|
|
53
|
+
default: 0,
|
|
54
|
+
nullable: true,
|
|
55
|
+
transformer: {
|
|
56
|
+
to: (value: string | null) => value,
|
|
57
|
+
from: (value: string | null) => {
|
|
58
|
+
if (value === null || value === undefined) return null
|
|
59
|
+
const parsed = parseFloat(value)
|
|
60
|
+
return isNaN(parsed) ? null : parsed
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
})
|
|
51
64
|
@Field({ nullable: true })
|
|
52
65
|
qty?: number
|
|
53
66
|
|
|
@@ -212,11 +212,11 @@ export class OtherQuery {
|
|
|
212
212
|
productDetail: availableItem ? { id: availableItem.productDetailId } : null,
|
|
213
213
|
inventory: availableItem
|
|
214
214
|
? {
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
215
|
+
...availableItem,
|
|
216
|
+
remainQty: availableItem.remainQty,
|
|
217
|
+
remainUomValue: availableItem.remainUomValue,
|
|
218
|
+
remainUomValueWithUom: availableItem.remainUomValueWithUom || ''
|
|
219
|
+
}
|
|
220
220
|
: null,
|
|
221
221
|
productId: availableItem ? availableItem.productId : null,
|
|
222
222
|
productDetailID: availableItem ? availableItem.productDetailId : null,
|
|
@@ -231,13 +231,13 @@ export class OtherQuery {
|
|
|
231
231
|
packingType: availableItem ? availableItem.packingType : orderInventory.packingType,
|
|
232
232
|
packingSize: availableItem ? availableItem.packingSize : 1,
|
|
233
233
|
releaseQty: orderInventory.releaseQty
|
|
234
|
-
? Number.
|
|
234
|
+
? !Number.isNaN(orderInventory.releaseQty)
|
|
235
235
|
? orderInventory.releaseQty
|
|
236
236
|
: null
|
|
237
237
|
: null,
|
|
238
238
|
releaseUomValue: availableItem
|
|
239
|
-
? Number.
|
|
240
|
-
? parseFloat((orderInventory.releaseQty * packageUomValue).toFixed(
|
|
239
|
+
? !Number.isNaN(orderInventory.releaseQty)
|
|
240
|
+
? parseFloat((orderInventory.releaseQty * packageUomValue).toFixed(3))
|
|
241
241
|
: null
|
|
242
242
|
: null,
|
|
243
243
|
groupType: availableItem ? availableItem.groupType : null,
|
|
@@ -37,22 +37,25 @@ export class InventoryProductGroup {
|
|
|
37
37
|
@Field({ nullable: true })
|
|
38
38
|
productBrand: string
|
|
39
39
|
|
|
40
|
+
@Field({ nullable: true })
|
|
41
|
+
isInventoryDecimal: boolean
|
|
42
|
+
|
|
40
43
|
@Field({ nullable: true })
|
|
41
44
|
packingType: string
|
|
42
45
|
|
|
43
46
|
@Field(type => Float, { nullable: true })
|
|
44
47
|
packingSize: number
|
|
45
48
|
|
|
46
|
-
@Field(type =>
|
|
49
|
+
@Field(type => Float, { nullable: true })
|
|
47
50
|
packQty: number
|
|
48
51
|
|
|
49
|
-
@Field(type =>
|
|
52
|
+
@Field(type => Float, { nullable: true })
|
|
50
53
|
totalQty: number
|
|
51
54
|
|
|
52
|
-
@Field(type =>
|
|
55
|
+
@Field(type => Float, { nullable: true })
|
|
53
56
|
totalLockedQty: number
|
|
54
57
|
|
|
55
|
-
@Field(type =>
|
|
58
|
+
@Field(type => Float, { nullable: true })
|
|
56
59
|
totalLockedUomValue: number
|
|
57
60
|
|
|
58
61
|
@Field(type => Int, { nullable: true })
|