@things-factory/worksheet-base 4.3.534 → 4.3.536
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/controllers/inbound/putaway-worksheet-controller.js +3 -1
- package/dist-server/controllers/inbound/putaway-worksheet-controller.js.map +1 -1
- package/dist-server/controllers/outbound/loading-worksheet-controller.js +5 -2
- package/dist-server/controllers/outbound/loading-worksheet-controller.js.map +1 -1
- package/dist-server/controllers/outbound/packing-worksheet-controller.js +5 -0
- package/dist-server/controllers/outbound/packing-worksheet-controller.js.map +1 -1
- package/dist-server/controllers/outbound/picking-worksheet-controller.js +11 -0
- package/dist-server/controllers/outbound/picking-worksheet-controller.js.map +1 -1
- package/dist-server/controllers/outbound/sorting-worksheet-controller.js +7 -0
- package/dist-server/controllers/outbound/sorting-worksheet-controller.js.map +1 -1
- package/dist-server/controllers/worksheet-controller.js +14 -1
- package/dist-server/controllers/worksheet-controller.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/picking/complete-picking.js +12 -5
- package/dist-server/graphql/resolvers/worksheet/picking/complete-picking.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/proceed-extra-products.js +2 -2
- package/dist-server/graphql/resolvers/worksheet/proceed-extra-products.js.map +1 -1
- package/dist-server/graphql/resolvers/worksheet/unloading/complete-unloading.js +8 -2
- package/dist-server/graphql/resolvers/worksheet/unloading/complete-unloading.js.map +1 -1
- package/package.json +20 -20
- package/server/controllers/inbound/putaway-worksheet-controller.ts +11 -4
- package/server/controllers/outbound/loading-worksheet-controller.ts +22 -16
- package/server/controllers/outbound/packing-worksheet-controller.ts +16 -3
- package/server/controllers/outbound/picking-worksheet-controller.ts +16 -1
- package/server/controllers/outbound/sorting-worksheet-controller.ts +13 -18
- package/server/controllers/worksheet-controller.ts +21 -33
- package/server/graphql/resolvers/worksheet/picking/complete-picking.ts +21 -40
- package/server/graphql/resolvers/worksheet/proceed-extra-products.ts +2 -2
- package/server/graphql/resolvers/worksheet/unloading/complete-unloading.ts +16 -5
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Equal, In, Not } from 'typeorm'
|
|
1
|
+
import { Equal, getConnection, In, Not } from 'typeorm'
|
|
2
2
|
|
|
3
3
|
import { ApplicationType } from '@things-factory/auth-base'
|
|
4
4
|
import { logger } from '@things-factory/env'
|
|
@@ -16,6 +16,7 @@ import {
|
|
|
16
16
|
WebspertController,
|
|
17
17
|
ReleaseGood
|
|
18
18
|
} from '@things-factory/sales-base'
|
|
19
|
+
import { webhookHandler, WebhookEvents } from '@things-factory/integration-base'
|
|
19
20
|
import {
|
|
20
21
|
Inventory,
|
|
21
22
|
INVENTORY_ITEM_SOURCE,
|
|
@@ -77,7 +78,9 @@ export class PackingWorksheetController extends VasWorksheetController {
|
|
|
77
78
|
'worksheetDetails.targetInventory'
|
|
78
79
|
])
|
|
79
80
|
|
|
80
|
-
if (
|
|
81
|
+
if (
|
|
82
|
+
[ORDER_INVENTORY_STATUS.PENDING_CANCEL, ORDER_INVENTORY_STATUS.CANCELLED].includes(worksheet?.releaseGood?.status)
|
|
83
|
+
) {
|
|
81
84
|
throw new Error(`order status for ${worksheet.releaseGood.name}:${worksheet?.releaseGood?.status}`)
|
|
82
85
|
}
|
|
83
86
|
|
|
@@ -169,6 +172,10 @@ export class PackingWorksheetController extends VasWorksheetController {
|
|
|
169
172
|
break
|
|
170
173
|
}
|
|
171
174
|
|
|
175
|
+
releaseGood.domain = this.domain
|
|
176
|
+
|
|
177
|
+
webhookHandler(releaseGood, releaseGood.bizplace, WebhookEvents.PackingStarted)
|
|
178
|
+
|
|
172
179
|
return worksheet
|
|
173
180
|
}
|
|
174
181
|
|
|
@@ -532,7 +539,10 @@ export class PackingWorksheetController extends VasWorksheetController {
|
|
|
532
539
|
|
|
533
540
|
await this.trxMgr
|
|
534
541
|
.getRepository(OrderPackage)
|
|
535
|
-
.update(
|
|
542
|
+
.update(
|
|
543
|
+
{ id: orderPackage.id },
|
|
544
|
+
{ status: ORDER_STATUS.DONE, updater: this.user, updatedAt: new Date(), grossWeight: grossWeight }
|
|
545
|
+
)
|
|
536
546
|
|
|
537
547
|
let releaseGood: ReleaseGood = await this.findRefOrder(
|
|
538
548
|
ReleaseGood,
|
|
@@ -580,6 +590,9 @@ export class PackingWorksheetController extends VasWorksheetController {
|
|
|
580
590
|
// { trackingNo: `${releaseGood?.trackingNo ? releaseGood?.trackingNo.split(',').push(orderPackage.trackingNo).join(',') : orderPackage.trackingNo}` }
|
|
581
591
|
// )
|
|
582
592
|
// }
|
|
593
|
+
releaseGood.domain = this.domain
|
|
594
|
+
|
|
595
|
+
webhookHandler(releaseGood, releaseGood.bizplace, WebhookEvents.PackingCompleted)
|
|
583
596
|
|
|
584
597
|
return await this.completeWorksheet(worksheet, orderStatus)
|
|
585
598
|
} else {
|
|
@@ -46,7 +46,7 @@ import {
|
|
|
46
46
|
Tote,
|
|
47
47
|
TOTE_STATUS
|
|
48
48
|
} from '@things-factory/warehouse-base'
|
|
49
|
-
|
|
49
|
+
import { webhookHandler, WebhookEvents } from '@things-factory/integration-base'
|
|
50
50
|
import { TASK_NUMBER_RULE_TYPE, TASK_NUMBER_SETTING_KEY, WORKSHEET_STATUS, WORKSHEET_TYPE } from '../../constants'
|
|
51
51
|
import { SellercraftController } from '../../controllers'
|
|
52
52
|
import { ActiveWorksheetPickingView, Worksheet, WorksheetDetail } from '../../entities'
|
|
@@ -284,6 +284,8 @@ export class PickingWorksheetController extends VasWorksheetController {
|
|
|
284
284
|
releaseGood.updater = this.user
|
|
285
285
|
this.updateRefOrder(releaseGood)
|
|
286
286
|
|
|
287
|
+
webhookHandler(releaseGood, releaseGood.bizplace, WebhookEvents.PickingStarted)
|
|
288
|
+
|
|
287
289
|
worksheet = await this.activateWorksheet(worksheet, worksheetDetails, [])
|
|
288
290
|
|
|
289
291
|
// VAS will be activated after PICKING is completed
|
|
@@ -619,6 +621,10 @@ export class PickingWorksheetController extends VasWorksheetController {
|
|
|
619
621
|
await this.trxMgr.getRepository(ReleaseGood).save(releaseGoods)
|
|
620
622
|
}
|
|
621
623
|
|
|
624
|
+
for (const releaseGood of releaseGoods) {
|
|
625
|
+
webhookHandler(releaseGood, releaseGood.bizplace, WebhookEvents.PickingStarted)
|
|
626
|
+
}
|
|
627
|
+
|
|
622
628
|
return worksheet
|
|
623
629
|
}
|
|
624
630
|
|
|
@@ -1665,6 +1671,8 @@ export class PickingWorksheetController extends VasWorksheetController {
|
|
|
1665
1671
|
}
|
|
1666
1672
|
}
|
|
1667
1673
|
|
|
1674
|
+
webhookHandler(releaseGood, releaseGood.bizplace, WebhookEvents.PickingCompleted)
|
|
1675
|
+
|
|
1668
1676
|
return await this.completeWorksheet(worksheet, orderStatus)
|
|
1669
1677
|
}
|
|
1670
1678
|
|
|
@@ -1746,6 +1754,13 @@ export class PickingWorksheetController extends VasWorksheetController {
|
|
|
1746
1754
|
|
|
1747
1755
|
await this.trxMgr.getRepository(ReleaseGood).save(releaseGoods)
|
|
1748
1756
|
|
|
1757
|
+
for (let releaseGood of releaseGoods) {
|
|
1758
|
+
releaseGood.domain = this.domain
|
|
1759
|
+
releaseGood.bizplace = worksheet.bizplace
|
|
1760
|
+
|
|
1761
|
+
webhookHandler(releaseGood, releaseGood.bizplace, WebhookEvents.PickingCompleted)
|
|
1762
|
+
}
|
|
1763
|
+
|
|
1749
1764
|
return worksheet
|
|
1750
1765
|
}
|
|
1751
1766
|
|
|
@@ -1,13 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
} from 'typeorm'
|
|
5
|
-
|
|
6
|
-
import {
|
|
7
|
-
Product,
|
|
8
|
-
ProductBarcode,
|
|
9
|
-
ProductDetail
|
|
10
|
-
} from '@things-factory/product-base'
|
|
1
|
+
import { In, IsNull } from 'typeorm'
|
|
2
|
+
import { webhookHandler, WebhookEvents } from '@things-factory/integration-base'
|
|
3
|
+
import { Product, ProductBarcode, ProductDetail } from '@things-factory/product-base'
|
|
11
4
|
import {
|
|
12
5
|
ORDER_INVENTORY_STATUS,
|
|
13
6
|
ORDER_STATUS,
|
|
@@ -28,14 +21,8 @@ import {
|
|
|
28
21
|
TOTE_STATUS
|
|
29
22
|
} from '@things-factory/warehouse-base'
|
|
30
23
|
|
|
31
|
-
import {
|
|
32
|
-
|
|
33
|
-
WORKSHEET_TYPE
|
|
34
|
-
} from '../../constants'
|
|
35
|
-
import {
|
|
36
|
-
Worksheet,
|
|
37
|
-
WorksheetDetail
|
|
38
|
-
} from '../../entities'
|
|
24
|
+
import { WORKSHEET_STATUS, WORKSHEET_TYPE } from '../../constants'
|
|
25
|
+
import { Worksheet, WorksheetDetail } from '../../entities'
|
|
39
26
|
import { VasWorksheetController } from '../vas/vas-worksheet-controller'
|
|
40
27
|
|
|
41
28
|
export class SortingWorksheetController extends VasWorksheetController {
|
|
@@ -505,6 +492,14 @@ export class SortingWorksheetController extends VasWorksheetController {
|
|
|
505
492
|
worksheet.updater = this.user
|
|
506
493
|
worksheet = await this.trxMgr.getRepository(Worksheet).save(worksheet)
|
|
507
494
|
|
|
495
|
+
const releaseGoods: ReleaseGood[] = await this.trxMgr
|
|
496
|
+
.getRepository(ReleaseGood)
|
|
497
|
+
.find({ where: { id: In(releaseGoodIds) }, relations: ['domain', 'bizplace'] })
|
|
498
|
+
|
|
499
|
+
for (let releaseGood of releaseGoods) {
|
|
500
|
+
webhookHandler(releaseGood, releaseGood.bizplace, WebhookEvents.LoadingStarted)
|
|
501
|
+
}
|
|
502
|
+
|
|
508
503
|
return worksheet
|
|
509
504
|
}
|
|
510
505
|
|
|
@@ -1,25 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
getRepository,
|
|
7
|
-
In,
|
|
8
|
-
Not
|
|
9
|
-
} from 'typeorm'
|
|
10
|
-
|
|
11
|
-
import {
|
|
12
|
-
Role,
|
|
13
|
-
User
|
|
14
|
-
} from '@things-factory/auth-base'
|
|
15
|
-
import {
|
|
16
|
-
Bizplace,
|
|
17
|
-
getDomainUsers
|
|
18
|
-
} from '@things-factory/biz-base'
|
|
19
|
-
import {
|
|
20
|
-
Product,
|
|
21
|
-
ProductDetail
|
|
22
|
-
} from '@things-factory/product-base'
|
|
1
|
+
import { EntityManager, EntitySchema, Equal, FindOneOptions, getRepository, In, Not, getConnection } from 'typeorm'
|
|
2
|
+
import { webhookHandler, WebhookEvents } from '@things-factory/integration-base'
|
|
3
|
+
import { Role, User } from '@things-factory/auth-base'
|
|
4
|
+
import { Bizplace, getDomainUsers } from '@things-factory/biz-base'
|
|
5
|
+
import { Product, ProductDetail } from '@things-factory/product-base'
|
|
23
6
|
import {
|
|
24
7
|
ArrivalNotice,
|
|
25
8
|
DeliveryOrder,
|
|
@@ -45,14 +28,8 @@ import {
|
|
|
45
28
|
Pallet
|
|
46
29
|
} from '@things-factory/warehouse-base'
|
|
47
30
|
|
|
48
|
-
import {
|
|
49
|
-
|
|
50
|
-
WORKSHEET_TYPE
|
|
51
|
-
} from '../constants'
|
|
52
|
-
import {
|
|
53
|
-
Worksheet,
|
|
54
|
-
WorksheetDetail
|
|
55
|
-
} from '../entities'
|
|
31
|
+
import { WORKSHEET_STATUS, WORKSHEET_TYPE } from '../constants'
|
|
32
|
+
import { Worksheet, WorksheetDetail } from '../entities'
|
|
56
33
|
import { WorksheetNoGenerator } from '../utils'
|
|
57
34
|
|
|
58
35
|
export type ReferenceOrderType =
|
|
@@ -774,7 +751,6 @@ export class WorksheetController {
|
|
|
774
751
|
changedWorksheetDetails: Partial<WorksheetDetail>[],
|
|
775
752
|
tx?: EntityManager
|
|
776
753
|
): Promise<Worksheet> {
|
|
777
|
-
|
|
778
754
|
const transaction = tx ? tx : this.trxMgr
|
|
779
755
|
|
|
780
756
|
if (!worksheet.id || worksheetDetails.some((wsd: WorksheetDetail) => !wsd.id)) {
|
|
@@ -786,7 +762,6 @@ export class WorksheetController {
|
|
|
786
762
|
worksheet.updater = this.user
|
|
787
763
|
worksheet = await transaction.getRepository(Worksheet).save(worksheet)
|
|
788
764
|
|
|
789
|
-
|
|
790
765
|
worksheetDetails = this.renewWorksheetDetails(worksheetDetails, changedWorksheetDetails, 'name', {
|
|
791
766
|
status: WORKSHEET_STATUS.EXECUTING,
|
|
792
767
|
updater: this.user
|
|
@@ -886,6 +861,10 @@ export class WorksheetController {
|
|
|
886
861
|
refOrder.status = updatedRefOrderStatus
|
|
887
862
|
refOrder.updater = this.user
|
|
888
863
|
await this.updateRefOrder(refOrder)
|
|
864
|
+
|
|
865
|
+
if (!(worksheetType === WORKSHEET_TYPE.PUTAWAY) && updatedRefOrderStatus === 'DONE') {
|
|
866
|
+
webhookHandler(refOrder, refOrder.bizplace, WebhookEvents.ReleaseOrderCompleted)
|
|
867
|
+
}
|
|
889
868
|
}
|
|
890
869
|
|
|
891
870
|
return worksheet
|
|
@@ -1029,7 +1008,16 @@ export class WorksheetController {
|
|
|
1029
1008
|
null
|
|
1030
1009
|
if (!refOrder) {
|
|
1031
1010
|
const wsWithRefOrd: Worksheet = await this.trxMgr.getRepository(Worksheet).findOne(worksheet.id, {
|
|
1032
|
-
relations: [
|
|
1011
|
+
relations: [
|
|
1012
|
+
'arrivalNotice',
|
|
1013
|
+
'releaseGood',
|
|
1014
|
+
'releaseGood.domain',
|
|
1015
|
+
'releaseGood.bizplace',
|
|
1016
|
+
'vasOrder',
|
|
1017
|
+
'inventoryCheck',
|
|
1018
|
+
'returnOrder',
|
|
1019
|
+
'replenishment'
|
|
1020
|
+
]
|
|
1033
1021
|
})
|
|
1034
1022
|
|
|
1035
1023
|
refOrder =
|
|
@@ -1,34 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
} from 'typeorm'
|
|
6
|
-
|
|
7
|
-
import {
|
|
8
|
-
ApplicationType,
|
|
9
|
-
User
|
|
10
|
-
} from '@things-factory/auth-base'
|
|
11
|
-
import {
|
|
12
|
-
Bizplace,
|
|
13
|
-
ContactPoint,
|
|
14
|
-
getMyBizplace
|
|
15
|
-
} from '@things-factory/biz-base'
|
|
1
|
+
import { EntityManager, getManager, In } from 'typeorm'
|
|
2
|
+
import { webhookHandler, WebhookEvents } from '@things-factory/integration-base'
|
|
3
|
+
import { ApplicationType, User } from '@things-factory/auth-base'
|
|
4
|
+
import { Bizplace, ContactPoint, getMyBizplace } from '@things-factory/biz-base'
|
|
16
5
|
import { logger } from '@things-factory/env'
|
|
17
6
|
import { Account } from '@things-factory/integration-accounting'
|
|
18
7
|
import { sqsSendMessage } from '@things-factory/integration-base'
|
|
19
|
-
import {
|
|
20
|
-
|
|
21
|
-
LastMileDelivery
|
|
22
|
-
} from '@things-factory/integration-lmd'
|
|
23
|
-
import {
|
|
24
|
-
MarketplaceStore,
|
|
25
|
-
MarketplaceTransporter
|
|
26
|
-
} from '@things-factory/integration-marketplace'
|
|
8
|
+
import { LastMileAPI, LastMileDelivery } from '@things-factory/integration-lmd'
|
|
9
|
+
import { MarketplaceStore, MarketplaceTransporter } from '@things-factory/integration-marketplace'
|
|
27
10
|
import { Powrup } from '@things-factory/integration-powrup'
|
|
28
|
-
import {
|
|
29
|
-
Sellercraft,
|
|
30
|
-
SellercraftStatus
|
|
31
|
-
} from '@things-factory/integration-sellercraft'
|
|
11
|
+
import { Sellercraft, SellercraftStatus } from '@things-factory/integration-sellercraft'
|
|
32
12
|
import {
|
|
33
13
|
MarketplaceOrder,
|
|
34
14
|
MarketplaceOrderItem,
|
|
@@ -52,10 +32,7 @@ import { Setting } from '@things-factory/setting-base'
|
|
|
52
32
|
import { Domain } from '@things-factory/shell'
|
|
53
33
|
import { Inventory } from '@things-factory/warehouse-base'
|
|
54
34
|
|
|
55
|
-
import {
|
|
56
|
-
WORKSHEET_STATUS,
|
|
57
|
-
WORKSHEET_TYPE
|
|
58
|
-
} from '../../../../constants'
|
|
35
|
+
import { WORKSHEET_STATUS, WORKSHEET_TYPE } from '../../../../constants'
|
|
59
36
|
import {
|
|
60
37
|
createOrderPackageAndItems,
|
|
61
38
|
LoadingWorksheetController,
|
|
@@ -66,10 +43,7 @@ import {
|
|
|
66
43
|
} from '../../../../controllers/'
|
|
67
44
|
import { EcommerceController } from '../../../../controllers/ecommerce'
|
|
68
45
|
import { WorksheetController } from '../../../../controllers/worksheet-controller'
|
|
69
|
-
import {
|
|
70
|
-
Worksheet,
|
|
71
|
-
WorksheetDetail
|
|
72
|
-
} from '../../../../entities'
|
|
46
|
+
import { Worksheet, WorksheetDetail } from '../../../../entities'
|
|
73
47
|
import { activateVas } from '../vas/activate-vas'
|
|
74
48
|
|
|
75
49
|
export const completePickingResolver = {
|
|
@@ -174,9 +148,14 @@ export async function completePicking(
|
|
|
174
148
|
|
|
175
149
|
let foundObsoleteInventories = await pickingWSCtrl.completePicking(releaseGood, worksheet, inventories)
|
|
176
150
|
|
|
177
|
-
const rtsTriggerLevel: Setting = await tx
|
|
178
|
-
|
|
179
|
-
|
|
151
|
+
const rtsTriggerLevel: Setting = await tx
|
|
152
|
+
.getRepository(Setting)
|
|
153
|
+
.findOne({
|
|
154
|
+
where: { domain, category: 'id-rule', name: 'rts-trigger-level' }
|
|
155
|
+
})
|
|
156
|
+
.then((setting: Setting) => {
|
|
157
|
+
return parseInt(setting?.value || 0)
|
|
158
|
+
})
|
|
180
159
|
|
|
181
160
|
if (foundObsoleteInventories?.type) {
|
|
182
161
|
const orderSource: string = releaseGood.source
|
|
@@ -228,7 +207,8 @@ export async function completePicking(
|
|
|
228
207
|
}
|
|
229
208
|
|
|
230
209
|
// Trigger if RTS Trigger Level Setting == 1
|
|
231
|
-
if (rtsTriggerLevel == 1)
|
|
210
|
+
if (rtsTriggerLevel == 1)
|
|
211
|
+
await powrupController.initiateShipment(powrup, releaseGood, domain, user, txMgr)
|
|
232
212
|
})
|
|
233
213
|
}
|
|
234
214
|
// asynchronouly call to initiate powrup order shipment/ RTS
|
|
@@ -356,7 +336,7 @@ export async function completePicking(
|
|
|
356
336
|
|
|
357
337
|
case ApplicationType.WEBSPERT:
|
|
358
338
|
// Trigger Whole Order Process
|
|
359
|
-
WebspertController.triggerOrderProcesses(releaseGood, domain, user,
|
|
339
|
+
WebspertController.triggerOrderProcesses(releaseGood, domain, user, rtsTriggerLevel == 1)
|
|
360
340
|
|
|
361
341
|
break
|
|
362
342
|
default:
|
|
@@ -460,6 +440,7 @@ export async function completePicking(
|
|
|
460
440
|
|
|
461
441
|
const loadingWorksheetDetails: WorksheetDetail[] = loadingWorksheet.worksheetDetails
|
|
462
442
|
await loadingWSCtrl.activateLoading(loadingWorksheet.name, loadingWorksheetDetails)
|
|
443
|
+
webhookHandler(releaseGood, releaseGood.bizplace, WebhookEvents.LoadingStarted)
|
|
463
444
|
} else {
|
|
464
445
|
const loadingWSCtrl: LoadingWorksheetController = new LoadingWorksheetController(tx, domain, user)
|
|
465
446
|
let loadingWorksheet: Worksheet = await loadingWSCtrl.updateLoadingWorksheet(
|
|
@@ -87,14 +87,14 @@ export const proceedExtraProductsResolver = {
|
|
|
87
87
|
packingType: selectedOrderProduct?.adjustedPackingType
|
|
88
88
|
? selectedOrderProduct.adjustedPackingType
|
|
89
89
|
: selectedOrderProduct.packingType,
|
|
90
|
-
packQty: selectedOrderProduct?.adjustedPackQty
|
|
90
|
+
packQty: selectedOrderProduct?.adjustedPackQty != null
|
|
91
91
|
? selectedOrderProduct.adjustedPackQty
|
|
92
92
|
: selectedOrderProduct.packQty,
|
|
93
93
|
uom: selectedOrderProduct?.adjustedUom ? selectedOrderProduct.adjustedUom : selectedOrderProduct.uom,
|
|
94
94
|
uomValue: selectedOrderProduct?.adjustedUomValue
|
|
95
95
|
? selectedOrderProduct.adjustedUomValue
|
|
96
96
|
: selectedOrderProduct.uomValue,
|
|
97
|
-
totalUomValue: selectedOrderProduct?.adjustedTotalUomValue
|
|
97
|
+
totalUomValue: (selectedOrderProduct?.adjustedTotalUomValue || selectedOrderProduct?.adjustedTotalUomValue === '')
|
|
98
98
|
? selectedOrderProduct.adjustedTotalUomValue
|
|
99
99
|
: selectedOrderProduct.totalUomValue,
|
|
100
100
|
palletQty: selectedOrderProduct?.adjustedPalletQty
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EntityManager, In } from 'typeorm'
|
|
1
|
+
import { EntityManager, In, getConnection } from 'typeorm'
|
|
2
2
|
|
|
3
3
|
import { User } from '@things-factory/auth-base'
|
|
4
4
|
import { Bizplace } from '@things-factory/biz-base'
|
|
@@ -6,11 +6,11 @@ import { Account } from '@things-factory/integration-accounting'
|
|
|
6
6
|
import { ArrivalNotice, generateGoodsReceivalNote } from '@things-factory/sales-base'
|
|
7
7
|
import { Domain } from '@things-factory/shell'
|
|
8
8
|
import { Inventory, INVENTORY_STATUS } from '@things-factory/warehouse-base'
|
|
9
|
-
|
|
9
|
+
import { webhookHandler, WebhookEvents } from '@things-factory/integration-base'
|
|
10
10
|
import { WORKSHEET_STATUS } from '../../../../constants'
|
|
11
11
|
import { PutawayWorksheetController, UnloadingWorksheetController } from '../../../../controllers'
|
|
12
12
|
import { XilnexController } from '../../../../controllers/pos'
|
|
13
|
-
import { Worksheet, WorksheetDetail } from '../../../../entities'
|
|
13
|
+
import { Worksheet, WorksheetDetail } from '../../../../entities'
|
|
14
14
|
|
|
15
15
|
export const completeUnloadingResolver = {
|
|
16
16
|
async completeUnloading(_: any, { arrivalNoticeNo, worksheetDetails }, context: any) {
|
|
@@ -36,7 +36,11 @@ export const completeUnloadingResolver = {
|
|
|
36
36
|
let putawayWorksheet: Worksheet
|
|
37
37
|
|
|
38
38
|
const inventories: Inventory[] = await tx.getRepository(Inventory).find({
|
|
39
|
-
where: {
|
|
39
|
+
where: {
|
|
40
|
+
domain,
|
|
41
|
+
refOrderId: arrivalNotice.id,
|
|
42
|
+
status: In([INVENTORY_STATUS.UNLOADED, INVENTORY_STATUS.CHECKED])
|
|
43
|
+
},
|
|
40
44
|
relations: ['productDetail', 'product', 'creator']
|
|
41
45
|
})
|
|
42
46
|
|
|
@@ -49,7 +53,12 @@ export const completeUnloadingResolver = {
|
|
|
49
53
|
}
|
|
50
54
|
|
|
51
55
|
const bizplaceId: Bizplace = arrivalNotice.bizplace.id
|
|
52
|
-
await generateGoodsReceivalNote(
|
|
56
|
+
const goodReceiveNote = await generateGoodsReceivalNote(
|
|
57
|
+
{ refNo: arrivalNoticeNo, customer: bizplaceId },
|
|
58
|
+
domain,
|
|
59
|
+
user,
|
|
60
|
+
tx
|
|
61
|
+
)
|
|
53
62
|
|
|
54
63
|
const customerDomain: Domain = arrivalNotice.bizplace.domain
|
|
55
64
|
const xilnex: Account = await tx
|
|
@@ -68,6 +77,8 @@ export const completeUnloadingResolver = {
|
|
|
68
77
|
url: context.header.referer,
|
|
69
78
|
data: { url: context.header.referer }
|
|
70
79
|
})
|
|
80
|
+
|
|
81
|
+
webhookHandler(goodReceiveNote, goodReceiveNote.bizplace, WebhookEvents.GrnCreated)
|
|
71
82
|
}
|
|
72
83
|
}
|
|
73
84
|
|