@machinemetrics/mm-erp-sdk 0.1.8-beta.3 → 0.1.8-beta.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/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/mm-erp-sdk.js +19 -46
- package/dist/mm-erp-sdk.js.map +1 -1
- package/dist/services/psql-erp-service/index.d.ts +0 -5
- package/dist/services/psql-erp-service/index.d.ts.map +1 -1
- package/dist/services/psql-erp-service/internal/types/psql-types.d.ts +0 -3
- package/dist/services/psql-erp-service/internal/types/psql-types.d.ts.map +1 -1
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/timezone.d.ts +7 -0
- package/dist/utils/timezone.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +0 -1
- package/src/services/psql-erp-service/index.ts +0 -6
- package/src/services/psql-erp-service/internal/types/psql-types.ts +0 -4
- package/src/services/psql-erp-service/psql-service.ts +1 -1
- package/src/utils/index.ts +1 -1
- package/src/utils/mm-labor-ticket-helpers.ts +2 -2
- package/src/utils/timezone.ts +28 -0
- package/dist/services/psql-erp-service/internal/psql-config.d.ts +0 -28
- package/dist/services/psql-erp-service/internal/psql-config.d.ts.map +0 -1
- package/dist/services/psql-erp-service/internal/psql-labor-ticket-operations.d.ts +0 -40
- package/dist/services/psql-erp-service/internal/psql-labor-ticket-operations.d.ts.map +0 -1
- package/src/services/psql-erp-service/internal/psql-config.ts +0 -13
- package/src/services/psql-erp-service/internal/psql-labor-ticket-operations.ts +0 -58
package/dist/index.d.ts
CHANGED
|
@@ -38,7 +38,7 @@ export { BatchCacheManager } from "./services/caching-service/batch-cache-manage
|
|
|
38
38
|
export { CoreConfiguration, getSQLServerConfiguration, } from "./services/data-sync-service/configuration-manager";
|
|
39
39
|
export { SqlServerService, SqlServerHelper, } from "./services/sql-server-erp-service";
|
|
40
40
|
export type { SQLInput } from "./services/sql-server-erp-service";
|
|
41
|
-
export { PsqlService,
|
|
41
|
+
export { PsqlService, formatPsqlDate, formatPsqlTime, combinePsqlDateTime, isPsqlDateEmpty, cleanPsqlCharField, } from "./services/psql-erp-service";
|
|
42
42
|
export type { PsqlConfiguration } from "./services/psql-erp-service";
|
|
43
43
|
export { RecordTrackingManager } from "./services/caching-service/record-tracking-manager";
|
|
44
44
|
export type { RecordTrackingObject } from "./services/caching-service/record-tracking-manager";
|
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,uBAAuB,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACxD,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,oDAAoD,CAAC;AAC5F,OAAO,EAAE,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AAC/F,OAAO,EAAE,qBAAqB,EAAE,MAAM,mDAAmD,CAAC;AAC1F,YAAY,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAGtE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,YAAY,EACV,0BAA0B,EAC1B,sCAAsC,EACtC,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,YAAY,EACZ,cAAc,EACd,UAAU,EACV,mBAAmB,EACnB,eAAe,EACf,wBAAwB,EACxB,YAAY,EACZ,iBAAiB,GAClB,MAAM,2BAA2B,CAAC;AAEnC,YAAY,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAGtE,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,wBAAwB,EACxB,gBAAgB,EAChB,cAAc,EACd,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACtB,4BAA4B,EAC5B,kBAAkB,EAClB,YAAY,GACb,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAGzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,YAAY,EACV,YAAY,EACZ,UAAU,EACV,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAGzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAGlE,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAGtD,YAAY,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAGpE,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAC1E,YAAY,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAGjD,YAAY,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,mDAAmD,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAChF,YAAY,EACV,WAAW,EACX,oBAAoB,GACrB,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AACvE,YAAY,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,qDAAqD,CAAC;AACrF,YAAY,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAGpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,gDAAgD,CAAC;AAGnF,OAAO,EACL,iBAAiB,EACjB,yBAAyB,GAC1B,MAAM,oDAAoD,CAAC;AAG5D,OAAO,EACL,gBAAgB,EAChB,eAAe,GAChB,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAGlE,OAAO,EACL,WAAW,EACX,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/mm-erp-sdk.js
CHANGED
|
@@ -1463,6 +1463,23 @@ const formatDateWithTZOffset = (date, timezoneOffset) => {
|
|
|
1463
1463
|
const minutes = Math.floor(absOffset % 1 * 60).toString().padStart(2, "0");
|
|
1464
1464
|
return `${isoDate}${sign}${hours}:${minutes}`;
|
|
1465
1465
|
};
|
|
1466
|
+
const toISOWithOffset = (date, timezoneOffset) => {
|
|
1467
|
+
const sign = timezoneOffset >= 0 ? "+" : "-";
|
|
1468
|
+
const abs = Math.abs(timezoneOffset);
|
|
1469
|
+
const hours = Math.floor(abs);
|
|
1470
|
+
const minutes = Math.round((abs - hours) * 60);
|
|
1471
|
+
const pad2 = (n) => n.toString().padStart(2, "0");
|
|
1472
|
+
const pad3 = (n) => n.toString().padStart(3, "0");
|
|
1473
|
+
const yyyy = date.getUTCFullYear();
|
|
1474
|
+
const MM = pad2(date.getUTCMonth() + 1);
|
|
1475
|
+
const dd = pad2(date.getUTCDate());
|
|
1476
|
+
const HH = pad2(date.getUTCHours());
|
|
1477
|
+
const mm = pad2(date.getUTCMinutes());
|
|
1478
|
+
const ss = pad2(date.getUTCSeconds());
|
|
1479
|
+
const SSS = pad3(date.getUTCMilliseconds());
|
|
1480
|
+
const off = `${sign}${pad2(hours)}:${pad2(minutes)}`;
|
|
1481
|
+
return `${yyyy}-${MM}-${dd}T${HH}:${mm}:${ss}.${SSS}${off}`;
|
|
1482
|
+
};
|
|
1466
1483
|
function calculateTimeDifferenceInHours(startTime, endTime, timezoneOffset) {
|
|
1467
1484
|
if (!startTime || !endTime) return 0;
|
|
1468
1485
|
const localStartTime = convertToLocalTime(startTime, timezoneOffset);
|
|
@@ -1645,7 +1662,7 @@ function convertLaborTicketToLocalTimezone(laborTicket, timezoneOffset) {
|
|
|
1645
1662
|
];
|
|
1646
1663
|
timeFields.forEach((field) => {
|
|
1647
1664
|
const localTime = convertToLocalTime(laborTicket[field], timezoneOffset);
|
|
1648
|
-
laborTicket[field] = localTime
|
|
1665
|
+
laborTicket[field] = localTime ? toISOWithOffset(localTime, timezoneOffset) : null;
|
|
1649
1666
|
});
|
|
1650
1667
|
return laborTicket;
|
|
1651
1668
|
}
|
|
@@ -4008,7 +4025,7 @@ class PsqlService {
|
|
|
4008
4025
|
connection = await odbc.connect(connStr);
|
|
4009
4026
|
if (Object.keys(params).length > 0) {
|
|
4010
4027
|
logger.warn(
|
|
4011
|
-
"PsqlService: Query parameters provided but parameter binding not yet implemented. Using direct query execution.
|
|
4028
|
+
"PsqlService: Query parameters provided but parameter binding not yet implemented. Using direct query execution."
|
|
4012
4029
|
);
|
|
4013
4030
|
}
|
|
4014
4031
|
const records = await connection.query(query);
|
|
@@ -4095,49 +4112,6 @@ class PsqlService {
|
|
|
4095
4112
|
}
|
|
4096
4113
|
}
|
|
4097
4114
|
}
|
|
4098
|
-
class PsqlLaborTicketOperations {
|
|
4099
|
-
constructor(service) {
|
|
4100
|
-
this.service = service;
|
|
4101
|
-
}
|
|
4102
|
-
/**
|
|
4103
|
-
* Create labor ticket in START_LABOR table
|
|
4104
|
-
*
|
|
4105
|
-
* Phase 2 Implementation Notes:
|
|
4106
|
-
* - Will use prepared statements with parameter binding
|
|
4107
|
-
* - Insert into START_LABOR table
|
|
4108
|
-
* - Return GUID as erpUid
|
|
4109
|
-
*
|
|
4110
|
-
* @param laborTicket Labor ticket from MachineMetrics
|
|
4111
|
-
* @returns Labor ticket and ERP unique ID
|
|
4112
|
-
*/
|
|
4113
|
-
async createLaborTicket(laborTicket) {
|
|
4114
|
-
logger.warn(
|
|
4115
|
-
"PsqlLaborTicketOperations.createLaborTicket not yet implemented (Phase 2)"
|
|
4116
|
-
);
|
|
4117
|
-
throw new Error(
|
|
4118
|
-
"Labor ticket creation not implemented for PSQL. This is a Phase 2 feature."
|
|
4119
|
-
);
|
|
4120
|
-
}
|
|
4121
|
-
/**
|
|
4122
|
-
* Update labor ticket (move from START_LABOR to COMPLETED_LABOR)
|
|
4123
|
-
*
|
|
4124
|
-
* Phase 2 Implementation Notes:
|
|
4125
|
-
* - Insert into COMPLETED_LABOR
|
|
4126
|
-
* - Delete from START_LABOR
|
|
4127
|
-
* - Should be done in a transaction
|
|
4128
|
-
*
|
|
4129
|
-
* @param laborTicket Labor ticket to update
|
|
4130
|
-
* @returns Updated labor ticket
|
|
4131
|
-
*/
|
|
4132
|
-
async updateLaborTicket(laborTicket) {
|
|
4133
|
-
logger.warn(
|
|
4134
|
-
"PsqlLaborTicketOperations.updateLaborTicket not yet implemented (Phase 2)"
|
|
4135
|
-
);
|
|
4136
|
-
throw new Error(
|
|
4137
|
-
"Labor ticket update not implemented for PSQL. This is a Phase 2 feature."
|
|
4138
|
-
);
|
|
4139
|
-
}
|
|
4140
|
-
}
|
|
4141
4115
|
function formatPsqlDate(psqlDate) {
|
|
4142
4116
|
if (!psqlDate || psqlDate === "000000" || psqlDate.trim() === "") {
|
|
4143
4117
|
return null;
|
|
@@ -4212,7 +4186,6 @@ export {
|
|
|
4212
4186
|
MMSendWorkOrder,
|
|
4213
4187
|
MMSendWorkOrderOperation,
|
|
4214
4188
|
OAuthClient,
|
|
4215
|
-
PsqlLaborTicketOperations,
|
|
4216
4189
|
PsqlService,
|
|
4217
4190
|
RecordTrackingManager,
|
|
4218
4191
|
RestAPIService,
|