feat(P19ERP3-1,P19ERP3-2): 实现资产ERP摘要服务与建卡/流转出站联动
这个提交包含在:
@@ -1,5 +1,6 @@
|
||||
const {
|
||||
pushPaidReimbursementToErp,
|
||||
exportAssetToErp,
|
||||
exportJournalToErp,
|
||||
exportProcurementToErp,
|
||||
} = require('./erp');
|
||||
@@ -136,6 +137,17 @@ function resolveBindingSpecs(eventType, payload, response) {
|
||||
return specs.filter(Boolean);
|
||||
}
|
||||
|
||||
if (eventType === 'erp.asset.export') {
|
||||
return [
|
||||
createBindingSpec(
|
||||
'asset_erp_card',
|
||||
payload?.entityId,
|
||||
extractResponseValue(response, 'externalAssetId') ?? extractResponseValue(response, 'externalId'),
|
||||
extractResponseValue(response, 'externalAssetNo') ?? extractResponseValue(response, 'externalCode') ?? payload?.assetNo ?? null,
|
||||
),
|
||||
].filter(Boolean);
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
@@ -179,9 +191,11 @@ async function dispatchErpEvent({ prisma, config, eventType, payload }) {
|
||||
const result =
|
||||
eventType === 'erp.procurement.export'
|
||||
? await exportProcurementToErp(config, payload)
|
||||
: eventType === 'erp.journal.export'
|
||||
? await exportJournalToErp(config, payload)
|
||||
: await pushPaidReimbursementToErp(config, payload);
|
||||
: eventType === 'erp.asset.export'
|
||||
? await exportAssetToErp(config, payload)
|
||||
: eventType === 'erp.journal.export'
|
||||
? await exportJournalToErp(config, payload)
|
||||
: await pushPaidReimbursementToErp(config, payload);
|
||||
|
||||
if (!result.ok) {
|
||||
throw toDispatchError(result);
|
||||
@@ -200,7 +214,8 @@ async function dispatchOutboxEvent({ prisma, config, eventType, payload }) {
|
||||
if (
|
||||
eventType === 'erp.reimbursement.paid' ||
|
||||
eventType === 'erp.journal.export' ||
|
||||
eventType === 'erp.procurement.export'
|
||||
eventType === 'erp.procurement.export' ||
|
||||
eventType === 'erp.asset.export'
|
||||
) {
|
||||
return dispatchErpEvent({ prisma, config, eventType, payload });
|
||||
}
|
||||
|
||||
在新工单中引用
屏蔽一个用户