@things-factory/operato-hub 4.3.804 → 4.3.805
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.
|
@@ -21,7 +21,8 @@ const index_1 = require("../errors/index");
|
|
|
21
21
|
const debug = require('debug')('things-factory:integration-accounting:xilnex-router');
|
|
22
22
|
exports.xilnexRouter = new koa_router_1.default();
|
|
23
23
|
exports.xilnexRouter.post('/webhook-xilnex-po', async (context, next) => {
|
|
24
|
-
|
|
24
|
+
let accountWebhookOrder = null;
|
|
25
|
+
let accountDomain = null;
|
|
25
26
|
try {
|
|
26
27
|
await (0, typeorm_1.getConnection)().transaction(async (tx) => {
|
|
27
28
|
var _a;
|
|
@@ -30,7 +31,6 @@ exports.xilnexRouter.post('/webhook-xilnex-po', async (context, next) => {
|
|
|
30
31
|
// Log raw webhook payload for debugging
|
|
31
32
|
env_1.logger.info(`xilnex-router[webhook-xilnex-po][raw-payload]: ${JSON.stringify({
|
|
32
33
|
query: context.query,
|
|
33
|
-
headers: header,
|
|
34
34
|
body
|
|
35
35
|
})}`);
|
|
36
36
|
// Detect source type and parse data accordingly
|
|
@@ -58,6 +58,15 @@ exports.xilnexRouter.post('/webhook-xilnex-po', async (context, next) => {
|
|
|
58
58
|
if (!account) {
|
|
59
59
|
context.throw(400, `${id} not found in Account`);
|
|
60
60
|
}
|
|
61
|
+
accountDomain = account.domain;
|
|
62
|
+
// Prepare webhook order record early for persistence
|
|
63
|
+
accountWebhookOrder = {
|
|
64
|
+
name: (0, uuid_1.v4)(),
|
|
65
|
+
request: body,
|
|
66
|
+
platform: integration_accounting_1.ACCOUNT_PLATFORM.XILNEX,
|
|
67
|
+
domain: account.domain,
|
|
68
|
+
status: integration_accounting_1.ACCOUNT_SYNC_STATUS.FAILED
|
|
69
|
+
};
|
|
61
70
|
const { webhookKey } = account;
|
|
62
71
|
const signature = header['xilnex-webhook-signature'];
|
|
63
72
|
const xilnex = new integration_accounting_1.Xilnex({});
|
|
@@ -71,6 +80,7 @@ exports.xilnexRouter.post('/webhook-xilnex-po', async (context, next) => {
|
|
|
71
80
|
}
|
|
72
81
|
}
|
|
73
82
|
if (!xilnex.isValidSignature(payload, webhookKey, signature)) {
|
|
83
|
+
env_1.logger.error(`xilnex-router[webhook-xilnex-po][signature-failed]: accountId=${id}, source=${sourceType}`);
|
|
74
84
|
context.throw(400, `Signature validation failed`);
|
|
75
85
|
}
|
|
76
86
|
const customerDomain = account.domain;
|
|
@@ -84,15 +94,9 @@ exports.xilnexRouter.post('/webhook-xilnex-po', async (context, next) => {
|
|
|
84
94
|
if (!warehouseDomain) {
|
|
85
95
|
context.throw(400, `${warehouseId} not found in warehouse domain`);
|
|
86
96
|
}
|
|
87
|
-
let accountWebhookOrder = {
|
|
88
|
-
name: (0, uuid_1.v4)(),
|
|
89
|
-
request: body,
|
|
90
|
-
platform: integration_accounting_1.ACCOUNT_PLATFORM.XILNEX,
|
|
91
|
-
domain: account.domain,
|
|
92
|
-
status: integration_accounting_1.ACCOUNT_SYNC_STATUS.FAILED
|
|
93
|
-
};
|
|
94
97
|
// Get order ID based on source type
|
|
95
98
|
const orderId = sourceType === 'XilnexPortal' ? (_a = data === null || data === void 0 ? void 0 : data.purchaseOrder) === null || _a === void 0 ? void 0 : _a.id : data === null || data === void 0 ? void 0 : data.id;
|
|
99
|
+
env_1.logger.info(`xilnex-router[webhook-xilnex-po][processing]: orderId=${orderId}, source=${sourceType}`);
|
|
96
100
|
if (orderId) {
|
|
97
101
|
let orderInfo;
|
|
98
102
|
let orderItems;
|
|
@@ -150,8 +154,7 @@ exports.xilnexRouter.post('/webhook-xilnex-po', async (context, next) => {
|
|
|
150
154
|
if (existingPO) {
|
|
151
155
|
env_1.logger.info(`xilnex-router[webhook-xilnex-po]: Duplicate PO skipped, refNo ${orderInfo.orderId} already exists as ${existingPO.name}`);
|
|
152
156
|
accountWebhookOrder.status = integration_accounting_1.ACCOUNT_SYNC_STATUS.SUCCESS;
|
|
153
|
-
|
|
154
|
-
context.status = 200;
|
|
157
|
+
accountWebhookOrder.response = `Duplicate PO skipped, already exists as ${existingPO.name}`;
|
|
155
158
|
return;
|
|
156
159
|
}
|
|
157
160
|
const poNoSetting = await tx.getRepository(setting_base_1.Setting).findOne({
|
|
@@ -228,25 +231,58 @@ exports.xilnexRouter.post('/webhook-xilnex-po', async (context, next) => {
|
|
|
228
231
|
await tx.getRepository(sales_base_1.OrderProduct).save(orderProducts);
|
|
229
232
|
}
|
|
230
233
|
accountWebhookOrder.status = integration_accounting_1.ACCOUNT_SYNC_STATUS.SUCCESS;
|
|
231
|
-
await tx.getRepository(integration_accounting_1.AccountWebhookOrder).save(accountWebhookOrder);
|
|
232
234
|
}
|
|
233
235
|
});
|
|
236
|
+
// Save webhook order outside transaction so it persists even if tx rolled back
|
|
237
|
+
if (accountWebhookOrder) {
|
|
238
|
+
await (0, typeorm_1.getRepository)(integration_accounting_1.AccountWebhookOrder).save(accountWebhookOrder);
|
|
239
|
+
}
|
|
234
240
|
context.status = 200;
|
|
235
241
|
}
|
|
236
242
|
catch (err) {
|
|
237
|
-
|
|
238
|
-
|
|
243
|
+
const errorMessage = err instanceof index_1.ValidationError
|
|
244
|
+
? JSON.stringify({ errorCode: err.errorCode, message: err.message, detail: err.detail })
|
|
245
|
+
: (err === null || err === void 0 ? void 0 : err.message) || String(err);
|
|
246
|
+
env_1.logger.error(`xilnex-router[webhook-xilnex-po]: ${errorMessage}`);
|
|
247
|
+
// Persist failed webhook order record for troubleshooting
|
|
248
|
+
try {
|
|
249
|
+
if (accountWebhookOrder) {
|
|
250
|
+
accountWebhookOrder.status = integration_accounting_1.ACCOUNT_SYNC_STATUS.FAILED;
|
|
251
|
+
accountWebhookOrder.response = errorMessage;
|
|
252
|
+
await (0, typeorm_1.getRepository)(integration_accounting_1.AccountWebhookOrder).save(accountWebhookOrder);
|
|
253
|
+
}
|
|
254
|
+
else if (accountDomain) {
|
|
255
|
+
await (0, typeorm_1.getRepository)(integration_accounting_1.AccountWebhookOrder).save({
|
|
256
|
+
name: (0, uuid_1.v4)(),
|
|
257
|
+
request: JSON.stringify(context.request.body),
|
|
258
|
+
response: errorMessage,
|
|
259
|
+
platform: integration_accounting_1.ACCOUNT_PLATFORM.XILNEX,
|
|
260
|
+
domain: accountDomain,
|
|
261
|
+
status: integration_accounting_1.ACCOUNT_SYNC_STATUS.FAILED
|
|
262
|
+
});
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
catch (saveErr) {
|
|
266
|
+
env_1.logger.error(`xilnex-router[webhook-xilnex-po][failed-to-save-webhook-order]: ${saveErr === null || saveErr === void 0 ? void 0 : saveErr.message}`);
|
|
267
|
+
}
|
|
239
268
|
context.status = 400;
|
|
240
|
-
context.
|
|
269
|
+
context.body = { error: errorMessage };
|
|
241
270
|
}
|
|
242
271
|
});
|
|
243
272
|
exports.xilnexRouter.post('/webhook-xilnex-transfer-note', async (context, next) => {
|
|
244
|
-
|
|
273
|
+
// Save webhook order outside the main transaction so it persists even on failure
|
|
274
|
+
let accountWebhookOrder = null;
|
|
275
|
+
let accountDomain = null;
|
|
245
276
|
try {
|
|
246
277
|
await (0, typeorm_1.getConnection)().transaction(async (tx) => {
|
|
247
278
|
var _a;
|
|
248
279
|
const { id, warehouseId } = context.query;
|
|
249
280
|
const { body, header } = context.request;
|
|
281
|
+
// Log raw webhook payload for debugging
|
|
282
|
+
env_1.logger.info(`xilnex-router[webhook-xilnex-transfer-note][raw-payload]: ${JSON.stringify({
|
|
283
|
+
query: context.query,
|
|
284
|
+
body
|
|
285
|
+
})}`);
|
|
250
286
|
// Detect source type and parse data accordingly
|
|
251
287
|
const sourceType = (body === null || body === void 0 ? void 0 : body.Source) || 'Classic';
|
|
252
288
|
let data = {};
|
|
@@ -272,6 +308,15 @@ exports.xilnexRouter.post('/webhook-xilnex-transfer-note', async (context, next)
|
|
|
272
308
|
if (!account) {
|
|
273
309
|
context.throw(400, `${id} not found in Account`);
|
|
274
310
|
}
|
|
311
|
+
accountDomain = account.domain;
|
|
312
|
+
// Prepare webhook order record early for persistence
|
|
313
|
+
accountWebhookOrder = {
|
|
314
|
+
name: (0, uuid_1.v4)(),
|
|
315
|
+
request: body,
|
|
316
|
+
platform: integration_accounting_1.ACCOUNT_PLATFORM.XILNEX,
|
|
317
|
+
domain: account.domain,
|
|
318
|
+
status: integration_accounting_1.ACCOUNT_SYNC_STATUS.FAILED
|
|
319
|
+
};
|
|
275
320
|
const { webhookKey } = account;
|
|
276
321
|
const signature = header['xilnex-webhook-signature'];
|
|
277
322
|
const xilnex = new integration_accounting_1.Xilnex({});
|
|
@@ -285,6 +330,7 @@ exports.xilnexRouter.post('/webhook-xilnex-transfer-note', async (context, next)
|
|
|
285
330
|
}
|
|
286
331
|
}
|
|
287
332
|
if (!xilnex.isValidSignature(payload, webhookKey, signature)) {
|
|
333
|
+
env_1.logger.error(`xilnex-router[webhook-xilnex-transfer-note][signature-failed]: accountId=${id}, source=${sourceType}`);
|
|
288
334
|
context.throw(400, `Signature validation failed`);
|
|
289
335
|
}
|
|
290
336
|
const customerDomain = account.domain;
|
|
@@ -298,16 +344,10 @@ exports.xilnexRouter.post('/webhook-xilnex-transfer-note', async (context, next)
|
|
|
298
344
|
if (!warehouseDomain) {
|
|
299
345
|
context.throw(400, `${warehouseId} not found in warehouse domain`);
|
|
300
346
|
}
|
|
301
|
-
let accountWebhookOrder = {
|
|
302
|
-
name: (0, uuid_1.v4)(),
|
|
303
|
-
request: body,
|
|
304
|
-
platform: integration_accounting_1.ACCOUNT_PLATFORM.XILNEX,
|
|
305
|
-
domain: account.domain,
|
|
306
|
-
status: integration_accounting_1.ACCOUNT_SYNC_STATUS.FAILED
|
|
307
|
-
};
|
|
308
347
|
let accountInfo = (account === null || account === void 0 ? void 0 : account.accountInfo) ? JSON.parse(account.accountInfo) : {};
|
|
309
348
|
// Get order ID based on source type
|
|
310
349
|
const orderId = sourceType === 'XilnexPortal' ? (_a = data === null || data === void 0 ? void 0 : data.transferNote) === null || _a === void 0 ? void 0 : _a.id : data === null || data === void 0 ? void 0 : data.id;
|
|
350
|
+
env_1.logger.info(`xilnex-router[webhook-xilnex-transfer-note][processing]: orderId=${orderId}, source=${sourceType}, accountOutlet=${accountInfo.outlet}`);
|
|
311
351
|
if (orderId) {
|
|
312
352
|
let orderInfo;
|
|
313
353
|
let orderItems;
|
|
@@ -357,6 +397,7 @@ exports.xilnexRouter.post('/webhook-xilnex-transfer-note', async (context, next)
|
|
|
357
397
|
orderInfo = transferNote.orderInfo;
|
|
358
398
|
orderItems = transferNote.orderItems;
|
|
359
399
|
}
|
|
400
|
+
env_1.logger.info(`xilnex-router[webhook-xilnex-transfer-note][outlet-check]: orderId=${orderId}, from=${orderInfo.fromLocation}, to=${orderInfo.toLocation}, outlet=${accountInfo.outlet}, matchFrom=${orderInfo.fromLocation == accountInfo.outlet}, matchTo=${orderInfo.toLocation == accountInfo.outlet}`);
|
|
360
401
|
if (orderInfo.fromLocation == accountInfo.outlet || orderInfo.toLocation == accountInfo.outlet) {
|
|
361
402
|
// VDC release
|
|
362
403
|
if (accountInfo.outlet == orderInfo.fromLocation) {
|
|
@@ -504,6 +545,7 @@ exports.xilnexRouter.post('/webhook-xilnex-transfer-note', async (context, next)
|
|
|
504
545
|
status: 'INTRANSIT'
|
|
505
546
|
};
|
|
506
547
|
arrivalNotice = await tx.getRepository(sales_base_1.ArrivalNotice).save(arrivalNotice);
|
|
548
|
+
env_1.logger.info(`xilnex-router[webhook-xilnex-transfer-note][arrival-notice-created]: orderId=${orderId}, ganNo=${arrivalNotice.name}, ganId=${arrivalNotice.id}`);
|
|
507
549
|
let orderProducts = [];
|
|
508
550
|
await Promise.all(orderItems.map(async (item) => {
|
|
509
551
|
const refCode = item.product.refCode;
|
|
@@ -549,35 +591,85 @@ exports.xilnexRouter.post('/webhook-xilnex-transfer-note', async (context, next)
|
|
|
549
591
|
await tx.getRepository(sales_base_1.OrderProduct).save(orderProducts);
|
|
550
592
|
}
|
|
551
593
|
}
|
|
594
|
+
else {
|
|
595
|
+
env_1.logger.info(`xilnex-router[webhook-xilnex-transfer-note][skipped-no-outlet-match]: orderId=${orderId}, outlet=${accountInfo.outlet}, from=${orderInfo.fromLocation}, to=${orderInfo.toLocation}`);
|
|
596
|
+
}
|
|
597
|
+
}
|
|
598
|
+
else {
|
|
599
|
+
env_1.logger.info(`xilnex-router[webhook-xilnex-transfer-note][skipped-no-order-id]: no orderId found in webhook payload`);
|
|
552
600
|
}
|
|
553
601
|
accountWebhookOrder.status = integration_accounting_1.ACCOUNT_SYNC_STATUS.SUCCESS;
|
|
554
|
-
await tx.getRepository(integration_accounting_1.AccountWebhookOrder).save(accountWebhookOrder);
|
|
555
602
|
});
|
|
603
|
+
// Save webhook order outside transaction so it persists even if tx rolled back
|
|
604
|
+
if (accountWebhookOrder) {
|
|
605
|
+
await (0, typeorm_1.getRepository)(integration_accounting_1.AccountWebhookOrder).save(accountWebhookOrder);
|
|
606
|
+
}
|
|
556
607
|
context.status = 200;
|
|
557
608
|
}
|
|
558
609
|
catch (err) {
|
|
559
|
-
|
|
560
|
-
|
|
610
|
+
const errorMessage = err instanceof index_1.ValidationError
|
|
611
|
+
? JSON.stringify({ errorCode: err.errorCode, message: err.message, detail: err.detail })
|
|
612
|
+
: (err === null || err === void 0 ? void 0 : err.message) || String(err);
|
|
613
|
+
env_1.logger.error(`xilnex-router[webhook-xilnex-transfer-note]: ${errorMessage}`);
|
|
614
|
+
// Persist failed webhook order record for troubleshooting
|
|
615
|
+
try {
|
|
616
|
+
if (accountWebhookOrder) {
|
|
617
|
+
accountWebhookOrder.status = integration_accounting_1.ACCOUNT_SYNC_STATUS.FAILED;
|
|
618
|
+
accountWebhookOrder.response = errorMessage;
|
|
619
|
+
await (0, typeorm_1.getRepository)(integration_accounting_1.AccountWebhookOrder).save(accountWebhookOrder);
|
|
620
|
+
}
|
|
621
|
+
else if (accountDomain) {
|
|
622
|
+
// Error happened before webhook order was prepared — save with minimal info
|
|
623
|
+
await (0, typeorm_1.getRepository)(integration_accounting_1.AccountWebhookOrder).save({
|
|
624
|
+
name: (0, uuid_1.v4)(),
|
|
625
|
+
request: JSON.stringify(context.request.body),
|
|
626
|
+
response: errorMessage,
|
|
627
|
+
platform: integration_accounting_1.ACCOUNT_PLATFORM.XILNEX,
|
|
628
|
+
domain: accountDomain,
|
|
629
|
+
status: integration_accounting_1.ACCOUNT_SYNC_STATUS.FAILED
|
|
630
|
+
});
|
|
631
|
+
}
|
|
632
|
+
}
|
|
633
|
+
catch (saveErr) {
|
|
634
|
+
env_1.logger.error(`xilnex-router[webhook-xilnex-transfer-note][failed-to-save-webhook-order]: ${saveErr === null || saveErr === void 0 ? void 0 : saveErr.message}`);
|
|
635
|
+
}
|
|
561
636
|
context.status = 400;
|
|
562
|
-
context.
|
|
637
|
+
context.body = { error: errorMessage };
|
|
563
638
|
}
|
|
564
639
|
});
|
|
565
640
|
exports.xilnexRouter.post('/webhook-xilnex-stock-request', async (context, next) => {
|
|
641
|
+
let accountWebhookOrder = null;
|
|
642
|
+
let accountDomain = null;
|
|
566
643
|
try {
|
|
567
644
|
await (0, typeorm_1.getConnection)().transaction(async (tx) => {
|
|
568
645
|
const { id, warehouseId } = context.query;
|
|
569
646
|
const { body, headers } = context.request;
|
|
647
|
+
// Log raw webhook payload for debugging
|
|
648
|
+
env_1.logger.info(`xilnex-router[webhook-xilnex-stock-request][raw-payload]: ${JSON.stringify({
|
|
649
|
+
query: context.query,
|
|
650
|
+
body
|
|
651
|
+
})}`);
|
|
570
652
|
const data = (body === null || body === void 0 ? void 0 : body.Data) ? JSON.parse(body.Data) : {};
|
|
571
653
|
const account = await integration_accounting_1.AccountingAPI.getAccounting(id);
|
|
572
654
|
if (!account) {
|
|
573
655
|
throw new Error(`${id} not found in Account`);
|
|
574
656
|
}
|
|
657
|
+
accountDomain = account.domain;
|
|
658
|
+
// Prepare webhook order record early for persistence
|
|
659
|
+
accountWebhookOrder = {
|
|
660
|
+
name: (0, uuid_1.v4)(),
|
|
661
|
+
request: body,
|
|
662
|
+
platform: integration_accounting_1.ACCOUNT_PLATFORM.XILNEX,
|
|
663
|
+
domain: account.domain,
|
|
664
|
+
status: integration_accounting_1.ACCOUNT_SYNC_STATUS.FAILED
|
|
665
|
+
};
|
|
575
666
|
const { webhookKey } = account;
|
|
576
667
|
const signature = headers['xilnex-webhook-signature'];
|
|
577
668
|
const xilnex = new integration_accounting_1.Xilnex({});
|
|
578
669
|
// webhook-xilnex-stock-request only supports Classic source (no Source field in body)
|
|
579
670
|
// Use parsed body for Classic source
|
|
580
671
|
if (!xilnex.isValidSignature(body, webhookKey, signature)) {
|
|
672
|
+
env_1.logger.error(`xilnex-router[webhook-xilnex-stock-request][signature-failed]: accountId=${id}`);
|
|
581
673
|
context.throw(400, 'Signature validation failed');
|
|
582
674
|
}
|
|
583
675
|
const customerDomain = account.domain;
|
|
@@ -591,13 +683,6 @@ exports.xilnexRouter.post('/webhook-xilnex-stock-request', async (context, next)
|
|
|
591
683
|
if (!warehouseDomain) {
|
|
592
684
|
context.throw(400, `${warehouseId} not found in warehouse domain`);
|
|
593
685
|
}
|
|
594
|
-
let accountWebhookOrder = {
|
|
595
|
-
name: (0, uuid_1.v4)(),
|
|
596
|
-
request: body,
|
|
597
|
-
platform: integration_accounting_1.ACCOUNT_PLATFORM.XILNEX,
|
|
598
|
-
domain: account.domain,
|
|
599
|
-
status: integration_accounting_1.ACCOUNT_SYNC_STATUS.FAILED
|
|
600
|
-
};
|
|
601
686
|
let accountInfo = (account === null || account === void 0 ? void 0 : account.accountInfo) ? JSON.parse(account.accountInfo) : {};
|
|
602
687
|
if (data === null || data === void 0 ? void 0 : data.id) {
|
|
603
688
|
const stockRequest = await integration_accounting_1.AccountingAPI.getStockRequest(account, { orderId: data.id });
|
|
@@ -781,14 +866,41 @@ exports.xilnexRouter.post('/webhook-xilnex-stock-request', async (context, next)
|
|
|
781
866
|
}
|
|
782
867
|
}
|
|
783
868
|
accountWebhookOrder.status = integration_accounting_1.ACCOUNT_SYNC_STATUS.SUCCESS;
|
|
784
|
-
await tx.getRepository(integration_accounting_1.AccountWebhookOrder).save(accountWebhookOrder);
|
|
785
869
|
});
|
|
870
|
+
// Save webhook order outside transaction so it persists even if tx rolled back
|
|
871
|
+
if (accountWebhookOrder) {
|
|
872
|
+
await (0, typeorm_1.getRepository)(integration_accounting_1.AccountWebhookOrder).save(accountWebhookOrder);
|
|
873
|
+
}
|
|
786
874
|
context.status = 200;
|
|
787
875
|
}
|
|
788
876
|
catch (err) {
|
|
789
|
-
|
|
877
|
+
const errorMessage = err instanceof index_1.ValidationError
|
|
878
|
+
? JSON.stringify({ errorCode: err.errorCode, message: err.message, detail: err.detail })
|
|
879
|
+
: (err === null || err === void 0 ? void 0 : err.message) || String(err);
|
|
880
|
+
env_1.logger.error(`xilnex-router[webhook-xilnex-stock-request]: ${errorMessage}`);
|
|
881
|
+
// Persist failed webhook order record for troubleshooting
|
|
882
|
+
try {
|
|
883
|
+
if (accountWebhookOrder) {
|
|
884
|
+
accountWebhookOrder.status = integration_accounting_1.ACCOUNT_SYNC_STATUS.FAILED;
|
|
885
|
+
accountWebhookOrder.response = errorMessage;
|
|
886
|
+
await (0, typeorm_1.getRepository)(integration_accounting_1.AccountWebhookOrder).save(accountWebhookOrder);
|
|
887
|
+
}
|
|
888
|
+
else if (accountDomain) {
|
|
889
|
+
await (0, typeorm_1.getRepository)(integration_accounting_1.AccountWebhookOrder).save({
|
|
890
|
+
name: (0, uuid_1.v4)(),
|
|
891
|
+
request: JSON.stringify(context.request.body),
|
|
892
|
+
response: errorMessage,
|
|
893
|
+
platform: integration_accounting_1.ACCOUNT_PLATFORM.XILNEX,
|
|
894
|
+
domain: accountDomain,
|
|
895
|
+
status: integration_accounting_1.ACCOUNT_SYNC_STATUS.FAILED
|
|
896
|
+
});
|
|
897
|
+
}
|
|
898
|
+
}
|
|
899
|
+
catch (saveErr) {
|
|
900
|
+
env_1.logger.error(`xilnex-router[webhook-xilnex-stock-request][failed-to-save-webhook-order]: ${saveErr === null || saveErr === void 0 ? void 0 : saveErr.message}`);
|
|
901
|
+
}
|
|
790
902
|
context.status = 400;
|
|
791
|
-
context.
|
|
903
|
+
context.body = { error: errorMessage };
|
|
792
904
|
}
|
|
793
905
|
});
|
|
794
906
|
async function checkExistingOrder(releaseGood, bizplace, checkDuplicationValidation = true, context, tx) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xilnex-router.js","sourceRoot":"","sources":["../../server/routers/xilnex-router.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"xilnex-router.js","sourceRoot":"","sources":["../../server/routers/xilnex-router.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@things-factory/operato-hub",
|
|
3
|
-
"version": "4.3.
|
|
3
|
+
"version": "4.3.805",
|
|
4
4
|
"main": "dist-server/index.js",
|
|
5
5
|
"browser": "client/index.js",
|
|
6
6
|
"things-factory": true,
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
"@things-factory/i18n-base": "^4.3.767",
|
|
78
78
|
"@things-factory/import-ui": "^4.3.790",
|
|
79
79
|
"@things-factory/import-ui-excel": "^4.3.790",
|
|
80
|
-
"@things-factory/integration-accounting": "^4.3.
|
|
80
|
+
"@things-factory/integration-accounting": "^4.3.805",
|
|
81
81
|
"@things-factory/integration-base": "^4.3.804",
|
|
82
82
|
"@things-factory/integration-fulfillment": "^4.3.804",
|
|
83
83
|
"@things-factory/integration-lmd": "^4.3.804",
|
|
@@ -93,7 +93,7 @@
|
|
|
93
93
|
"@things-factory/pdf": "^4.3.767",
|
|
94
94
|
"@things-factory/product-ui": "^4.3.804",
|
|
95
95
|
"@things-factory/resource-ui": "^4.3.790",
|
|
96
|
-
"@things-factory/sales-base": "^4.3.
|
|
96
|
+
"@things-factory/sales-base": "^4.3.805",
|
|
97
97
|
"@things-factory/scene-data-transform": "^4.3.767",
|
|
98
98
|
"@things-factory/scene-excel": "^4.3.767",
|
|
99
99
|
"@things-factory/scene-firebase": "^4.3.767",
|
|
@@ -109,8 +109,8 @@
|
|
|
109
109
|
"@things-factory/shell": "^4.3.767",
|
|
110
110
|
"@things-factory/system-ui": "^4.3.767",
|
|
111
111
|
"@things-factory/transport-base": "^4.3.798",
|
|
112
|
-
"@things-factory/warehouse-base": "^4.3.
|
|
113
|
-
"@things-factory/worksheet-base": "^4.3.
|
|
112
|
+
"@things-factory/warehouse-base": "^4.3.805",
|
|
113
|
+
"@things-factory/worksheet-base": "^4.3.805",
|
|
114
114
|
"cron-parser": "^4.7.0",
|
|
115
115
|
"koa2-swagger-ui": "^5.0.2",
|
|
116
116
|
"swagger-jsdoc": "^5.0.0",
|
|
@@ -123,5 +123,5 @@
|
|
|
123
123
|
"resolutions": {
|
|
124
124
|
"core-js": "^3.16.0"
|
|
125
125
|
},
|
|
126
|
-
"gitHead": "
|
|
126
|
+
"gitHead": "f7279ba37de6fbb915953b3c4bea769d5965945d"
|
|
127
127
|
}
|
|
@@ -42,7 +42,9 @@ const debug = require('debug')('things-factory:integration-accounting:xilnex-rou
|
|
|
42
42
|
export const xilnexRouter = new Router()
|
|
43
43
|
|
|
44
44
|
xilnexRouter.post('/webhook-xilnex-po', async (context, next) => {
|
|
45
|
-
|
|
45
|
+
let accountWebhookOrder: any = null
|
|
46
|
+
let accountDomain: any = null
|
|
47
|
+
|
|
46
48
|
try {
|
|
47
49
|
await getConnection().transaction(async (tx: EntityManager) => {
|
|
48
50
|
const { id, warehouseId } = context.query
|
|
@@ -52,7 +54,6 @@ xilnexRouter.post('/webhook-xilnex-po', async (context, next) => {
|
|
|
52
54
|
logger.info(
|
|
53
55
|
`xilnex-router[webhook-xilnex-po][raw-payload]: ${JSON.stringify({
|
|
54
56
|
query: context.query,
|
|
55
|
-
headers: header,
|
|
56
57
|
body
|
|
57
58
|
})}`
|
|
58
59
|
)
|
|
@@ -82,6 +83,17 @@ xilnexRouter.post('/webhook-xilnex-po', async (context, next) => {
|
|
|
82
83
|
context.throw(400, `${id} not found in Account`)
|
|
83
84
|
}
|
|
84
85
|
|
|
86
|
+
accountDomain = account.domain
|
|
87
|
+
|
|
88
|
+
// Prepare webhook order record early for persistence
|
|
89
|
+
accountWebhookOrder = {
|
|
90
|
+
name: uuidv4(),
|
|
91
|
+
request: body,
|
|
92
|
+
platform: ACCOUNT_PLATFORM.XILNEX,
|
|
93
|
+
domain: account.domain,
|
|
94
|
+
status: ACCOUNT_SYNC_STATUS.FAILED
|
|
95
|
+
}
|
|
96
|
+
|
|
85
97
|
const { webhookKey } = account
|
|
86
98
|
const signature = header['xilnex-webhook-signature']
|
|
87
99
|
|
|
@@ -98,6 +110,7 @@ xilnexRouter.post('/webhook-xilnex-po', async (context, next) => {
|
|
|
98
110
|
}
|
|
99
111
|
|
|
100
112
|
if (!xilnex.isValidSignature(payload, webhookKey, signature)) {
|
|
113
|
+
logger.error(`xilnex-router[webhook-xilnex-po][signature-failed]: accountId=${id}, source=${sourceType}`)
|
|
101
114
|
context.throw(400, `Signature validation failed`)
|
|
102
115
|
}
|
|
103
116
|
|
|
@@ -115,16 +128,9 @@ xilnexRouter.post('/webhook-xilnex-po', async (context, next) => {
|
|
|
115
128
|
context.throw(400, `${warehouseId} not found in warehouse domain`)
|
|
116
129
|
}
|
|
117
130
|
|
|
118
|
-
let accountWebhookOrder: any = {
|
|
119
|
-
name: uuidv4(),
|
|
120
|
-
request: body,
|
|
121
|
-
platform: ACCOUNT_PLATFORM.XILNEX,
|
|
122
|
-
domain: account.domain,
|
|
123
|
-
status: ACCOUNT_SYNC_STATUS.FAILED
|
|
124
|
-
}
|
|
125
|
-
|
|
126
131
|
// Get order ID based on source type
|
|
127
132
|
const orderId = sourceType === 'XilnexPortal' ? data?.purchaseOrder?.id : data?.id
|
|
133
|
+
logger.info(`xilnex-router[webhook-xilnex-po][processing]: orderId=${orderId}, source=${sourceType}`)
|
|
128
134
|
|
|
129
135
|
if (orderId) {
|
|
130
136
|
let orderInfo: any
|
|
@@ -189,8 +195,7 @@ xilnexRouter.post('/webhook-xilnex-po', async (context, next) => {
|
|
|
189
195
|
`xilnex-router[webhook-xilnex-po]: Duplicate PO skipped, refNo ${orderInfo.orderId} already exists as ${existingPO.name}`
|
|
190
196
|
)
|
|
191
197
|
accountWebhookOrder.status = ACCOUNT_SYNC_STATUS.SUCCESS
|
|
192
|
-
|
|
193
|
-
context.status = 200
|
|
198
|
+
accountWebhookOrder.response = `Duplicate PO skipped, already exists as ${existingPO.name}`
|
|
194
199
|
return
|
|
195
200
|
}
|
|
196
201
|
|
|
@@ -277,26 +282,64 @@ xilnexRouter.post('/webhook-xilnex-po', async (context, next) => {
|
|
|
277
282
|
}
|
|
278
283
|
|
|
279
284
|
accountWebhookOrder.status = ACCOUNT_SYNC_STATUS.SUCCESS
|
|
280
|
-
await tx.getRepository(AccountWebhookOrder).save(accountWebhookOrder)
|
|
281
285
|
}
|
|
282
286
|
})
|
|
283
287
|
|
|
288
|
+
// Save webhook order outside transaction so it persists even if tx rolled back
|
|
289
|
+
if (accountWebhookOrder) {
|
|
290
|
+
await getRepository(AccountWebhookOrder).save(accountWebhookOrder)
|
|
291
|
+
}
|
|
292
|
+
|
|
284
293
|
context.status = 200
|
|
285
294
|
} catch (err) {
|
|
286
|
-
|
|
287
|
-
|
|
295
|
+
const errorMessage = err instanceof ValidationError
|
|
296
|
+
? JSON.stringify({ errorCode: err.errorCode, message: err.message, detail: err.detail })
|
|
297
|
+
: err?.message || String(err)
|
|
298
|
+
logger.error(`xilnex-router[webhook-xilnex-po]: ${errorMessage}`)
|
|
299
|
+
|
|
300
|
+
// Persist failed webhook order record for troubleshooting
|
|
301
|
+
try {
|
|
302
|
+
if (accountWebhookOrder) {
|
|
303
|
+
accountWebhookOrder.status = ACCOUNT_SYNC_STATUS.FAILED
|
|
304
|
+
accountWebhookOrder.response = errorMessage
|
|
305
|
+
await getRepository(AccountWebhookOrder).save(accountWebhookOrder)
|
|
306
|
+
} else if (accountDomain) {
|
|
307
|
+
await getRepository(AccountWebhookOrder).save({
|
|
308
|
+
name: uuidv4(),
|
|
309
|
+
request: JSON.stringify(context.request.body),
|
|
310
|
+
response: errorMessage,
|
|
311
|
+
platform: ACCOUNT_PLATFORM.XILNEX,
|
|
312
|
+
domain: accountDomain,
|
|
313
|
+
status: ACCOUNT_SYNC_STATUS.FAILED
|
|
314
|
+
})
|
|
315
|
+
}
|
|
316
|
+
} catch (saveErr) {
|
|
317
|
+
logger.error(`xilnex-router[webhook-xilnex-po][failed-to-save-webhook-order]: ${saveErr?.message}`)
|
|
318
|
+
}
|
|
319
|
+
|
|
288
320
|
context.status = 400
|
|
289
|
-
context.
|
|
321
|
+
context.body = { error: errorMessage }
|
|
290
322
|
}
|
|
291
323
|
})
|
|
292
324
|
|
|
293
325
|
xilnexRouter.post('/webhook-xilnex-transfer-note', async (context, next) => {
|
|
294
|
-
|
|
326
|
+
// Save webhook order outside the main transaction so it persists even on failure
|
|
327
|
+
let accountWebhookOrder: any = null
|
|
328
|
+
let accountDomain: any = null
|
|
329
|
+
|
|
295
330
|
try {
|
|
296
331
|
await getConnection().transaction(async (tx: EntityManager) => {
|
|
297
332
|
const { id, warehouseId } = context.query
|
|
298
333
|
const { body, header } = context.request
|
|
299
334
|
|
|
335
|
+
// Log raw webhook payload for debugging
|
|
336
|
+
logger.info(
|
|
337
|
+
`xilnex-router[webhook-xilnex-transfer-note][raw-payload]: ${JSON.stringify({
|
|
338
|
+
query: context.query,
|
|
339
|
+
body
|
|
340
|
+
})}`
|
|
341
|
+
)
|
|
342
|
+
|
|
300
343
|
// Detect source type and parse data accordingly
|
|
301
344
|
const sourceType = body?.Source || 'Classic'
|
|
302
345
|
let data: any = {}
|
|
@@ -322,6 +365,17 @@ xilnexRouter.post('/webhook-xilnex-transfer-note', async (context, next) => {
|
|
|
322
365
|
context.throw(400, `${id} not found in Account`)
|
|
323
366
|
}
|
|
324
367
|
|
|
368
|
+
accountDomain = account.domain
|
|
369
|
+
|
|
370
|
+
// Prepare webhook order record early for persistence
|
|
371
|
+
accountWebhookOrder = {
|
|
372
|
+
name: uuidv4(),
|
|
373
|
+
request: body,
|
|
374
|
+
platform: ACCOUNT_PLATFORM.XILNEX,
|
|
375
|
+
domain: account.domain,
|
|
376
|
+
status: ACCOUNT_SYNC_STATUS.FAILED
|
|
377
|
+
}
|
|
378
|
+
|
|
325
379
|
const { webhookKey } = account
|
|
326
380
|
const signature = header['xilnex-webhook-signature']
|
|
327
381
|
|
|
@@ -338,6 +392,7 @@ xilnexRouter.post('/webhook-xilnex-transfer-note', async (context, next) => {
|
|
|
338
392
|
}
|
|
339
393
|
|
|
340
394
|
if (!xilnex.isValidSignature(payload, webhookKey, signature)) {
|
|
395
|
+
logger.error(`xilnex-router[webhook-xilnex-transfer-note][signature-failed]: accountId=${id}, source=${sourceType}`)
|
|
341
396
|
context.throw(400, `Signature validation failed`)
|
|
342
397
|
}
|
|
343
398
|
|
|
@@ -355,18 +410,11 @@ xilnexRouter.post('/webhook-xilnex-transfer-note', async (context, next) => {
|
|
|
355
410
|
context.throw(400, `${warehouseId} not found in warehouse domain`)
|
|
356
411
|
}
|
|
357
412
|
|
|
358
|
-
let accountWebhookOrder: any = {
|
|
359
|
-
name: uuidv4(),
|
|
360
|
-
request: body,
|
|
361
|
-
platform: ACCOUNT_PLATFORM.XILNEX,
|
|
362
|
-
domain: account.domain,
|
|
363
|
-
status: ACCOUNT_SYNC_STATUS.FAILED
|
|
364
|
-
}
|
|
365
|
-
|
|
366
413
|
let accountInfo: any = account?.accountInfo ? JSON.parse(account.accountInfo) : {}
|
|
367
414
|
|
|
368
415
|
// Get order ID based on source type
|
|
369
416
|
const orderId = sourceType === 'XilnexPortal' ? data?.transferNote?.id : data?.id
|
|
417
|
+
logger.info(`xilnex-router[webhook-xilnex-transfer-note][processing]: orderId=${orderId}, source=${sourceType}, accountOutlet=${accountInfo.outlet}`)
|
|
370
418
|
|
|
371
419
|
if (orderId) {
|
|
372
420
|
let orderInfo: any
|
|
@@ -419,6 +467,10 @@ xilnexRouter.post('/webhook-xilnex-transfer-note', async (context, next) => {
|
|
|
419
467
|
orderItems = transferNote.orderItems
|
|
420
468
|
}
|
|
421
469
|
|
|
470
|
+
logger.info(
|
|
471
|
+
`xilnex-router[webhook-xilnex-transfer-note][outlet-check]: orderId=${orderId}, from=${orderInfo.fromLocation}, to=${orderInfo.toLocation}, outlet=${accountInfo.outlet}, matchFrom=${orderInfo.fromLocation == accountInfo.outlet}, matchTo=${orderInfo.toLocation == accountInfo.outlet}`
|
|
472
|
+
)
|
|
473
|
+
|
|
422
474
|
if (orderInfo.fromLocation == accountInfo.outlet || orderInfo.toLocation == accountInfo.outlet) {
|
|
423
475
|
// VDC release
|
|
424
476
|
if (accountInfo.outlet == orderInfo.fromLocation) {
|
|
@@ -597,6 +649,7 @@ xilnexRouter.post('/webhook-xilnex-transfer-note', async (context, next) => {
|
|
|
597
649
|
status: 'INTRANSIT'
|
|
598
650
|
}
|
|
599
651
|
arrivalNotice = await tx.getRepository(ArrivalNotice).save(arrivalNotice)
|
|
652
|
+
logger.info(`xilnex-router[webhook-xilnex-transfer-note][arrival-notice-created]: orderId=${orderId}, ganNo=${arrivalNotice.name}, ganId=${arrivalNotice.id}`)
|
|
600
653
|
|
|
601
654
|
let orderProducts: any[] = []
|
|
602
655
|
await Promise.all(
|
|
@@ -647,27 +700,71 @@ xilnexRouter.post('/webhook-xilnex-transfer-note', async (context, next) => {
|
|
|
647
700
|
)
|
|
648
701
|
await tx.getRepository(OrderProduct).save(orderProducts)
|
|
649
702
|
}
|
|
703
|
+
} else {
|
|
704
|
+
logger.info(`xilnex-router[webhook-xilnex-transfer-note][skipped-no-outlet-match]: orderId=${orderId}, outlet=${accountInfo.outlet}, from=${orderInfo.fromLocation}, to=${orderInfo.toLocation}`)
|
|
650
705
|
}
|
|
706
|
+
} else {
|
|
707
|
+
logger.info(`xilnex-router[webhook-xilnex-transfer-note][skipped-no-order-id]: no orderId found in webhook payload`)
|
|
651
708
|
}
|
|
652
709
|
|
|
653
710
|
accountWebhookOrder.status = ACCOUNT_SYNC_STATUS.SUCCESS
|
|
654
|
-
await tx.getRepository(AccountWebhookOrder).save(accountWebhookOrder)
|
|
655
711
|
})
|
|
656
712
|
|
|
713
|
+
// Save webhook order outside transaction so it persists even if tx rolled back
|
|
714
|
+
if (accountWebhookOrder) {
|
|
715
|
+
await getRepository(AccountWebhookOrder).save(accountWebhookOrder)
|
|
716
|
+
}
|
|
717
|
+
|
|
657
718
|
context.status = 200
|
|
658
719
|
} catch (err) {
|
|
659
|
-
|
|
660
|
-
|
|
720
|
+
const errorMessage = err instanceof ValidationError
|
|
721
|
+
? JSON.stringify({ errorCode: err.errorCode, message: err.message, detail: err.detail })
|
|
722
|
+
: err?.message || String(err)
|
|
723
|
+
logger.error(`xilnex-router[webhook-xilnex-transfer-note]: ${errorMessage}`)
|
|
724
|
+
|
|
725
|
+
// Persist failed webhook order record for troubleshooting
|
|
726
|
+
try {
|
|
727
|
+
if (accountWebhookOrder) {
|
|
728
|
+
accountWebhookOrder.status = ACCOUNT_SYNC_STATUS.FAILED
|
|
729
|
+
accountWebhookOrder.response = errorMessage
|
|
730
|
+
await getRepository(AccountWebhookOrder).save(accountWebhookOrder)
|
|
731
|
+
} else if (accountDomain) {
|
|
732
|
+
// Error happened before webhook order was prepared — save with minimal info
|
|
733
|
+
await getRepository(AccountWebhookOrder).save({
|
|
734
|
+
name: uuidv4(),
|
|
735
|
+
request: JSON.stringify(context.request.body),
|
|
736
|
+
response: errorMessage,
|
|
737
|
+
platform: ACCOUNT_PLATFORM.XILNEX,
|
|
738
|
+
domain: accountDomain,
|
|
739
|
+
status: ACCOUNT_SYNC_STATUS.FAILED
|
|
740
|
+
})
|
|
741
|
+
}
|
|
742
|
+
} catch (saveErr) {
|
|
743
|
+
logger.error(`xilnex-router[webhook-xilnex-transfer-note][failed-to-save-webhook-order]: ${saveErr?.message}`)
|
|
744
|
+
}
|
|
745
|
+
|
|
661
746
|
context.status = 400
|
|
662
|
-
context.
|
|
747
|
+
context.body = { error: errorMessage }
|
|
663
748
|
}
|
|
664
749
|
})
|
|
665
750
|
|
|
666
751
|
xilnexRouter.post('/webhook-xilnex-stock-request', async (context, next) => {
|
|
752
|
+
let accountWebhookOrder: any = null
|
|
753
|
+
let accountDomain: any = null
|
|
754
|
+
|
|
667
755
|
try {
|
|
668
756
|
await getConnection().transaction(async (tx: EntityManager) => {
|
|
669
757
|
const { id, warehouseId } = context.query
|
|
670
758
|
const { body, headers } = context.request
|
|
759
|
+
|
|
760
|
+
// Log raw webhook payload for debugging
|
|
761
|
+
logger.info(
|
|
762
|
+
`xilnex-router[webhook-xilnex-stock-request][raw-payload]: ${JSON.stringify({
|
|
763
|
+
query: context.query,
|
|
764
|
+
body
|
|
765
|
+
})}`
|
|
766
|
+
)
|
|
767
|
+
|
|
671
768
|
const data = body?.Data ? JSON.parse(body.Data) : {}
|
|
672
769
|
|
|
673
770
|
const account = await AccountingAPI.getAccounting(id)
|
|
@@ -675,6 +772,17 @@ xilnexRouter.post('/webhook-xilnex-stock-request', async (context, next) => {
|
|
|
675
772
|
throw new Error(`${id} not found in Account`)
|
|
676
773
|
}
|
|
677
774
|
|
|
775
|
+
accountDomain = account.domain
|
|
776
|
+
|
|
777
|
+
// Prepare webhook order record early for persistence
|
|
778
|
+
accountWebhookOrder = {
|
|
779
|
+
name: uuidv4(),
|
|
780
|
+
request: body,
|
|
781
|
+
platform: ACCOUNT_PLATFORM.XILNEX,
|
|
782
|
+
domain: account.domain,
|
|
783
|
+
status: ACCOUNT_SYNC_STATUS.FAILED
|
|
784
|
+
}
|
|
785
|
+
|
|
678
786
|
const { webhookKey } = account
|
|
679
787
|
const signature = headers['xilnex-webhook-signature']
|
|
680
788
|
|
|
@@ -683,6 +791,7 @@ xilnexRouter.post('/webhook-xilnex-stock-request', async (context, next) => {
|
|
|
683
791
|
// webhook-xilnex-stock-request only supports Classic source (no Source field in body)
|
|
684
792
|
// Use parsed body for Classic source
|
|
685
793
|
if (!xilnex.isValidSignature(body, webhookKey, signature)) {
|
|
794
|
+
logger.error(`xilnex-router[webhook-xilnex-stock-request][signature-failed]: accountId=${id}`)
|
|
686
795
|
context.throw(400, 'Signature validation failed')
|
|
687
796
|
}
|
|
688
797
|
|
|
@@ -700,14 +809,6 @@ xilnexRouter.post('/webhook-xilnex-stock-request', async (context, next) => {
|
|
|
700
809
|
context.throw(400, `${warehouseId} not found in warehouse domain`)
|
|
701
810
|
}
|
|
702
811
|
|
|
703
|
-
let accountWebhookOrder: any = {
|
|
704
|
-
name: uuidv4(),
|
|
705
|
-
request: body,
|
|
706
|
-
platform: ACCOUNT_PLATFORM.XILNEX,
|
|
707
|
-
domain: account.domain,
|
|
708
|
-
status: ACCOUNT_SYNC_STATUS.FAILED
|
|
709
|
-
}
|
|
710
|
-
|
|
711
812
|
let accountInfo: any = account?.accountInfo ? JSON.parse(account.accountInfo) : {}
|
|
712
813
|
|
|
713
814
|
if (data?.id) {
|
|
@@ -931,14 +1032,42 @@ xilnexRouter.post('/webhook-xilnex-stock-request', async (context, next) => {
|
|
|
931
1032
|
}
|
|
932
1033
|
|
|
933
1034
|
accountWebhookOrder.status = ACCOUNT_SYNC_STATUS.SUCCESS
|
|
934
|
-
await tx.getRepository(AccountWebhookOrder).save(accountWebhookOrder)
|
|
935
1035
|
})
|
|
936
1036
|
|
|
1037
|
+
// Save webhook order outside transaction so it persists even if tx rolled back
|
|
1038
|
+
if (accountWebhookOrder) {
|
|
1039
|
+
await getRepository(AccountWebhookOrder).save(accountWebhookOrder)
|
|
1040
|
+
}
|
|
1041
|
+
|
|
937
1042
|
context.status = 200
|
|
938
1043
|
} catch (err) {
|
|
939
|
-
|
|
1044
|
+
const errorMessage = err instanceof ValidationError
|
|
1045
|
+
? JSON.stringify({ errorCode: err.errorCode, message: err.message, detail: err.detail })
|
|
1046
|
+
: err?.message || String(err)
|
|
1047
|
+
logger.error(`xilnex-router[webhook-xilnex-stock-request]: ${errorMessage}`)
|
|
1048
|
+
|
|
1049
|
+
// Persist failed webhook order record for troubleshooting
|
|
1050
|
+
try {
|
|
1051
|
+
if (accountWebhookOrder) {
|
|
1052
|
+
accountWebhookOrder.status = ACCOUNT_SYNC_STATUS.FAILED
|
|
1053
|
+
accountWebhookOrder.response = errorMessage
|
|
1054
|
+
await getRepository(AccountWebhookOrder).save(accountWebhookOrder)
|
|
1055
|
+
} else if (accountDomain) {
|
|
1056
|
+
await getRepository(AccountWebhookOrder).save({
|
|
1057
|
+
name: uuidv4(),
|
|
1058
|
+
request: JSON.stringify(context.request.body),
|
|
1059
|
+
response: errorMessage,
|
|
1060
|
+
platform: ACCOUNT_PLATFORM.XILNEX,
|
|
1061
|
+
domain: accountDomain,
|
|
1062
|
+
status: ACCOUNT_SYNC_STATUS.FAILED
|
|
1063
|
+
})
|
|
1064
|
+
}
|
|
1065
|
+
} catch (saveErr) {
|
|
1066
|
+
logger.error(`xilnex-router[webhook-xilnex-stock-request][failed-to-save-webhook-order]: ${saveErr?.message}`)
|
|
1067
|
+
}
|
|
1068
|
+
|
|
940
1069
|
context.status = 400
|
|
941
|
-
context.
|
|
1070
|
+
context.body = { error: errorMessage }
|
|
942
1071
|
}
|
|
943
1072
|
})
|
|
944
1073
|
|