@machinemetrics/mm-erp-sdk 0.9.2 → 0.9.3-beta.0
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/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/services/data-sync-service/configuration-manager.d.ts.map +1 -1
- package/dist/services/data-sync-service/configuration-manager.js +20 -8
- package/dist/services/data-sync-service/configuration-manager.js.map +1 -1
- package/dist/services/erp-api-services/errors.d.ts.map +1 -1
- package/dist/services/erp-api-services/errors.js +3 -0
- package/dist/services/erp-api-services/errors.js.map +1 -1
- package/dist/services/mm-api-service/index.d.ts +2 -2
- package/dist/services/mm-api-service/index.d.ts.map +1 -1
- package/dist/services/mm-api-service/index.js.map +1 -1
- package/dist/services/mm-api-service/mm-aggregated-part-counts.d.ts +28 -0
- package/dist/services/mm-api-service/mm-aggregated-part-counts.d.ts.map +1 -0
- package/dist/services/mm-api-service/mm-aggregated-part-counts.js +76 -0
- package/dist/services/mm-api-service/mm-aggregated-part-counts.js.map +1 -0
- package/dist/services/mm-api-service/mm-api-service.d.ts +48 -1
- package/dist/services/mm-api-service/mm-api-service.d.ts.map +1 -1
- package/dist/services/mm-api-service/mm-api-service.js +154 -6
- package/dist/services/mm-api-service/mm-api-service.js.map +1 -1
- package/dist/services/mm-api-service/mm-graphql-proxy.d.ts +13 -0
- package/dist/services/mm-api-service/mm-graphql-proxy.d.ts.map +1 -0
- package/dist/services/mm-api-service/mm-graphql-proxy.js +25 -0
- package/dist/services/mm-api-service/mm-graphql-proxy.js.map +1 -0
- package/dist/services/mm-api-service/token-mgr.d.ts.map +1 -1
- package/dist/services/mm-api-service/token-mgr.js +0 -5
- package/dist/services/mm-api-service/token-mgr.js.map +1 -1
- package/dist/services/mm-api-service/types/mm-response-interfaces.d.ts +34 -0
- 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/sql-server-erp-service/sql-server-service.d.ts.map +1 -1
- package/dist/services/sql-server-erp-service/sql-server-service.js +10 -1
- package/dist/services/sql-server-erp-service/sql-server-service.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +3 -0
- package/src/services/data-sync-service/configuration-manager.ts +22 -8
- package/src/services/erp-api-services/errors.ts +4 -0
- package/src/services/mm-api-service/index.ts +6 -0
- package/src/services/mm-api-service/mm-aggregated-part-counts.ts +110 -0
- package/src/services/mm-api-service/mm-api-service.ts +224 -6
- package/src/services/mm-api-service/mm-graphql-proxy.ts +33 -0
- package/src/services/mm-api-service/token-mgr.ts +0 -5
- package/src/services/mm-api-service/types/mm-response-interfaces.ts +37 -0
- package/src/services/sql-server-erp-service/sql-server-service.ts +9 -1
package/dist/index.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ export type { ERPApiConfig } from "./services/erp-api-services/types.js";
|
|
|
13
13
|
export { MMApiClient } from "./services/mm-api-service/index.js";
|
|
14
14
|
export { MMReceiveLaborTicket } from "./services/mm-api-service/index.js";
|
|
15
15
|
export { MMReceiveWorkOrder } from "./services/mm-api-service/index.js";
|
|
16
|
-
export type { MMReceiveLaborTicketReason, MMReceiveLaborTicketWorkOrderOperation, IToRESTApiObject, IToFullApiObject, } from "./services/mm-api-service/index.js";
|
|
16
|
+
export type { MMReceiveLaborTicketReason, MMReceiveLaborTicketWorkOrderOperation, IToRESTApiObject, IToFullApiObject, MMMappedErpResourceRow, MMAggregatedPartCountBucket, MMAggregatedPartCountsPerMachine, } from "./services/mm-api-service/index.js";
|
|
17
17
|
export { MMSendPerson, MMSendResource, MMSendPart, MMSendPartOperation, MMSendWorkOrder, MMSendWorkOrderOperation, MMSendWorkOrderOperationLaborTicketSync, MMSendReason, MMSendLaborTicket, } from "./services/mm-api-service/index.js";
|
|
18
18
|
export type { MMSendWorkOrderBatch, MMSendWorkOrderOperationLaborTicketSyncPatch, MMSendWorkOrderOperationPayload, } from "./services/mm-api-service/index.js";
|
|
19
19
|
export { getUniqueRows, removeExtraneousFields, getPayloadWithoutIDField, trimObjectValues, cleanupNumbers, addNewFieldFromExternalSource, addNewFieldFromLookupField, formatDateWithTZOffset, toISOWithOffset, applyTimezoneOffsetsToFields, calculateTimeDifferenceInHours, getSecondsOfDay, convertToLocalTime, convertUtcDateTimeToErpLocal, convertErpLocalDateTimeToUtc, getERPTimezone, getErrorType, formatError, formatErrorForLogging, } from "./utils/index.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,YAAY,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAElF,YAAY,EACV,qBAAqB,EACrB,yBAAyB,EACzB,4BAA4B,EAC5B,qCAAqC,EACrC,wBAAwB,EACxB,iCAAiC,GAClC,MAAM,iCAAiC,CAAC;AAGzC,OAAO,EAAE,sBAAsB,EAAE,MAAM,uDAAuD,CAAC;AAC/F,OAAO,EAAE,yBAAyB,EAAE,MAAM,uDAAuD,CAAC;AAClG,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAC;AAC7F,YAAY,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAGzE,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,YAAY,EACV,0BAA0B,EAC1B,sCAAsC,EACtC,gBAAgB,EAChB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAYlD,2BAA2B;AAC3B,OAAO,EAAE,sBAAsB,EAAE,MAAM,uDAAuD,CAAC;AAC/F,OAAO,EAAE,yBAAyB,EAAE,MAAM,uDAAuD,CAAC;AAClG,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAC;AAG7F,0BAA0B;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAYlD,2BAA2B;AAC3B,OAAO,EAAE,sBAAsB,EAAE,MAAM,uDAAuD,CAAC;AAC/F,OAAO,EAAE,yBAAyB,EAAE,MAAM,uDAAuD,CAAC;AAClG,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAC;AAG7F,0BAA0B;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAWxE,OAAO,EACL,YAAY,EACZ,cAAc,EACd,UAAU,EACV,mBAAmB,EACnB,eAAe,EACf,wBAAwB,EACxB,uCAAuC,EACvC,YAAY,EACZ,iBAAiB,GAClB,MAAM,oCAAoC,CAAC;AAQ5C,iDAAiD;AACjD,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,wBAAwB,EACxB,gBAAgB,EAChB,cAAc,EACd,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACtB,eAAe,EACf,4BAA4B,EAC5B,8BAA8B,EAC9B,eAAe,EACf,kBAAkB,EAClB,4BAA4B,EAC5B,4BAA4B,EAC5B,cAAc,EACd,YAAY,EACZ,WAAW,EACX,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAG1B,mBAAmB;AACnB,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAElF,4DAA4D;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAOnD,uCAAuC;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAE5E,oBAAoB;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAE3E,kBAAkB;AAClB,OAAO,EAAE,MAAM,EAAE,MAAM,uCAAuC,CAAC;AAK/D,gCAAgC;AAChC,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,kBAAkB,EAClB,2BAA2B,EAC3B,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAI1D,OAAO,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AACtF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAKnF,OAAO,EAAE,WAAW,EAAE,MAAM,6CAA6C,CAAC;AAE1E,OAAO,EAAE,cAAc,EAAE,MAAM,wDAAwD,CAAC;AAGxF,mBAAmB;AACnB,OAAO,EAAE,iBAAiB,EAAE,MAAM,mDAAmD,CAAC;AAEtF,yBAAyB;AACzB,OAAO,EACL,iBAAiB,EACjB,yBAAyB,GAC1B,MAAM,uDAAuD,CAAC;AAE/D,sBAAsB;AACtB,OAAO,EACL,gBAAgB,EAChB,eAAe,GAChB,MAAM,4CAA4C,CAAC;AAGpD,4BAA4B;AAC5B,OAAO,EACL,WAAW,EACX,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,eAAe,EACf,kBAAkB,GACnB,MAAM,sCAAsC,CAAC;AAG9C,2BAA2B;AAC3B,OAAO,EAAE,qBAAqB,EAAE,MAAM,uDAAuD,CAAC;AAG9F,gBAAgB;AAChB,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAE9D,uBAAuB;AACvB,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,QAAQ,GAGT,MAAM,kBAAkB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configuration-manager.d.ts","sourceRoot":"","sources":["../../../src/services/data-sync-service/configuration-manager.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;
|
|
1
|
+
{"version":3,"file":"configuration-manager.d.ts","sourceRoot":"","sources":["../../../src/services/data-sync-service/configuration-manager.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AAEvB,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AAqBpF,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAoB;IAG3C,SAAgB,QAAQ,EAAE,MAAM,CAAC;IACjC,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,OAAO,EAAE,MAAM,CAAC;IAGhC,SAAgB,kBAAkB,EAAE,MAAM,CAAC;IAC3C,SAAgB,YAAY,EAAE,MAAM,CAAC;IACrC,SAAgB,cAAc,EAAE,MAAM,CAAC;IACvC,SAAgB,kBAAkB,EAAE,MAAM,CAAC;IAC3C,SAAgB,mBAAmB,EAAE,MAAM,CAAC;IAG5C,SAAgB,QAAQ,EAAE,MAAM,CAAC;IAGjC,SAAgB,iBAAiB,EAAE,MAAM,CAAC;IAC1C,SAAgB,oBAAoB,EAAE,MAAM,CAAC;IAC7C,SAAgB,mBAAmB,EAAE,MAAM,CAAC;IAG5C,SAAgB,eAAe,EAAE,MAAM,CAAC;IACxC,SAAgB,aAAa,EAAE,MAAM,CAAC;IACtC,SAAgB,yBAAyB,EAAE,MAAM,CAAC;IAClD,SAAgB,4BAA4B,EAAE,MAAM,CAAC;IAErD,OAAO;WAoFO,IAAI,IAAI,iBAAiB;IAOvC;;;OAGG;IACI,eAAe,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CA+BlD;AAED;;GAEG;AACH,eAAO,MAAM,yBAAyB,QAAO,sBAqB5C,CAAC;AAEF;;;GAGG;AACH,qBAAa,sBAAsB;aAEf,SAAS,EAAE,MAAM;aACjB,cAAc,EAAE,MAAM;aACtB,kBAAkB,EAAE,MAAM;aAC1B,oBAAoB,EAAE,MAAM;aAC5B,cAAc,EAAE,MAAM;aACtB,aAAa,EAAE,MAAM;gBALrB,SAAS,EAAE,MAAM,EAAE,kBAAkB;IACrC,cAAc,EAAE,MAAM,EAAE,qCAAqC;IAC7D,kBAAkB,EAAE,MAAM,EAAE,yCAAyC;IACrE,oBAAoB,EAAE,MAAM,EAAE,2BAA2B;IACzD,cAAc,EAAE,MAAM,EAAE,gBAAgB;IACxC,aAAa,GAAE,MAAU;CAE5C;AAED;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,QAAO,sBAS5C,CAAC"}
|
|
@@ -1,6 +1,22 @@
|
|
|
1
1
|
import "dotenv/config";
|
|
2
|
-
import { configureLogger } from "../reporting-service/logger.js";
|
|
2
|
+
import { configureLogger, sdkLogger as logger } from "../reporting-service/logger.js";
|
|
3
3
|
import { getEnvBoolean, getEnvNumber, getEnvString } from "../../utils/env.js";
|
|
4
|
+
/** Default MM REST API origin when `MM_MAPPING_AUTH_SERVICE_URL` is unset (trimmed, no trailing slash). */
|
|
5
|
+
const MM_API_BASE_URL_DEFAULT = "https://api.machinemetrics.com";
|
|
6
|
+
/**
|
|
7
|
+
* Resolves MM REST API base URL for {@link CoreConfiguration} only — not exported from the SDK.
|
|
8
|
+
* Precedence: non-empty `MM_MAPPING_AUTH_SERVICE_URL` (trimmed, no trailing slash), else {@link MM_API_BASE_URL_DEFAULT}.
|
|
9
|
+
*/
|
|
10
|
+
function resolveMmApiBaseUrl() {
|
|
11
|
+
const fromEnv = getEnvString("MM_MAPPING_AUTH_SERVICE_URL", "");
|
|
12
|
+
if (fromEnv.length > 0) {
|
|
13
|
+
return fromEnv.replace(/\/$/, "");
|
|
14
|
+
}
|
|
15
|
+
logger.warn("MM_MAPPING_AUTH_SERVICE_URL not set; using default MM API base", {
|
|
16
|
+
defaultBase: MM_API_BASE_URL_DEFAULT,
|
|
17
|
+
});
|
|
18
|
+
return MM_API_BASE_URL_DEFAULT.replace(/\/$/, "");
|
|
19
|
+
}
|
|
4
20
|
export class CoreConfiguration {
|
|
5
21
|
static instance;
|
|
6
22
|
// General Configuration
|
|
@@ -34,14 +50,10 @@ export class CoreConfiguration {
|
|
|
34
50
|
*/
|
|
35
51
|
this.mmERPSvcApiBaseUrl = getEnvString("MM_MAPPING_SERVICE_URL", "");
|
|
36
52
|
/**
|
|
37
|
-
* MM REST API URL
|
|
53
|
+
* MM REST API URL (typically https://api.machinemetrics.com).
|
|
54
|
+
* Set via `MM_MAPPING_AUTH_SERVICE_URL`, or the product default if unset — see {@link resolveMmApiBaseUrl}.
|
|
38
55
|
*/
|
|
39
|
-
|
|
40
|
-
const mmAuthSvcUrl = getEnvString("MM_MAPPING_AUTH_SERVICE_URL", "");
|
|
41
|
-
console.log("MM_MAPPING_AUTH_SERVICE_URL env var:", mmAuthSvcUrl);
|
|
42
|
-
this.mmApiBaseUrl = mmAuthSvcUrl;
|
|
43
|
-
console.log("mmApiBaseUrl set to:", this.mmApiBaseUrl);
|
|
44
|
-
console.log("=== END CONFIG DEBUG ===");
|
|
56
|
+
this.mmApiBaseUrl = resolveMmApiBaseUrl();
|
|
45
57
|
/**
|
|
46
58
|
* Company Auth Token
|
|
47
59
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configuration-manager.js","sourceRoot":"","sources":["../../../src/services/data-sync-service/configuration-manager.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"configuration-manager.js","sourceRoot":"","sources":["../../../src/services/data-sync-service/configuration-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/services/erp-api-services/errors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAGxD;;GAEG;AACH,qBAAa,YAAa,SAAQ,KAAK;IAG5B,MAAM,EAAE,kBAAkB,EAAE;gBADnC,OAAO,EAAE,MAAM,EACR,MAAM,EAAE,kBAAkB,EAAE;CAKtC;AAED;;;GAGG;AACH,qBAAa,YAAY;IACvB;;;;;OAKG;IACH,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/services/erp-api-services/errors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAGxD;;GAEG;AACH,qBAAa,YAAa,SAAQ,KAAK;IAG5B,MAAM,EAAE,kBAAkB,EAAE;gBADnC,OAAO,EAAE,MAAM,EACR,MAAM,EAAE,kBAAkB,EAAE;CAKtC;AAED;;;GAGG;AACH,qBAAa,YAAY;IACvB;;;;;OAKG;IACH,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK;CAwDrC"}
|
|
@@ -23,6 +23,9 @@ export class ErrorHandler {
|
|
|
23
23
|
* @throws {HTTPError|GraphQLError} Standardized error with appropriate details
|
|
24
24
|
*/
|
|
25
25
|
static handle(error) {
|
|
26
|
+
if (error instanceof GraphQLError) {
|
|
27
|
+
throw error;
|
|
28
|
+
}
|
|
26
29
|
// Handle HTTPError (already processed by http-client)
|
|
27
30
|
if (error instanceof HTTPError) {
|
|
28
31
|
// For GraphQL responses with errors in the data
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/services/erp-api-services/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD;;GAEG;AACH,MAAM,OAAO,YAAa,SAAQ,KAAK;IAG5B;IAFT,YACE,OAAe,EACR,MAA4B;QAEnC,KAAK,CAAC,OAAO,CAAC,CAAC;QAFR,WAAM,GAAN,MAAM,CAAsB;QAGnC,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC7B,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,YAAY;IACvB;;;;;OAKG;IACH,MAAM,CAAC,MAAM,CAAC,KAAc;QAC1B,sDAAsD;QACtD,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;YAC/B,gDAAgD;YAChD,IACE,KAAK,CAAC,IAAI;gBACV,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;gBAC9B,QAAQ,IAAI,KAAK,CAAC,IAAI;gBACtB,KAAK,CAAC,OAAO,CAAE,KAAK,CAAC,IAAY,CAAC,MAAM,CAAC;gBACxC,KAAK,CAAC,IAAY,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EACrC,CAAC;gBACD,MAAM,YAAY,GAAG,IAAI,YAAY,CACnC,eAAe,EACd,KAAK,CAAC,IAAyC,CAAC,MAAM,CACxD,CAAC;gBACF,MAAM,YAAY,CAAC;YACrB,CAAC;YACD,MAAM,KAAK,CAAC,CAAC,kCAAkC;QACjD,CAAC;QAED,gEAAgE;QAChE,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;YAChC,oCAAoC;YACpC,IACE,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM;gBAC5B,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;gBACzC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EACrC,CAAC;gBACD,MAAM,YAAY,GAAG,IAAI,YAAY,CACnC,eAAe,EACf,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,MAA8B,CACnD,CAAC;gBACF,MAAM,YAAY,CAAC;YACrB,CAAC;YAED,gEAAgE;YAChE,MAAM,SAAS,GAAG,IAAI,SAAS,CAC7B,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,EAC7B,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,QAAQ,EAAE,IAAI,CACrB,CAAC;YACF,MAAM,SAAS,CAAC;QAClB,CAAC;QAED,mBAAmB;QACnB,MAAM,SAAS,GAAG,IAAI,SAAS,CAC7B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,2BAA2B,EACpE,GAAG,CACJ,CAAC;QACF,MAAM,SAAS,CAAC;IAClB,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/services/erp-api-services/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD;;GAEG;AACH,MAAM,OAAO,YAAa,SAAQ,KAAK;IAG5B;IAFT,YACE,OAAe,EACR,MAA4B;QAEnC,KAAK,CAAC,OAAO,CAAC,CAAC;QAFR,WAAM,GAAN,MAAM,CAAsB;QAGnC,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC7B,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,YAAY;IACvB;;;;;OAKG;IACH,MAAM,CAAC,MAAM,CAAC,KAAc;QAC1B,IAAI,KAAK,YAAY,YAAY,EAAE,CAAC;YAClC,MAAM,KAAK,CAAC;QACd,CAAC;QAED,sDAAsD;QACtD,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;YAC/B,gDAAgD;YAChD,IACE,KAAK,CAAC,IAAI;gBACV,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;gBAC9B,QAAQ,IAAI,KAAK,CAAC,IAAI;gBACtB,KAAK,CAAC,OAAO,CAAE,KAAK,CAAC,IAAY,CAAC,MAAM,CAAC;gBACxC,KAAK,CAAC,IAAY,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EACrC,CAAC;gBACD,MAAM,YAAY,GAAG,IAAI,YAAY,CACnC,eAAe,EACd,KAAK,CAAC,IAAyC,CAAC,MAAM,CACxD,CAAC;gBACF,MAAM,YAAY,CAAC;YACrB,CAAC;YACD,MAAM,KAAK,CAAC,CAAC,kCAAkC;QACjD,CAAC;QAED,gEAAgE;QAChE,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;YAChC,oCAAoC;YACpC,IACE,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM;gBAC5B,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;gBACzC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EACrC,CAAC;gBACD,MAAM,YAAY,GAAG,IAAI,YAAY,CACnC,eAAe,EACf,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,MAA8B,CACnD,CAAC;gBACF,MAAM,YAAY,CAAC;YACrB,CAAC;YAED,gEAAgE;YAChE,MAAM,SAAS,GAAG,IAAI,SAAS,CAC7B,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,EAC7B,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,QAAQ,EAAE,IAAI,CACrB,CAAC;YACF,MAAM,SAAS,CAAC;QAClB,CAAC;QAED,mBAAmB;QACnB,MAAM,SAAS,GAAG,IAAI,SAAS,CAC7B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,2BAA2B,EACpE,GAAG,CACJ,CAAC;QACF,MAAM,SAAS,CAAC;IAClB,CAAC;CACF"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { MMApiClient } from "./mm-api-service.js";
|
|
2
2
|
import type { MMReceiveLaborTicketReason, MMReceiveLaborTicketWorkOrderOperation } from "./types/receive-types.js";
|
|
3
3
|
import { MMSendPerson, MMSendResource, MMSendPart, MMSendPartOperation, MMSendWorkOrder, MMSendWorkOrderOperation, MMSendWorkOrderOperationLaborTicketSync, MMSendReason, MMSendLaborTicket, MMSendWorkOrderBatch } from "./types/send-types.js";
|
|
4
|
-
import type { MMApiBaseResponse, MM200NonLaborTicketResponse, MM200LaborTicketResponse, MM207NonLaborTicketResponse, MM207LaborTicketResponse, MM500NonLaborTicketException, MM500LaborTicketException, MMGraphQLResourceResponse, MMGraphQLWorkOrderResponse, MMMachineGroupsResponse } from "./types/mm-response-interfaces.js";
|
|
4
|
+
import type { MMAggregatedPartCountBucket, MMAggregatedPartCountsPerMachine, MMApiBaseResponse, MM200NonLaborTicketResponse, MM200LaborTicketResponse, MM207NonLaborTicketResponse, MM207LaborTicketResponse, MM500NonLaborTicketException, MM500LaborTicketException, MMGraphQLResourceResponse, MMGraphQLWorkOrderResponse, MMMachineGroupsResponse, MMMappedErpResourceRow } from "./types/mm-response-interfaces.js";
|
|
5
5
|
import { ensureCompanyInfo, getCachedCompanyId, getCachedCompanyInfo, getCachedCompanyLocationRef, getCachedCompanyTimezoneName, getCachedCompanyTimezoneOffsetHours, getCachedTimezoneName, getCachedTimezoneOffset, getCompanyInfo } from "./company-info.js";
|
|
6
6
|
import type { CompanyInfo, EnsureCompanyInfoParams } from "./company-info.js";
|
|
7
7
|
/**
|
|
@@ -12,7 +12,7 @@ export { MMApiClient };
|
|
|
12
12
|
* Response interfaces for MM API calls
|
|
13
13
|
* These provide type safety for the various response shapes based on HTTP status codes and entity types
|
|
14
14
|
*/
|
|
15
|
-
export type { MMApiBaseResponse, MM200NonLaborTicketResponse, MM200LaborTicketResponse, MM207NonLaborTicketResponse, MM207LaborTicketResponse, MM500NonLaborTicketException, MM500LaborTicketException, MMGraphQLResourceResponse, MMGraphQLWorkOrderResponse, MMMachineGroupsResponse, };
|
|
15
|
+
export type { MMAggregatedPartCountBucket, MMAggregatedPartCountsPerMachine, MMApiBaseResponse, MM200NonLaborTicketResponse, MM200LaborTicketResponse, MM207NonLaborTicketResponse, MM207LaborTicketResponse, MM500NonLaborTicketException, MM500LaborTicketException, MMGraphQLResourceResponse, MMGraphQLWorkOrderResponse, MMMachineGroupsResponse, MMMappedErpResourceRow, };
|
|
16
16
|
/**
|
|
17
17
|
* Types related to entities received from the MM API
|
|
18
18
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/mm-api-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EACV,0BAA0B,EAC1B,sCAAsC,EACvC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,YAAY,EACZ,cAAc,EACd,UAAU,EACV,mBAAmB,EACnB,eAAe,EACf,wBAAwB,EACxB,uCAAuC,EACvC,YAAY,EACZ,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EACV,iBAAiB,EACjB,2BAA2B,EAC3B,wBAAwB,EACxB,2BAA2B,EAC3B,wBAAwB,EACxB,4BAA4B,EAC5B,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,uBAAuB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/mm-api-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EACV,0BAA0B,EAC1B,sCAAsC,EACvC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,YAAY,EACZ,cAAc,EACd,UAAU,EACV,mBAAmB,EACnB,eAAe,EACf,wBAAwB,EACxB,uCAAuC,EACvC,YAAY,EACZ,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EACV,2BAA2B,EAC3B,gCAAgC,EAChC,iBAAiB,EACjB,2BAA2B,EAC3B,wBAAwB,EACxB,2BAA2B,EAC3B,wBAAwB,EACxB,4BAA4B,EAC5B,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,uBAAuB,EACvB,sBAAsB,EACvB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,2BAA2B,EAC3B,4BAA4B,EAC5B,mCAAmC,EACnC,qBAAqB,EACrB,uBAAuB,EACvB,cAAc,EACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EACV,WAAW,EACX,uBAAuB,EACxB,MAAM,mBAAmB,CAAC;AAE3B;;GAEG;AACH,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB;;;GAGG;AACH,YAAY,EACV,2BAA2B,EAC3B,gCAAgC,EAChC,iBAAiB,EACjB,2BAA2B,EAC3B,wBAAwB,EACxB,2BAA2B,EAC3B,wBAAwB,EACxB,4BAA4B,EAC5B,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,uBAAuB,EACvB,sBAAsB,GACvB,CAAC;AAEF;;GAEG;AACH,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACpF,YAAY,EACV,0BAA0B,EAC1B,sCAAsC,GACvC,CAAC;AAEF;;GAEG;AACH,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,4CAA4C,EAC5C,+BAA+B,GAChC,MAAM,uBAAuB,CAAC;AAE/B;;GAEG;AACH,OAAO,EACL,YAAY,EACZ,cAAc,EACd,UAAU,EACV,mBAAmB,EACnB,eAAe,EACf,wBAAwB,EACxB,uCAAuC,EACvC,YAAY,EACZ,iBAAiB,GAClB,CAAC;AAEF;;GAEG;AACH,YAAY,EAAE,oBAAoB,EAAE,CAAC;AAErC;;GAEG;AACH,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,2BAA2B,EAC3B,uBAAuB,EACvB,qBAAqB,EACrB,mCAAmC,EACnC,4BAA4B,GAC7B,CAAC;AACF,YAAY,EAAE,WAAW,EAAE,uBAAuB,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/mm-api-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAKlD,OAAO,EACL,YAAY,EACZ,cAAc,EACd,UAAU,EACV,mBAAmB,EACnB,eAAe,EACf,wBAAwB,EACxB,uCAAuC,EACvC,YAAY,EACZ,iBAAiB,GAElB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/mm-api-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAKlD,OAAO,EACL,YAAY,EACZ,cAAc,EACd,UAAU,EACV,mBAAmB,EACnB,eAAe,EACf,wBAAwB,EACxB,uCAAuC,EACvC,YAAY,EACZ,iBAAiB,GAElB,MAAM,uBAAuB,CAAC;AAgB/B,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,2BAA2B,EAC3B,4BAA4B,EAC5B,mCAAmC,EACnC,qBAAqB,EACrB,uBAAuB,EACvB,cAAc,GACf,MAAM,mBAAmB,CAAC;AAM3B;;GAEG;AACH,OAAO,EAAE,WAAW,EAAE,CAAC;AAsBvB;;GAEG;AACH,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAgBpF;;GAEG;AACH,OAAO,EACL,YAAY,EACZ,cAAc,EACd,UAAU,EACV,mBAAmB,EACnB,eAAe,EACf,wBAAwB,EACxB,uCAAuC,EACvC,YAAY,EACZ,iBAAiB,GAClB,CAAC;AAOF;;GAEG;AACH,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,2BAA2B,EAC3B,uBAAuB,EACvB,qBAAqB,EACrB,mCAAmC,EACnC,4BAA4B,GAC7B,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GraphQL `aggregatedPartCounts` argument builder (inline `args: { ... }` fragment).
|
|
3
|
+
* `machineRef` is required in `args` for this API.
|
|
4
|
+
*
|
|
5
|
+
* @see https://developers.machinemetrics.com/docs/graphql/api
|
|
6
|
+
*/
|
|
7
|
+
import type { MMAggregatedPartCountBucket } from "./types/mm-response-interfaces.js";
|
|
8
|
+
export declare const MM_DEFAULT_PART_COUNT_METRIC_KEY: "part-count";
|
|
9
|
+
export declare function buildAggregatedPartCountsArgsFragment(options: {
|
|
10
|
+
machineRef: number;
|
|
11
|
+
metricKey: string;
|
|
12
|
+
windowStartAt: string;
|
|
13
|
+
windowEndAt: string;
|
|
14
|
+
bucketWidth?: string;
|
|
15
|
+
bucketResolution?: number;
|
|
16
|
+
windowWidth?: string;
|
|
17
|
+
}): string;
|
|
18
|
+
export declare function buildAggregatedPartCountsQuery(options: {
|
|
19
|
+
machineRef: number;
|
|
20
|
+
metricKey: string;
|
|
21
|
+
windowStartAt: string;
|
|
22
|
+
windowEndAt: string;
|
|
23
|
+
bucketWidth?: string;
|
|
24
|
+
bucketResolution?: number;
|
|
25
|
+
windowWidth?: string;
|
|
26
|
+
}): string;
|
|
27
|
+
export declare function parseAggregatedPartCountBucketRow(raw: unknown): MMAggregatedPartCountBucket;
|
|
28
|
+
//# sourceMappingURL=mm-aggregated-part-counts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mm-aggregated-part-counts.d.ts","sourceRoot":"","sources":["../../../src/services/mm-api-service/mm-aggregated-part-counts.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAErF,eAAO,MAAM,gCAAgC,EAAG,YAAqB,CAAC;AAMtE,wBAAgB,qCAAqC,CAAC,OAAO,EAAE;IAC7D,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,MAAM,CAqBT;AAED,wBAAgB,8BAA8B,CAAC,OAAO,EAAE;IACtD,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,MAAM,CAGT;AAED,wBAAgB,iCAAiC,CAC/C,GAAG,EAAE,OAAO,GACX,2BAA2B,CAgD7B"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GraphQL `aggregatedPartCounts` argument builder (inline `args: { ... }` fragment).
|
|
3
|
+
* `machineRef` is required in `args` for this API.
|
|
4
|
+
*
|
|
5
|
+
* @see https://developers.machinemetrics.com/docs/graphql/api
|
|
6
|
+
*/
|
|
7
|
+
export const MM_DEFAULT_PART_COUNT_METRIC_KEY = "part-count";
|
|
8
|
+
function escapeGraphqlStringLiteral(s) {
|
|
9
|
+
return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
|
|
10
|
+
}
|
|
11
|
+
export function buildAggregatedPartCountsArgsFragment(options) {
|
|
12
|
+
const refInt = Math.trunc(Number(options.machineRef));
|
|
13
|
+
if (!Number.isFinite(refInt)) {
|
|
14
|
+
throw new RangeError("machineRef must be a finite number");
|
|
15
|
+
}
|
|
16
|
+
const parts = [
|
|
17
|
+
`machineRef: ${refInt}`,
|
|
18
|
+
`metricKey: "${escapeGraphqlStringLiteral(options.metricKey)}"`,
|
|
19
|
+
`windowStartAt: "${escapeGraphqlStringLiteral(options.windowStartAt)}"`,
|
|
20
|
+
`windowEndAt: "${escapeGraphqlStringLiteral(options.windowEndAt)}"`,
|
|
21
|
+
];
|
|
22
|
+
if (options.bucketWidth !== undefined) {
|
|
23
|
+
parts.push(`bucketWidth: "${escapeGraphqlStringLiteral(options.bucketWidth)}"`);
|
|
24
|
+
}
|
|
25
|
+
if (options.bucketResolution !== undefined) {
|
|
26
|
+
parts.push(`bucketResolution: ${options.bucketResolution}`);
|
|
27
|
+
}
|
|
28
|
+
if (options.windowWidth !== undefined) {
|
|
29
|
+
parts.push(`windowWidth: "${escapeGraphqlStringLiteral(options.windowWidth)}"`);
|
|
30
|
+
}
|
|
31
|
+
return parts.join(", ");
|
|
32
|
+
}
|
|
33
|
+
export function buildAggregatedPartCountsQuery(options) {
|
|
34
|
+
const args = buildAggregatedPartCountsArgsFragment(options);
|
|
35
|
+
return `query aggregatedPartCountsForMachine { aggregatedPartCounts(args: { ${args} }) { machineRef metricKey sumOfValues eventCount bucketStartAt bucketEndAt bucketWidth firstValue lastValue } }`;
|
|
36
|
+
}
|
|
37
|
+
export function parseAggregatedPartCountBucketRow(raw) {
|
|
38
|
+
if (typeof raw !== "object" || raw === null) {
|
|
39
|
+
throw new Error("aggregatedPartCounts: invalid row");
|
|
40
|
+
}
|
|
41
|
+
const o = raw;
|
|
42
|
+
const machineRef = typeof o.machineRef === "number" ? o.machineRef : Number(o.machineRef);
|
|
43
|
+
const sumOfValues = typeof o.sumOfValues === "number" ? o.sumOfValues : Number(o.sumOfValues);
|
|
44
|
+
const eventCount = typeof o.eventCount === "number" ? o.eventCount : Number(o.eventCount);
|
|
45
|
+
const metricKey = typeof o.metricKey === "string" ? o.metricKey : "";
|
|
46
|
+
const bucketStartAt = typeof o.bucketStartAt === "string" ? o.bucketStartAt : "";
|
|
47
|
+
const bucketEndAt = typeof o.bucketEndAt === "string" ? o.bucketEndAt : "";
|
|
48
|
+
const bucketWidth = typeof o.bucketWidth === "string" ? o.bucketWidth : "";
|
|
49
|
+
if (!Number.isFinite(machineRef) ||
|
|
50
|
+
!Number.isFinite(sumOfValues) ||
|
|
51
|
+
!Number.isFinite(eventCount)) {
|
|
52
|
+
throw new Error("aggregatedPartCounts: missing numeric fields");
|
|
53
|
+
}
|
|
54
|
+
const firstValue = o.firstValue === null || o.firstValue === undefined
|
|
55
|
+
? null
|
|
56
|
+
: typeof o.firstValue === "number"
|
|
57
|
+
? o.firstValue
|
|
58
|
+
: Number(o.firstValue);
|
|
59
|
+
const lastValue = o.lastValue === null || o.lastValue === undefined
|
|
60
|
+
? null
|
|
61
|
+
: typeof o.lastValue === "number"
|
|
62
|
+
? o.lastValue
|
|
63
|
+
: Number(o.lastValue);
|
|
64
|
+
return {
|
|
65
|
+
machineRef,
|
|
66
|
+
metricKey,
|
|
67
|
+
sumOfValues,
|
|
68
|
+
eventCount,
|
|
69
|
+
bucketStartAt,
|
|
70
|
+
bucketEndAt,
|
|
71
|
+
bucketWidth,
|
|
72
|
+
firstValue: firstValue === null || Number.isFinite(firstValue) ? firstValue : null,
|
|
73
|
+
lastValue: lastValue === null || Number.isFinite(lastValue) ? lastValue : null,
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=mm-aggregated-part-counts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mm-aggregated-part-counts.js","sourceRoot":"","sources":["../../../src/services/mm-api-service/mm-aggregated-part-counts.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { MMTokenManager } from "./token-mgr.js";
|
|
|
4
4
|
import * as MM_SEND_TYPES from "./types/send-types.js";
|
|
5
5
|
import { HTTPClient } from "../../utils/http-client.js";
|
|
6
6
|
import { Checkpoint } from "./types/checkpoint.js";
|
|
7
|
-
import { MMApiBaseResponse, MMGraphQLReasonResponse, MMGraphQLResourceResponse, MMGraphQLWorkOrderResponse, MMMachineGroupsResponse } from "./types/mm-response-interfaces.js";
|
|
7
|
+
import { MMAggregatedPartCountBucket, MMAggregatedPartCountsPerMachine, MMApiBaseResponse, MMMappedErpResourceRow, MMGraphQLReasonResponse, MMGraphQLResourceResponse, MMGraphQLWorkOrderResponse, MMMachineGroupsResponse } from "./types/mm-response-interfaces.js";
|
|
8
8
|
/**
|
|
9
9
|
* Class to manage interactions with the MM Mapping Service
|
|
10
10
|
* Integrates an MM Token Manager to handle the API token.
|
|
@@ -250,6 +250,53 @@ export declare class MMApiClient {
|
|
|
250
250
|
* @returns Promise with the work order data (array with limit 1; may be empty if not found)
|
|
251
251
|
*/
|
|
252
252
|
fetchWorkOrderFromGraphQL(workOrderId: string): Promise<MMGraphQLWorkOrderResponse>;
|
|
253
|
+
/**
|
|
254
|
+
* ERP resources for a company that are mapped to MM (`machineRef` not null).
|
|
255
|
+
* Extends {@link fetchResourcesFromGraphQL} with company scope and richer fields.
|
|
256
|
+
*/
|
|
257
|
+
fetchMappedErpResourcesForCompany(companyId: string): Promise<MMMappedErpResourceRow[]>;
|
|
258
|
+
/**
|
|
259
|
+
* GraphQL `aggregatedPartCounts` for one `machineRef`. One HTTP request; may return multiple bucket rows.
|
|
260
|
+
* Requires `metricKey` and a window (`windowStartAt` / `windowEndAt`); defaults metric to `part-count`.
|
|
261
|
+
*/
|
|
262
|
+
fetchAggregatedPartCountsForMachine(options: {
|
|
263
|
+
machineRef: number;
|
|
264
|
+
windowStartAt: string;
|
|
265
|
+
windowEndAt: string;
|
|
266
|
+
metricKey?: string;
|
|
267
|
+
bucketWidth?: string;
|
|
268
|
+
bucketResolution?: number;
|
|
269
|
+
windowWidth?: string;
|
|
270
|
+
}): Promise<MMAggregatedPartCountBucket[]>;
|
|
271
|
+
/**
|
|
272
|
+
* Same as {@link fetchAggregatedPartCountsForMachine} but for multiple machines: one GraphQL request per
|
|
273
|
+
* distinct `machineRef`, run in parallel.
|
|
274
|
+
*/
|
|
275
|
+
fetchAggregatedPartCountsForMachines(options: {
|
|
276
|
+
machineRefs: readonly number[];
|
|
277
|
+
windowStartAt: string;
|
|
278
|
+
windowEndAt: string;
|
|
279
|
+
metricKey?: string;
|
|
280
|
+
bucketWidth?: string;
|
|
281
|
+
bucketResolution?: number;
|
|
282
|
+
windowWidth?: string;
|
|
283
|
+
}): Promise<MMAggregatedPartCountsPerMachine[]>;
|
|
284
|
+
/**
|
|
285
|
+
* Resolves REST `machine_id` (UUID) for part-adjustment from GraphQL `machineRef` via `machines.machineId`.
|
|
286
|
+
* Returns null if unmapped or not found.
|
|
287
|
+
*/
|
|
288
|
+
fetchMachineIdForMachineRef(machineRef: number): Promise<string | null>;
|
|
289
|
+
/**
|
|
290
|
+
* POST part adjustment (aka corrections) to MM REST API (`/part-adjustment` on MM API base). Body uses public API field names.
|
|
291
|
+
*/
|
|
292
|
+
postPartAdjustment(options: {
|
|
293
|
+
machineId: string;
|
|
294
|
+
count: number;
|
|
295
|
+
message: string;
|
|
296
|
+
adjustmentTimeIso: string;
|
|
297
|
+
/** Default `/part-adjustment` */
|
|
298
|
+
path?: string;
|
|
299
|
+
}): Promise<MMApiBaseResponse>;
|
|
253
300
|
/**
|
|
254
301
|
* Cleanup all HTTP connections and resources
|
|
255
302
|
* Call this when the service is no longer needed
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mm-api-service.d.ts","sourceRoot":"","sources":["../../../src/services/mm-api-service/mm-api-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,aAAa,MAAM,uBAAuB,CAAC;AACvD,OAAO,EACL,UAAU,EAIX,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"mm-api-service.d.ts","sourceRoot":"","sources":["../../../src/services/mm-api-service/mm-api-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,10 +5,13 @@ import { MMTokenManager } from "./token-mgr.js";
|
|
|
5
5
|
import { HTTPClientFactory, } from "../../utils/http-client.js";
|
|
6
6
|
import { CoreConfiguration } from "../data-sync-service/configuration-manager.js";
|
|
7
7
|
import { ErrorHandler } from "../erp-api-services/errors.js";
|
|
8
|
+
import { assertMmGraphqlProxyResponseHasNoErrors, buildMmGraphqlProxyRequestBody, } from "./mm-graphql-proxy.js";
|
|
9
|
+
import { buildAggregatedPartCountsQuery, MM_DEFAULT_PART_COUNT_METRIC_KEY, parseAggregatedPartCountBucketRow, } from "./mm-aggregated-part-counts.js";
|
|
8
10
|
const MAPPING = "MAPPING";
|
|
9
11
|
const CHECKPOINTS = "CHECKPOINTS";
|
|
10
12
|
const MACHINE_GROUPS = "MACHINE_GROUPS";
|
|
11
13
|
const GRAPHQL = "GRAPHQL";
|
|
14
|
+
const PART_ADJUSTMENT = "/part-adjustment";
|
|
12
15
|
var UrlBase;
|
|
13
16
|
(function (UrlBase) {
|
|
14
17
|
UrlBase["ErpApiSvcBase"] = "ErpApiSvcBase";
|
|
@@ -260,15 +263,14 @@ export class MMApiClient {
|
|
|
260
263
|
}
|
|
261
264
|
async graphqlRequest(operationName, query, variables) {
|
|
262
265
|
try {
|
|
263
|
-
const body =
|
|
264
|
-
|
|
265
|
-
body.variables = variables;
|
|
266
|
-
}
|
|
267
|
-
return await this.postData(this.resourceURLs[GRAPHQL], body, {}, {
|
|
266
|
+
const body = buildMmGraphqlProxyRequestBody(operationName, query, variables);
|
|
267
|
+
const result = (await this.postData(this.resourceURLs[GRAPHQL], body, {}, {
|
|
268
268
|
baseUrl: UrlBase.ApiBase,
|
|
269
269
|
token: CoreConfiguration.inst().mmApiAuthToken,
|
|
270
270
|
headers: { "Content-Type": "application/json" },
|
|
271
|
-
});
|
|
271
|
+
}));
|
|
272
|
+
assertMmGraphqlProxyResponseHasNoErrors(result);
|
|
273
|
+
return result;
|
|
272
274
|
}
|
|
273
275
|
catch (error) {
|
|
274
276
|
ErrorHandler.handle(error);
|
|
@@ -602,6 +604,123 @@ export class MMApiClient {
|
|
|
602
604
|
`} }`;
|
|
603
605
|
return (await this.graphqlRequest("getErpWorkOrder", query));
|
|
604
606
|
}
|
|
607
|
+
/**
|
|
608
|
+
* ERP resources for a company that are mapped to MM (`machineRef` not null).
|
|
609
|
+
* Extends {@link fetchResourcesFromGraphQL} with company scope and richer fields.
|
|
610
|
+
*/
|
|
611
|
+
async fetchMappedErpResourcesForCompany(companyId) {
|
|
612
|
+
const id = companyId.trim();
|
|
613
|
+
if (!id) {
|
|
614
|
+
throw new Error("fetchMappedErpResourcesForCompany: companyId is required");
|
|
615
|
+
}
|
|
616
|
+
const safe = escapeGraphqlStringLiteral(id);
|
|
617
|
+
const query = `query mappedErpResourcesForCompany { erpResources(where: { companyId: { _eq: "${safe}" }, machineRef: { _is_null: false } }) { isResourceGroup machineGroupId machineRef resourceId name type } }`;
|
|
618
|
+
const response = (await this.graphqlRequest("mappedErpResourcesForCompany", query));
|
|
619
|
+
const list = response.data?.erpResources;
|
|
620
|
+
if (!Array.isArray(list)) {
|
|
621
|
+
throw new Error("fetchMappedErpResourcesForCompany: missing data.erpResources array");
|
|
622
|
+
}
|
|
623
|
+
return list.map(parseMappedErpResourceRow);
|
|
624
|
+
}
|
|
625
|
+
/**
|
|
626
|
+
* GraphQL `aggregatedPartCounts` for one `machineRef`. One HTTP request; may return multiple bucket rows.
|
|
627
|
+
* Requires `metricKey` and a window (`windowStartAt` / `windowEndAt`); defaults metric to `part-count`.
|
|
628
|
+
*/
|
|
629
|
+
async fetchAggregatedPartCountsForMachine(options) {
|
|
630
|
+
const metricKey = options.metricKey?.trim() || MM_DEFAULT_PART_COUNT_METRIC_KEY;
|
|
631
|
+
const query = buildAggregatedPartCountsQuery({
|
|
632
|
+
machineRef: options.machineRef,
|
|
633
|
+
metricKey,
|
|
634
|
+
windowStartAt: options.windowStartAt,
|
|
635
|
+
windowEndAt: options.windowEndAt,
|
|
636
|
+
bucketWidth: options.bucketWidth,
|
|
637
|
+
bucketResolution: options.bucketResolution,
|
|
638
|
+
windowWidth: options.windowWidth,
|
|
639
|
+
});
|
|
640
|
+
const response = (await this.graphqlRequest("aggregatedPartCountsForMachine", query));
|
|
641
|
+
const list = response.data?.aggregatedPartCounts;
|
|
642
|
+
if (!Array.isArray(list)) {
|
|
643
|
+
throw new Error("fetchAggregatedPartCountsForMachine: missing data.aggregatedPartCounts array");
|
|
644
|
+
}
|
|
645
|
+
return list.map(parseAggregatedPartCountBucketRow);
|
|
646
|
+
}
|
|
647
|
+
/**
|
|
648
|
+
* Same as {@link fetchAggregatedPartCountsForMachine} but for multiple machines: one GraphQL request per
|
|
649
|
+
* distinct `machineRef`, run in parallel.
|
|
650
|
+
*/
|
|
651
|
+
async fetchAggregatedPartCountsForMachines(options) {
|
|
652
|
+
const { machineRefs, ...perCall } = options;
|
|
653
|
+
const seen = new Set();
|
|
654
|
+
const distinct = [];
|
|
655
|
+
for (const r of machineRefs) {
|
|
656
|
+
const ref = Math.trunc(Number(r));
|
|
657
|
+
if (!Number.isFinite(ref))
|
|
658
|
+
continue;
|
|
659
|
+
if (seen.has(ref))
|
|
660
|
+
continue;
|
|
661
|
+
seen.add(ref);
|
|
662
|
+
distinct.push(ref);
|
|
663
|
+
}
|
|
664
|
+
const results = await Promise.all(distinct.map(async (machineRef) => {
|
|
665
|
+
const buckets = await this.fetchAggregatedPartCountsForMachine({
|
|
666
|
+
...perCall,
|
|
667
|
+
machineRef,
|
|
668
|
+
});
|
|
669
|
+
return { machineRef, buckets };
|
|
670
|
+
}));
|
|
671
|
+
return results;
|
|
672
|
+
}
|
|
673
|
+
/**
|
|
674
|
+
* Resolves REST `machine_id` (UUID) for part-adjustment from GraphQL `machineRef` via `machines.machineId`.
|
|
675
|
+
* Returns null if unmapped or not found.
|
|
676
|
+
*/
|
|
677
|
+
async fetchMachineIdForMachineRef(machineRef) {
|
|
678
|
+
const ref = Math.trunc(Number(machineRef));
|
|
679
|
+
if (!Number.isFinite(ref)) {
|
|
680
|
+
throw new RangeError("fetchMachineIdForMachineRef: machineRef must be finite");
|
|
681
|
+
}
|
|
682
|
+
const query = `query mmMachineIdByRef { machines(where: { machineRef: { _eq: ${ref} } }, limit: 1) { machineId } }`;
|
|
683
|
+
const response = (await this.graphqlRequest("mmMachineIdByRef", query));
|
|
684
|
+
const list = response.data?.machines;
|
|
685
|
+
if (!Array.isArray(list) || list.length === 0) {
|
|
686
|
+
return null;
|
|
687
|
+
}
|
|
688
|
+
const row = list[0];
|
|
689
|
+
if (typeof row !== "object" || row === null) {
|
|
690
|
+
return null;
|
|
691
|
+
}
|
|
692
|
+
const o = row;
|
|
693
|
+
const mid = o.machineId;
|
|
694
|
+
const s = typeof mid === "string"
|
|
695
|
+
? mid.trim()
|
|
696
|
+
: mid !== undefined
|
|
697
|
+
? String(mid).trim()
|
|
698
|
+
: "";
|
|
699
|
+
return s || null;
|
|
700
|
+
}
|
|
701
|
+
/**
|
|
702
|
+
* POST part adjustment (aka corrections) to MM REST API (`/part-adjustment` on MM API base). Body uses public API field names.
|
|
703
|
+
*/
|
|
704
|
+
async postPartAdjustment(options) {
|
|
705
|
+
const raw = options.path?.trim() || PART_ADJUSTMENT;
|
|
706
|
+
const path = raw.startsWith("/") ? raw : `/${raw}`;
|
|
707
|
+
logger.debug("MM API part adjustment POST", {
|
|
708
|
+
path,
|
|
709
|
+
machineId: options.machineId,
|
|
710
|
+
count: options.count,
|
|
711
|
+
messageLength: options.message.length,
|
|
712
|
+
});
|
|
713
|
+
return await this.postData(path, {
|
|
714
|
+
machine_id: options.machineId,
|
|
715
|
+
count: options.count,
|
|
716
|
+
message: options.message,
|
|
717
|
+
adjustmenttime: options.adjustmentTimeIso,
|
|
718
|
+
}, {}, {
|
|
719
|
+
baseUrl: UrlBase.ApiBase,
|
|
720
|
+
token: CoreConfiguration.inst().mmApiAuthToken,
|
|
721
|
+
headers: { "Content-Type": "application/json" },
|
|
722
|
+
});
|
|
723
|
+
}
|
|
605
724
|
/**
|
|
606
725
|
* Cleanup all HTTP connections and resources
|
|
607
726
|
* Call this when the service is no longer needed
|
|
@@ -611,4 +730,33 @@ export class MMApiClient {
|
|
|
611
730
|
await this.api.destroy();
|
|
612
731
|
}
|
|
613
732
|
}
|
|
733
|
+
function escapeGraphqlStringLiteral(s) {
|
|
734
|
+
return s.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
|
|
735
|
+
}
|
|
736
|
+
function parseMappedErpResourceRow(raw) {
|
|
737
|
+
if (typeof raw !== "object" || raw === null) {
|
|
738
|
+
throw new Error("fetchMappedErpResourcesForCompany: invalid row");
|
|
739
|
+
}
|
|
740
|
+
const o = raw;
|
|
741
|
+
const refRaw = o.machineRef;
|
|
742
|
+
const ref = typeof refRaw === "number" ? refRaw : Number(refRaw);
|
|
743
|
+
if (!Number.isFinite(ref)) {
|
|
744
|
+
throw new Error("fetchMappedErpResourcesForCompany: invalid machineRef");
|
|
745
|
+
}
|
|
746
|
+
const rid = o.resourceId;
|
|
747
|
+
return {
|
|
748
|
+
isResourceGroup: Boolean(o.isResourceGroup),
|
|
749
|
+
machineGroupId: o.machineGroupId === null || o.machineGroupId === undefined
|
|
750
|
+
? null
|
|
751
|
+
: String(o.machineGroupId),
|
|
752
|
+
machineRef: Math.trunc(ref),
|
|
753
|
+
resourceId: rid === null || rid === undefined
|
|
754
|
+
? null
|
|
755
|
+
: typeof rid === "string"
|
|
756
|
+
? rid.trim() || null
|
|
757
|
+
: String(rid).trim() || null,
|
|
758
|
+
name: typeof o.name === "string" ? o.name : "",
|
|
759
|
+
type: o.type === null || o.type === undefined ? null : String(o.type),
|
|
760
|
+
};
|
|
761
|
+
}
|
|
614
762
|
//# sourceMappingURL=mm-api-service.js.map
|