@machinemetrics/mm-erp-sdk 0.9.4 → 0.9.5
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/README.md +54 -43
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/services/mm-api-service/index.d.ts +3 -3
- package/dist/services/mm-api-service/index.d.ts.map +1 -1
- package/dist/services/mm-api-service/index.js +1 -1
- package/dist/services/mm-api-service/index.js.map +1 -1
- package/dist/services/mm-api-service/mes-machine-settings.d.ts +46 -0
- package/dist/services/mm-api-service/mes-machine-settings.d.ts.map +1 -0
- package/dist/services/mm-api-service/mes-machine-settings.js +124 -0
- package/dist/services/mm-api-service/mes-machine-settings.js.map +1 -0
- package/dist/services/mm-api-service/mm-api-service.d.ts +28 -13
- package/dist/services/mm-api-service/mm-api-service.d.ts.map +1 -1
- package/dist/services/mm-api-service/mm-api-service.js +43 -47
- package/dist/services/mm-api-service/mm-api-service.js.map +1 -1
- package/dist/services/mm-api-service/types/mm-response-interfaces.d.ts +4 -16
- package/dist/services/mm-api-service/types/mm-response-interfaces.d.ts.map +1 -1
- package/dist/services/mm-api-service/types/mm-response-interfaces.js.map +1 -1
- package/dist/services/mm-api-service/types/receive-types.d.ts +19 -0
- package/dist/services/mm-api-service/types/receive-types.d.ts.map +1 -1
- package/dist/services/mm-api-service/types/receive-types.js +22 -2
- package/dist/services/mm-api-service/types/receive-types.js.map +1 -1
- package/dist/types/erp-connector.d.ts +8 -2
- package/dist/types/erp-connector.d.ts.map +1 -1
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +2 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/labor-import-from-erp.d.ts +68 -0
- package/dist/utils/labor-import-from-erp.d.ts.map +1 -0
- package/dist/utils/labor-import-from-erp.js +194 -0
- package/dist/utils/labor-import-from-erp.js.map +1 -0
- package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.d.ts +4 -2
- package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.d.ts.map +1 -1
- package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.js +17 -15
- package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.js.map +1 -1
- package/dist/utils/standard-process-drivers/labor-ticket-normalization.d.ts +6 -0
- package/dist/utils/standard-process-drivers/labor-ticket-normalization.d.ts.map +1 -1
- package/dist/utils/standard-process-drivers/labor-ticket-normalization.js +12 -0
- package/dist/utils/standard-process-drivers/labor-ticket-normalization.js.map +1 -1
- package/dist/utils/standard-process-drivers/mm-entity-processor.d.ts +11 -1
- package/dist/utils/standard-process-drivers/mm-entity-processor.d.ts.map +1 -1
- package/dist/utils/standard-process-drivers/mm-entity-processor.js +42 -4
- package/dist/utils/standard-process-drivers/mm-entity-processor.js.map +1 -1
- package/dist/utils/standard-process-drivers/standard-process-drivers.d.ts +22 -2
- package/dist/utils/standard-process-drivers/standard-process-drivers.d.ts.map +1 -1
- package/dist/utils/standard-process-drivers/standard-process-drivers.js +84 -0
- package/dist/utils/standard-process-drivers/standard-process-drivers.js.map +1 -1
- package/dist/utils/standard-process-drivers/timesheet-erp-synchronizer.d.ts +12 -0
- package/dist/utils/standard-process-drivers/timesheet-erp-synchronizer.d.ts.map +1 -0
- package/dist/utils/standard-process-drivers/timesheet-erp-synchronizer.js +79 -0
- package/dist/utils/standard-process-drivers/timesheet-erp-synchronizer.js.map +1 -0
- package/package.json +9 -3
- package/src/index.ts +22 -1
- package/src/services/mm-api-service/index.ts +5 -3
- package/src/services/mm-api-service/mes-machine-settings.test.ts +174 -0
- package/src/services/mm-api-service/mes-machine-settings.ts +169 -0
- package/src/services/mm-api-service/mm-api-service.ts +58 -60
- package/src/services/mm-api-service/types/mm-response-interfaces.ts +4 -17
- package/src/services/mm-api-service/types/receive-types.ts +22 -3
- package/src/types/erp-connector.ts +12 -2
- package/src/utils/index.ts +19 -0
- package/src/utils/labor-import-from-erp.test.ts +116 -0
- package/src/utils/labor-import-from-erp.ts +310 -0
- package/src/utils/standard-process-drivers/labor-ticket-erp-synchronizer.ts +20 -14
- package/src/utils/standard-process-drivers/labor-ticket-normalization.ts +15 -0
- package/src/utils/standard-process-drivers/mm-entity-processor.ts +61 -8
- package/src/utils/standard-process-drivers/standard-process-drivers.ts +134 -1
- package/src/utils/standard-process-drivers/timesheet-erp-synchronizer.ts +102 -0
- package/dist/utils/resource-group.d.ts +0 -11
- package/dist/utils/resource-group.d.ts.map +0 -1
- package/dist/utils/resource-group.js +0 -71
- package/dist/utils/resource-group.js.map +0 -1
- package/src/utils/resource-group.ts +0 -105
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MachineMetrics-side allowlisting and FK-safe filtering for labor tickets imported from an ERP.
|
|
3
|
+
* Connectors map ERP rows to {@link MMSendLaborTicket}; this module enforces MM mapping rules
|
|
4
|
+
* before calling {@link StandardProcessDrivers.writeEntitiesToMM}.
|
|
5
|
+
*/
|
|
6
|
+
import { CoreConfiguration } from "../services/data-sync-service/configuration-manager.js";
|
|
7
|
+
import { MMSendLaborTicket } from "../services/mm-api-service/types/send-types.js";
|
|
8
|
+
import { HTTPClientFactory } from "./http-client.js";
|
|
9
|
+
import { fetchMesMachineSettingsRows } from "../services/mm-api-service/mes-machine-settings.js";
|
|
10
|
+
import { sdkLogger as logger } from "../services/reporting-service/logger.js";
|
|
11
|
+
/**
|
|
12
|
+
* Resolves the work-order-operation key set used for labor import FK matching.
|
|
13
|
+
*/
|
|
14
|
+
export function resolveSyncedWorkOrderOperationKeysForLaborImport(options) {
|
|
15
|
+
const rows = options.syncedWorkOrderOperations;
|
|
16
|
+
if (rows && rows.length > 0) {
|
|
17
|
+
return buildSyncedWorkOrderOperationKeySet(rows);
|
|
18
|
+
}
|
|
19
|
+
const keys = options.syncedWorkOrderOperationKeys;
|
|
20
|
+
if (keys && keys.size > 0) {
|
|
21
|
+
return new Set(keys);
|
|
22
|
+
}
|
|
23
|
+
if (keys) {
|
|
24
|
+
return new Set(keys);
|
|
25
|
+
}
|
|
26
|
+
return new Set();
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Composite key for matching a labor ticket to a synced work order operation (workOrderId + sub + opr seq).
|
|
30
|
+
* Normalizes work order id to uppercase ASCII for stable joins across ERP batch vs labor rows.
|
|
31
|
+
*/
|
|
32
|
+
export function normalizeLaborTicketWorkOrderOpKey(workOrderId, sub, sequenceNumber) {
|
|
33
|
+
const wo = workOrderId === undefined || workOrderId === null
|
|
34
|
+
? ""
|
|
35
|
+
: String(workOrderId).trim().toUpperCase();
|
|
36
|
+
const subPart = sub === undefined || sub === null || sub === ""
|
|
37
|
+
? "0"
|
|
38
|
+
: String(sub).trim();
|
|
39
|
+
const seq = sequenceNumber === undefined || sequenceNumber === null
|
|
40
|
+
? ""
|
|
41
|
+
: String(sequenceNumber).trim();
|
|
42
|
+
return `${wo}:${subPart}:${seq}`;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Build a set of keys for work order operations produced during the same from-ERP batch as labor import.
|
|
46
|
+
*/
|
|
47
|
+
export function buildSyncedWorkOrderOperationKeySet(workOrderOps) {
|
|
48
|
+
const keys = new Set();
|
|
49
|
+
for (const op of workOrderOps) {
|
|
50
|
+
keys.add(normalizeLaborTicketWorkOrderOpKey(op.work_order_id, op.sub, op.sequence_number));
|
|
51
|
+
}
|
|
52
|
+
return keys;
|
|
53
|
+
}
|
|
54
|
+
function toLowerSet(ids) {
|
|
55
|
+
return new Set(ids.map((id) => id.toLowerCase()));
|
|
56
|
+
}
|
|
57
|
+
function employeeNumMapFromIds(operatorIds) {
|
|
58
|
+
const m = new Map();
|
|
59
|
+
for (const id of operatorIds) {
|
|
60
|
+
m.set(id.toLowerCase(), id);
|
|
61
|
+
}
|
|
62
|
+
return m;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Loads machine-settings from MES (`GET /mes/settings/machine-settings`) via
|
|
66
|
+
* {@link fetchMesMachineSettingsRows}, then returns deduped `laborResourceId` values where labor is enabled.
|
|
67
|
+
*
|
|
68
|
+
* Throws if `mmApiBaseUrl` / `mmApiAuthToken` are missing or the MES request fails — same requirements as
|
|
69
|
+
* {@link MMApiClient.fetchMappedErpResourcesForCompany}.
|
|
70
|
+
*/
|
|
71
|
+
export async function getMesLaborImportResourceIds() {
|
|
72
|
+
const rows = await fetchMesMachineSettingsRows();
|
|
73
|
+
const seen = new Set();
|
|
74
|
+
const out = [];
|
|
75
|
+
for (const row of rows) {
|
|
76
|
+
if (row.laborTicketEnabled !== true)
|
|
77
|
+
continue;
|
|
78
|
+
const rid = row.laborResourceId;
|
|
79
|
+
if (rid == null || String(rid).trim() === "")
|
|
80
|
+
continue;
|
|
81
|
+
const s = String(rid).trim();
|
|
82
|
+
const low = s.toLowerCase();
|
|
83
|
+
if (seen.has(low))
|
|
84
|
+
continue;
|
|
85
|
+
seen.add(low);
|
|
86
|
+
out.push(s);
|
|
87
|
+
}
|
|
88
|
+
logger.info(`getMesLaborImportResourceIds: ${out.length} labor resource id(s) from machine-settings`);
|
|
89
|
+
return out;
|
|
90
|
+
}
|
|
91
|
+
const OPERATORS_GRAPHQL = {
|
|
92
|
+
operationName: "operators",
|
|
93
|
+
query: "query operators { operators(where: {erpId: {_is_null: false}}) { erpId } }",
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Mapped operator ERP IDs from the mapping auth service GraphQL proxy (same as legacy connector query).
|
|
97
|
+
*/
|
|
98
|
+
export async function getMappedOperatorErpIdsForImport() {
|
|
99
|
+
const config = CoreConfiguration.inst();
|
|
100
|
+
const baseUrl = config.mmApiBaseUrl;
|
|
101
|
+
const token = config.mmApiAuthToken;
|
|
102
|
+
if (!baseUrl || !token) {
|
|
103
|
+
logger.warn("getMappedOperatorErpIdsForImport: missing mmApiBaseUrl or mmApiAuthToken; returning empty allowlist");
|
|
104
|
+
return [];
|
|
105
|
+
}
|
|
106
|
+
const client = HTTPClientFactory.getInstance({
|
|
107
|
+
baseUrl,
|
|
108
|
+
retryAttempts: config.mmApiRetryAttempts,
|
|
109
|
+
timeoutMs: config.mmApiTimeoutSeconds * 1000,
|
|
110
|
+
});
|
|
111
|
+
try {
|
|
112
|
+
const response = await client.request({
|
|
113
|
+
url: "/proxy/graphql",
|
|
114
|
+
method: "POST",
|
|
115
|
+
headers: {
|
|
116
|
+
"Content-Type": "application/json",
|
|
117
|
+
Authorization: `Bearer ${token}`,
|
|
118
|
+
},
|
|
119
|
+
data: OPERATORS_GRAPHQL,
|
|
120
|
+
});
|
|
121
|
+
const operators = response.data?.data?.operators;
|
|
122
|
+
if (!Array.isArray(operators)) {
|
|
123
|
+
logger.warn("getMappedOperatorErpIdsForImport: unexpected GraphQL response shape");
|
|
124
|
+
return [];
|
|
125
|
+
}
|
|
126
|
+
const ids = operators
|
|
127
|
+
.map((o) => o.erpId)
|
|
128
|
+
.filter((id) => typeof id === "string" && id.trim() !== "");
|
|
129
|
+
logger.info(`getMappedOperatorErpIdsForImport: ${ids.length} operator erpId(s) from GraphQL`);
|
|
130
|
+
return ids;
|
|
131
|
+
}
|
|
132
|
+
catch (error) {
|
|
133
|
+
logger.error("getMappedOperatorErpIdsForImport: request failed", { error });
|
|
134
|
+
return [];
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Applies resource allowlist, operator allowlist, and synced work order operation keys.
|
|
139
|
+
* Resolves canonical casing for personId using the operator allowlist (case-insensitive match).
|
|
140
|
+
*/
|
|
141
|
+
export async function filterLaborTicketsForMmImport(tickets, options) {
|
|
142
|
+
const woOpKeys = resolveSyncedWorkOrderOperationKeysForLaborImport(options);
|
|
143
|
+
const resourceIds = options.resourceIds ?? (await getMesLaborImportResourceIds());
|
|
144
|
+
const operatorIds = options.operatorIds ?? (await getMappedOperatorErpIdsForImport());
|
|
145
|
+
const resourceSet = toLowerSet(resourceIds);
|
|
146
|
+
const operatorSet = toLowerSet(operatorIds);
|
|
147
|
+
const employeeCanon = employeeNumMapFromIds(operatorIds);
|
|
148
|
+
const rejected = {
|
|
149
|
+
missingFields: 0,
|
|
150
|
+
notInResourceAllowlist: 0,
|
|
151
|
+
notInOperatorAllowlist: 0,
|
|
152
|
+
notInSyncedWorkOrderOperation: 0,
|
|
153
|
+
};
|
|
154
|
+
const accepted = [];
|
|
155
|
+
for (const ticket of tickets) {
|
|
156
|
+
const wo = ticket.workOrderId?.trim() ?? "";
|
|
157
|
+
const res = ticket.resourceId?.trim() ?? "";
|
|
158
|
+
const person = ticket.personId?.trim() ?? "";
|
|
159
|
+
const seq = ticket.sequenceNumber?.trim() ?? "";
|
|
160
|
+
const sub = ticket.sub?.trim() ?? "";
|
|
161
|
+
if (!wo || !res || !person || seq === "") {
|
|
162
|
+
rejected.missingFields++;
|
|
163
|
+
continue;
|
|
164
|
+
}
|
|
165
|
+
if (!resourceSet.has(res.toLowerCase())) {
|
|
166
|
+
rejected.notInResourceAllowlist++;
|
|
167
|
+
continue;
|
|
168
|
+
}
|
|
169
|
+
if (!operatorSet.has(person.toLowerCase())) {
|
|
170
|
+
rejected.notInOperatorAllowlist++;
|
|
171
|
+
continue;
|
|
172
|
+
}
|
|
173
|
+
const woOpKey = normalizeLaborTicketWorkOrderOpKey(wo, sub || "0", seq);
|
|
174
|
+
if (!woOpKeys.has(woOpKey)) {
|
|
175
|
+
rejected.notInSyncedWorkOrderOperation++;
|
|
176
|
+
continue;
|
|
177
|
+
}
|
|
178
|
+
const canonicalPerson = employeeCanon.get(person.toLowerCase()) ?? person;
|
|
179
|
+
if (canonicalPerson !== ticket.personId) {
|
|
180
|
+
accepted.push(new MMSendLaborTicket(ticket.workOrderId, ticket.lot, ticket.split, ticket.sub, ticket.sequenceNumber, ticket.resourceId, canonicalPerson, ticket.laborTicketId, ticket.transactionDate, ticket.clockIn, ticket.clockOut, ticket.goodParts, ticket.badParts, ticket.type, ticket.comment, ticket.state, ticket.customFieldsSchemaRef, ticket.customFields, ticket.laborTicketRef, ticket.machineRef));
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
accepted.push(ticket);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
logger.info("filterLaborTicketsForMmImport: summary", {
|
|
187
|
+
input: tickets.length,
|
|
188
|
+
accepted: accepted.length,
|
|
189
|
+
syncedWorkOrderOperationKeyCount: woOpKeys.size,
|
|
190
|
+
rejected,
|
|
191
|
+
});
|
|
192
|
+
return { accepted, rejected };
|
|
193
|
+
}
|
|
194
|
+
//# sourceMappingURL=labor-import-from-erp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"labor-import-from-erp.js","sourceRoot":"","sources":["../../src/utils/labor-import-from-erp.ts"],"names":[],"mappings":"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"}
|
|
@@ -54,8 +54,10 @@ export declare class LaborTicketERPSynchronizer {
|
|
|
54
54
|
/**
|
|
55
55
|
* A stable identity for "did the business-relevant contents of this labor ticket change?"
|
|
56
56
|
*
|
|
57
|
-
* IMPORTANT: Excludes fields that the SDK itself mutates (e.g. laborTicketId, updatedAt)
|
|
58
|
-
*
|
|
57
|
+
* IMPORTANT: Excludes fields that the SDK itself mutates (e.g. laborTicketId, updatedAt)
|
|
58
|
+
* AND identity fields the caller already keys the ledger by (laborTicketRef / erp-import key).
|
|
59
|
+
* Including identity here would make from-ERP imports (no ref yet) and the next to-ERP
|
|
60
|
+
* read (real MM ref) produce different hashes for the same business state, defeating dedupe.
|
|
59
61
|
*
|
|
60
62
|
* PUBLIC: Used by both polling and NATS handlers for consistent deduplication
|
|
61
63
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"labor-ticket-erp-synchronizer.d.ts","sourceRoot":"","sources":["../../../src/utils/standard-process-drivers/labor-ticket-erp-synchronizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sDAAsD,CAAC;
|
|
1
|
+
{"version":3,"file":"labor-ticket-erp-synchronizer.d.ts","sourceRoot":"","sources":["../../../src/utils/standard-process-drivers/labor-ticket-erp-synchronizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sDAAsD,CAAC;AAc5F;;GAEG;AACH,qBAAa,0BAA0B;IAGrC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAS;IAEnD;;;OAGG;mBACkB,kCAAkC;IA2BvD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,wCAAwC;IA2BvD;;;;;;;;;;;;;;;;;;;;;;;OAuBG;WACU,SAAS,CACpB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,sBAAsB,EACjC,OAAO,CAAC,EAAE;QACR,UAAU,CAAC,EAAE,OAAO,CAAC;KACtB,GACA,OAAO,CAAC,IAAI,CAAC;IAmMhB,OAAO,CAAC,MAAM,CAAC,gCAAgC;mBAgB1B,wBAAwB;mBA4IxB,0BAA0B;mBAsG1B,0BAA0B;IAwD/C;;OAEG;WACU,WAAW,CACtB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,sBAAsB,GAChC,OAAO,CAAC,IAAI,CAAC;mBA2IK,sBAAsB;mBAetB,kBAAkB;IA2CvC;;;;;;;;;OASG;WACW,4BAA4B,CACxC,MAAM,EAAE,oBAAoB,GAC3B,MAAM;IA0BT;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,4BAA4B;IAa3C,OAAO,CAAC,MAAM,CAAC,UAAU;IAIzB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,0BAA0B;CAc1C"}
|
|
@@ -3,7 +3,7 @@ import { convertLaborTicketToLocalTimezone } from "../mm-labor-ticket-helpers.js
|
|
|
3
3
|
import { sdkLogger as logger } from "../../services/reporting-service/logger.js";
|
|
4
4
|
import { summarizeError } from "../error-utils.js";
|
|
5
5
|
import { LaborTicketSyncLedgerManager } from "../../services/caching-service/labor-ticket-sync-ledger-manager.js";
|
|
6
|
-
import { normalizeTimestamp, normalizeString, normalizeNumber, normalizeLaborTicketRef, normalizeReasons, } from "./labor-ticket-normalization.js";
|
|
6
|
+
import { normalizeTimestamp, normalizeString, normalizeNumber, normalizeLaborTicketRef, normalizeReasons, tryLaborTicketLedgerErpImportKey, } from "./labor-ticket-normalization.js";
|
|
7
7
|
/**
|
|
8
8
|
* Handles synchronization of labor tickets between MachineMetrics and ERP systems
|
|
9
9
|
*/
|
|
@@ -273,10 +273,19 @@ export class LaborTicketERPSynchronizer {
|
|
|
273
273
|
const sig = this.laborTicketBusinessSignature(ticket);
|
|
274
274
|
const signatureHash = LaborTicketSyncLedgerManager.hashSignature(sig);
|
|
275
275
|
try {
|
|
276
|
-
|
|
276
|
+
let existing = await ledger.getLatestByRef({
|
|
277
277
|
system: connectorType,
|
|
278
278
|
laborTicketRef,
|
|
279
279
|
});
|
|
280
|
+
if (!existing) {
|
|
281
|
+
const erpImportKey = tryLaborTicketLedgerErpImportKey(ticket.workOrderId, ticket.laborTicketId);
|
|
282
|
+
if (erpImportKey) {
|
|
283
|
+
existing = await ledger.getLatestByRef({
|
|
284
|
+
system: connectorType,
|
|
285
|
+
laborTicketRef: erpImportKey,
|
|
286
|
+
});
|
|
287
|
+
}
|
|
288
|
+
}
|
|
280
289
|
if (existing && existing.signatureHash === signatureHash) {
|
|
281
290
|
LaborTicketSyncDecisionTracker.recordPersistedSameSignatureSkip(decisionState, {
|
|
282
291
|
laborTicketRef,
|
|
@@ -530,16 +539,8 @@ export class LaborTicketERPSynchronizer {
|
|
|
530
539
|
laborTicketResult = convertLaborTicketToLocalTimezone(laborTicket);
|
|
531
540
|
logger.info(`processing laborTicket, id=${laborTicket.laborTicketId}, ref=${laborTicket.laborTicketRef}`);
|
|
532
541
|
logger.debug({ laborTicket });
|
|
533
|
-
// MLW TODO: Should we always swap out the resource ID for the machine group
|
|
534
|
-
// Or use a flag?
|
|
535
|
-
/**
|
|
536
|
-
* Swapping out the resource ID for the group id corresponding to the
|
|
537
|
-
* resource ID in the ERP would be done like so:
|
|
538
|
-
* const machineGroupId = await mmApiClient.getResourceERPGroupId(laborTicket.resourceId);
|
|
539
|
-
* if(machineGroupId) {
|
|
540
|
-
* laborTicket.resourceId = machineGroupId;
|
|
541
|
-
* }
|
|
542
|
-
*/
|
|
542
|
+
// MLW TODO: Should we always swap out the resource ID for the machine group ERP id when relevant?
|
|
543
|
+
// Or use a flag? Connector-specific mapping (MES / ERP behavior) replaces the old GraphQL-based helper.
|
|
543
544
|
if (!laborTicket.laborTicketId) {
|
|
544
545
|
const { laborTicket: laborTicketResult, erpUid } = await connector.createLaborTicketInERP(laborTicket);
|
|
545
546
|
laborTicketResult.laborTicketId = erpUid;
|
|
@@ -558,14 +559,15 @@ export class LaborTicketERPSynchronizer {
|
|
|
558
559
|
/**
|
|
559
560
|
* A stable identity for "did the business-relevant contents of this labor ticket change?"
|
|
560
561
|
*
|
|
561
|
-
* IMPORTANT: Excludes fields that the SDK itself mutates (e.g. laborTicketId, updatedAt)
|
|
562
|
-
*
|
|
562
|
+
* IMPORTANT: Excludes fields that the SDK itself mutates (e.g. laborTicketId, updatedAt)
|
|
563
|
+
* AND identity fields the caller already keys the ledger by (laborTicketRef / erp-import key).
|
|
564
|
+
* Including identity here would make from-ERP imports (no ref yet) and the next to-ERP
|
|
565
|
+
* read (real MM ref) produce different hashes for the same business state, defeating dedupe.
|
|
563
566
|
*
|
|
564
567
|
* PUBLIC: Used by both polling and NATS handlers for consistent deduplication
|
|
565
568
|
*/
|
|
566
569
|
static laborTicketBusinessSignature(ticket) {
|
|
567
570
|
const signatureObject = {
|
|
568
|
-
laborTicketRef: normalizeLaborTicketRef(ticket.laborTicketRef),
|
|
569
571
|
clockIn: normalizeTimestamp(ticket.clockIn),
|
|
570
572
|
clockOut: normalizeTimestamp(ticket.clockOut),
|
|
571
573
|
goodParts: normalizeNumber(ticket.goodParts),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"labor-ticket-erp-synchronizer.js","sourceRoot":"","sources":["../../../src/utils/standard-process-drivers/labor-ticket-erp-synchronizer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"labor-ticket-erp-synchronizer.js","sourceRoot":"","sources":["../../../src/utils/standard-process-drivers/labor-ticket-erp-synchronizer.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,12 @@ export declare function normalizeNumber(n: unknown): number | null;
|
|
|
20
20
|
* Ensures "42" and 42 produce the same signature.
|
|
21
21
|
*/
|
|
22
22
|
export declare function normalizeLaborTicketRef(ref: unknown): string | null;
|
|
23
|
+
/**
|
|
24
|
+
* Stable SQLite ledger key for labor tickets written from ERP → MM when `laborTicketRef`
|
|
25
|
+
* is not yet known. Matches {@link tryLaborTicketLedgerErpImportKey} on the to-ERP path
|
|
26
|
+
* so the first export cycle can dedupe against the post-import ledger row.
|
|
27
|
+
*/
|
|
28
|
+
export declare function tryLaborTicketLedgerErpImportKey(workOrderId: unknown, laborTicketId: unknown): string | null;
|
|
23
29
|
/**
|
|
24
30
|
* Normalize reasons array for consistent signatures
|
|
25
31
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"labor-ticket-normalization.d.ts","sourceRoot":"","sources":["../../../src/utils/standard-process-drivers/labor-ticket-normalization.ts"],"names":[],"mappings":"AAEA;;;GAGG;AAEH;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAO/E;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAIzD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAIzD;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAInE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,EAAE,CAe5E"}
|
|
1
|
+
{"version":3,"file":"labor-ticket-normalization.d.ts","sourceRoot":"","sources":["../../../src/utils/standard-process-drivers/labor-ticket-normalization.ts"],"names":[],"mappings":"AAEA;;;GAGG;AAEH;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAO/E;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAIzD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAIzD;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAInE;AAED;;;;GAIG;AACH,wBAAgB,gCAAgC,CAC9C,WAAW,EAAE,OAAO,EACpB,aAAa,EAAE,OAAO,GACrB,MAAM,GAAG,IAAI,CAKf;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,EAAE,CAe5E"}
|
|
@@ -44,6 +44,18 @@ export function normalizeLaborTicketRef(ref) {
|
|
|
44
44
|
const s = String(ref);
|
|
45
45
|
return s.length === 0 ? null : s;
|
|
46
46
|
}
|
|
47
|
+
/**
|
|
48
|
+
* Stable SQLite ledger key for labor tickets written from ERP → MM when `laborTicketRef`
|
|
49
|
+
* is not yet known. Matches {@link tryLaborTicketLedgerErpImportKey} on the to-ERP path
|
|
50
|
+
* so the first export cycle can dedupe against the post-import ledger row.
|
|
51
|
+
*/
|
|
52
|
+
export function tryLaborTicketLedgerErpImportKey(workOrderId, laborTicketId) {
|
|
53
|
+
const wo = normalizeLaborTicketRef(workOrderId)?.trim() ?? "";
|
|
54
|
+
const id = normalizeLaborTicketRef(laborTicketId)?.trim() ?? "";
|
|
55
|
+
if (!wo || !id)
|
|
56
|
+
return null;
|
|
57
|
+
return `erp-import:${wo}:${id}`;
|
|
58
|
+
}
|
|
47
59
|
/**
|
|
48
60
|
* Normalize reasons array for consistent signatures
|
|
49
61
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"labor-ticket-normalization.js","sourceRoot":"","sources":["../../../src/utils/standard-process-drivers/labor-ticket-normalization.ts"],"names":[],"mappings":"AAEA;;;GAGG;AAEH;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,EAA6B;IAC9D,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IACrB,IAAI,CAAC;QACH,OAAO,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC,CAAC,8BAA8B;IAC3C,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,CAAU;IACxC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC/C,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,OAAO,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,CAAU;IACxC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC;IAC3D,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAClD,OAAO,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,GAAY;IAClD,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACnD,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IACtB,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAiC;IAChE,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;SACnB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,MAAM,GAAS,CAAS,EAAE,MAAM,IAAI,EAAE,CAAC;QAC7C,OAAO,CACL,MAAM,CAAC,QAAQ;YACf,MAAM,CAAC,IAAI;YACX,MAAM,CAAC,SAAS;YAChB,MAAM,CAAC,eAAe;YACtB,EAAE,CACH,CAAC;IACJ,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,CAAC;SACxD,GAAG,CAAC,MAAM,CAAC;SACX,IAAI,EAAE,CAAC;AACZ,CAAC"}
|
|
1
|
+
{"version":3,"file":"labor-ticket-normalization.js","sourceRoot":"","sources":["../../../src/utils/standard-process-drivers/labor-ticket-normalization.ts"],"names":[],"mappings":"AAEA;;;GAGG;AAEH;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,EAA6B;IAC9D,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IACrB,IAAI,CAAC;QACH,OAAO,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC,CAAC,8BAA8B;IAC3C,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,CAAU;IACxC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC/C,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,OAAO,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,CAAU;IACxC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC;IAC3D,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAClD,OAAO,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,GAAY;IAClD,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACnD,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IACtB,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACnC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gCAAgC,CAC9C,WAAoB,EACpB,aAAsB;IAEtB,MAAM,EAAE,GAAG,uBAAuB,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC9D,MAAM,EAAE,GAAG,uBAAuB,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAChE,IAAI,CAAC,EAAE,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IAC5B,OAAO,cAAc,EAAE,IAAI,EAAE,EAAE,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAiC;IAChE,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;SACnB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,MAAM,GAAS,CAAS,EAAE,MAAM,IAAI,EAAE,CAAC;QAC7C,OAAO,CACL,MAAM,CAAC,QAAQ;YACf,MAAM,CAAC,IAAI;YACX,MAAM,CAAC,SAAS;YAChB,MAAM,CAAC,eAAe;YACtB,EAAE,CACH,CAAC;IACJ,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,CAAC;SACxD,GAAG,CAAC,MAAM,CAAC;SACX,IAAI,EAAE,CAAC;AACZ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ERPObjType } from "../../types/erp-types.js";
|
|
2
2
|
import { BatchCacheManager } from "../../services/caching-service/batch-cache-manager.js";
|
|
3
|
-
import { IToRESTApiObject } from "../../services/mm-api-service/index.js";
|
|
3
|
+
import { IToRESTApiObject, MMSendLaborTicket } from "../../services/mm-api-service/index.js";
|
|
4
4
|
import { WriteEntitiesToMMResult } from "./standard-process-drivers.js";
|
|
5
5
|
/**
|
|
6
6
|
* Handles processing of entities to the MachineMetrics API
|
|
@@ -44,6 +44,16 @@ export declare class MMEntityProcessor {
|
|
|
44
44
|
* @throws Error for unknown status codes
|
|
45
45
|
*/
|
|
46
46
|
private static _handleResponse;
|
|
47
|
+
/**
|
|
48
|
+
* PUBLIC: marks labor tickets imported from ERP in the local sync ledger so the next
|
|
49
|
+
* to-erp cycle can dedupe them by signature. Safe to call before AND after the MM POST
|
|
50
|
+
* (upsertAttempt is idempotent on (system, laborTicketRef)).
|
|
51
|
+
*/
|
|
52
|
+
static markLaborTicketsInLedger(tickets: MMSendLaborTicket[], connectorType: string, label?: string): Promise<{
|
|
53
|
+
written: number;
|
|
54
|
+
skippedNoKey: number;
|
|
55
|
+
failed: number;
|
|
56
|
+
}>;
|
|
47
57
|
private static _markLaborTicketsInLedger;
|
|
48
58
|
}
|
|
49
59
|
//# sourceMappingURL=mm-entity-processor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mm-entity-processor.d.ts","sourceRoot":"","sources":["../../../src/utils/standard-process-drivers/mm-entity-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uDAAuD,CAAC;AAC1F,OAAO,EACL,gBAAgB,
|
|
1
|
+
{"version":3,"file":"mm-entity-processor.d.ts","sourceRoot":"","sources":["../../../src/utils/standard-process-drivers/mm-entity-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uDAAuD,CAAC;AAC1F,OAAO,EACL,gBAAgB,EAOhB,iBAAiB,EAOlB,MAAM,wCAAwC,CAAC;AAGhD,OAAO,EACL,uBAAuB,EAExB,MAAM,+BAA+B,CAAC;AAQvC;;GAEG;AACH,qBAAa,iBAAiB;IAC5B;;;;;;;;OAQG;WACU,aAAa,CACxB,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,gBAAgB,EAAE,EAC7B,iBAAiB,EAAE,iBAAiB,GAAG,IAAI,EAC3C,OAAO,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,GACnC,OAAO,CAAC,uBAAuB,CAAC;IAkCnC;;;;;OAKG;mBACkB,iBAAiB;IA+BtC;;OAEG;mBACkB,UAAU;IAyC/B;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAgC/B;;;;;;;OAOG;mBACkB,eAAe;IAqGpC;;;;OAIG;WACiB,wBAAwB,CAC1C,OAAO,EAAE,iBAAiB,EAAE,EAC5B,aAAa,EAAE,MAAM,EACrB,KAAK,GAAE,MAA4B,GAClC,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;mBA2EhD,yBAAyB;CAU/C"}
|
|
@@ -6,6 +6,7 @@ import { LaborTicketSyncLedgerManager } from "../../services/caching-service/lab
|
|
|
6
6
|
import { LaborTicketERPSynchronizer } from "./labor-ticket-erp-synchronizer.js";
|
|
7
7
|
import { MMReceiveLaborTicket } from "../../services/mm-api-service/types/receive-types.js";
|
|
8
8
|
import { sdkLogger as logger } from "../../services/reporting-service/logger.js";
|
|
9
|
+
import { tryLaborTicketLedgerErpImportKey } from "./labor-ticket-normalization.js";
|
|
9
10
|
/**
|
|
10
11
|
* Handles processing of entities to the MachineMetrics API
|
|
11
12
|
*/
|
|
@@ -192,7 +193,21 @@ export class MMEntityProcessor {
|
|
|
192
193
|
throw new Error(`writeEntitiesToMM: Unknown HTTP status code: ${mmApiResponse.httpStatus}. An exception was expected.`);
|
|
193
194
|
}
|
|
194
195
|
}
|
|
195
|
-
|
|
196
|
+
/**
|
|
197
|
+
* PUBLIC: marks labor tickets imported from ERP in the local sync ledger so the next
|
|
198
|
+
* to-erp cycle can dedupe them by signature. Safe to call before AND after the MM POST
|
|
199
|
+
* (upsertAttempt is idempotent on (system, laborTicketRef)).
|
|
200
|
+
*/
|
|
201
|
+
static async markLaborTicketsInLedger(tickets, connectorType, label = "labor-ledger-mark") {
|
|
202
|
+
const stats = { written: 0, skippedNoKey: 0, failed: 0 };
|
|
203
|
+
if (tickets.length === 0) {
|
|
204
|
+
logger.info(`${label}: nothing to mark`);
|
|
205
|
+
return stats;
|
|
206
|
+
}
|
|
207
|
+
logger.info(`${label}: marking labor tickets in sync ledger`, {
|
|
208
|
+
ticketCount: tickets.length,
|
|
209
|
+
connectorType,
|
|
210
|
+
});
|
|
196
211
|
const ledger = new LaborTicketSyncLedgerManager();
|
|
197
212
|
try {
|
|
198
213
|
for (const ticket of tickets) {
|
|
@@ -200,7 +215,23 @@ export class MMEntityProcessor {
|
|
|
200
215
|
const fullTicket = ticket.toFullApiObject();
|
|
201
216
|
const mmTicket = new MMReceiveLaborTicket(fullTicket);
|
|
202
217
|
const signature = LaborTicketERPSynchronizer.laborTicketBusinessSignature(mmTicket);
|
|
203
|
-
const
|
|
218
|
+
const explicitRef = ticket.laborTicketRef ?? fullTicket.laborTicketRef;
|
|
219
|
+
let laborTicketRef;
|
|
220
|
+
if (explicitRef != null && explicitRef !== "") {
|
|
221
|
+
laborTicketRef = String(explicitRef);
|
|
222
|
+
}
|
|
223
|
+
else {
|
|
224
|
+
const erpKey = tryLaborTicketLedgerErpImportKey(mmTicket.workOrderId, mmTicket.laborTicketId);
|
|
225
|
+
if (!erpKey) {
|
|
226
|
+
stats.skippedNoKey++;
|
|
227
|
+
logger.warn(`${label}: missing laborTicketRef and ERP import key; skipping`, {
|
|
228
|
+
laborTicketId: ticket.laborTicketId,
|
|
229
|
+
workOrderId: ticket.workOrderId,
|
|
230
|
+
});
|
|
231
|
+
continue;
|
|
232
|
+
}
|
|
233
|
+
laborTicketRef = erpKey;
|
|
234
|
+
}
|
|
204
235
|
await ledger.upsertAttempt({
|
|
205
236
|
system: connectorType,
|
|
206
237
|
laborTicketRef,
|
|
@@ -211,9 +242,11 @@ export class MMEntityProcessor {
|
|
|
211
242
|
errorSummary: null,
|
|
212
243
|
attemptedAtIso: new Date().toISOString(),
|
|
213
244
|
});
|
|
245
|
+
stats.written++;
|
|
214
246
|
}
|
|
215
247
|
catch (ticketError) {
|
|
216
|
-
|
|
248
|
+
stats.failed++;
|
|
249
|
+
logger.warn(`${label}: per-ticket ledger upsert failed`, {
|
|
217
250
|
laborTicketId: ticket.laborTicketId,
|
|
218
251
|
error: ticketError,
|
|
219
252
|
});
|
|
@@ -221,7 +254,7 @@ export class MMEntityProcessor {
|
|
|
221
254
|
}
|
|
222
255
|
}
|
|
223
256
|
catch (error) {
|
|
224
|
-
logger.warn(
|
|
257
|
+
logger.warn(`${label}: ledger pass failed`, {
|
|
225
258
|
ticketCount: tickets.length,
|
|
226
259
|
error,
|
|
227
260
|
});
|
|
@@ -229,6 +262,11 @@ export class MMEntityProcessor {
|
|
|
229
262
|
finally {
|
|
230
263
|
await ledger.destroy();
|
|
231
264
|
}
|
|
265
|
+
logger.info(`${label}: ledger marking complete`, stats);
|
|
266
|
+
return stats;
|
|
267
|
+
}
|
|
268
|
+
static async _markLaborTicketsInLedger(tickets, connectorType) {
|
|
269
|
+
await MMEntityProcessor.markLaborTicketsInLedger(tickets, connectorType, "labor-ledger-mark:post-write");
|
|
232
270
|
}
|
|
233
271
|
}
|
|
234
272
|
//# sourceMappingURL=mm-entity-processor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mm-entity-processor.js","sourceRoot":"","sources":["../../../src/utils/standard-process-drivers/mm-entity-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAkBtD,OAAO,EAAE,WAAW,EAAE,MAAM,iDAAiD,CAAC;AAE9E,OAAO,EAEL,sBAAsB,GACvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,4BAA4B,EAAE,MAAM,oEAAoE,CAAC;AAClH,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,MAAM,sDAAsD,CAAC;AAC5F,OAAO,EAAE,SAAS,IAAI,MAAM,EAAE,MAAM,4CAA4C,CAAC;
|
|
1
|
+
{"version":3,"file":"mm-entity-processor.js","sourceRoot":"","sources":["../../../src/utils/standard-process-drivers/mm-entity-processor.ts"],"names":[],"mappings":"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"}
|