@machinemetrics/mm-erp-sdk 0.1.9-beta.2 → 0.1.9-beta.3
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 +42 -42
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +48 -0
- package/dist/index.js.map +1 -0
- package/dist/knexfile.js +18 -0
- package/dist/knexfile.js.map +1 -0
- package/dist/migrations/20241015162631_create_cache_table.d.ts +4 -0
- package/dist/migrations/20241015162631_create_cache_table.d.ts.map +1 -0
- package/dist/migrations/20241015162631_create_cache_table.js +11 -15
- package/dist/migrations/20241015162631_create_cache_table.js.map +1 -1
- package/dist/migrations/20241015162632_create_sdk_cache_table.d.ts +4 -0
- package/dist/migrations/20241015162632_create_sdk_cache_table.d.ts.map +1 -0
- package/dist/migrations/20241015162632_create_sdk_cache_table.js +11 -15
- package/dist/migrations/20241015162632_create_sdk_cache_table.js.map +1 -1
- package/dist/migrations/20250103162631_create_record_tracking_table.d.ts +4 -0
- package/dist/migrations/20250103162631_create_record_tracking_table.d.ts.map +1 -0
- package/dist/migrations/20250103162631_create_record_tracking_table.js +14 -15
- package/dist/migrations/20250103162631_create_record_tracking_table.js.map +1 -1
- package/dist/services/caching-service/batch-cache-manager.d.ts +1 -1
- package/dist/services/caching-service/batch-cache-manager.d.ts.map +1 -1
- package/dist/services/caching-service/batch-cache-manager.js +84 -0
- package/dist/services/caching-service/batch-cache-manager.js.map +1 -0
- package/dist/services/caching-service/hashed-cache-manager.d.ts +2 -2
- package/dist/services/caching-service/hashed-cache-manager.d.ts.map +1 -1
- package/dist/services/caching-service/hashed-cache-manager.js +223 -0
- package/dist/services/caching-service/hashed-cache-manager.js.map +1 -0
- package/dist/services/caching-service/index.d.ts +1 -1
- package/dist/services/caching-service/index.d.ts.map +1 -1
- package/dist/services/caching-service/index.js +2 -0
- package/dist/services/caching-service/index.js.map +1 -0
- package/dist/services/caching-service/record-tracking-manager.d.ts +1 -1
- package/dist/services/caching-service/record-tracking-manager.d.ts.map +1 -1
- package/dist/services/caching-service/record-tracking-manager.js +28 -0
- package/dist/services/caching-service/record-tracking-manager.js.map +1 -0
- package/dist/services/data-sync-service/configuration-manager.d.ts +1 -1
- package/dist/services/data-sync-service/configuration-manager.d.ts.map +1 -1
- package/dist/services/data-sync-service/configuration-manager.js +163 -0
- package/dist/services/data-sync-service/configuration-manager.js.map +1 -0
- package/dist/services/data-sync-service/data-sync-service.d.ts.map +1 -1
- package/dist/services/data-sync-service/data-sync-service.js +95 -0
- package/dist/services/data-sync-service/data-sync-service.js.map +1 -0
- package/dist/services/data-sync-service/index.d.ts +3 -3
- package/dist/services/data-sync-service/index.d.ts.map +1 -1
- package/dist/services/data-sync-service/index.js +10 -0
- package/dist/services/data-sync-service/index.js.map +1 -0
- package/dist/services/data-sync-service/jobs/clean-up-expired-cache.js +40 -39
- package/dist/services/data-sync-service/jobs/clean-up-expired-cache.js.map +1 -1
- package/dist/services/data-sync-service/jobs/from-erp.js +48 -43
- package/dist/services/data-sync-service/jobs/from-erp.js.map +1 -1
- package/dist/services/data-sync-service/jobs/retry-failed-labor-tickets.js +36 -35
- package/dist/services/data-sync-service/jobs/retry-failed-labor-tickets.js.map +1 -1
- package/dist/services/data-sync-service/jobs/run-migrations.js +22 -21
- package/dist/services/data-sync-service/jobs/run-migrations.js.map +1 -1
- package/dist/services/data-sync-service/jobs/to-erp.js +48 -42
- package/dist/services/data-sync-service/jobs/to-erp.js.map +1 -1
- package/dist/services/erp-api-services/errors.d.ts +1 -1
- package/dist/services/erp-api-services/errors.d.ts.map +1 -1
- package/dist/services/erp-api-services/errors.js +83 -0
- package/dist/services/erp-api-services/errors.js.map +1 -0
- package/dist/services/erp-api-services/graphql/graphql-service.d.ts +2 -2
- package/dist/services/erp-api-services/graphql/graphql-service.d.ts.map +1 -1
- package/dist/services/erp-api-services/graphql/graphql-service.js +102 -0
- package/dist/services/erp-api-services/graphql/graphql-service.js.map +1 -0
- package/dist/services/erp-api-services/graphql/types.js +6 -0
- package/dist/services/erp-api-services/graphql/types.js.map +1 -0
- package/dist/services/erp-api-services/index.d.ts +8 -8
- package/dist/services/erp-api-services/index.d.ts.map +1 -1
- package/dist/services/erp-api-services/index.js +13 -0
- package/dist/services/erp-api-services/index.js.map +1 -0
- package/dist/services/erp-api-services/oauth-client.js +41 -0
- package/dist/services/erp-api-services/oauth-client.js.map +1 -0
- package/dist/services/erp-api-services/rest/get-query-params.js +23 -0
- package/dist/services/erp-api-services/rest/get-query-params.js.map +1 -0
- package/dist/services/erp-api-services/rest/rest-api-service.d.ts +2 -2
- package/dist/services/erp-api-services/rest/rest-api-service.d.ts.map +1 -1
- package/dist/services/erp-api-services/rest/rest-api-service.js +163 -0
- package/dist/services/erp-api-services/rest/rest-api-service.js.map +1 -0
- package/dist/services/erp-api-services/types.d.ts +2 -2
- package/dist/services/erp-api-services/types.d.ts.map +1 -1
- package/dist/services/erp-api-services/types.js +2 -0
- package/dist/services/erp-api-services/types.js.map +1 -0
- package/dist/services/mm-api-service/index.d.ts +6 -6
- package/dist/services/mm-api-service/index.d.ts.map +1 -1
- package/dist/services/mm-api-service/index.js +15 -0
- package/dist/services/mm-api-service/index.js.map +1 -0
- package/dist/services/mm-api-service/mm-api-service.d.ts +7 -7
- package/dist/services/mm-api-service/mm-api-service.d.ts.map +1 -1
- package/dist/services/mm-api-service/mm-api-service.js +519 -0
- package/dist/services/mm-api-service/mm-api-service.js.map +1 -0
- package/dist/services/mm-api-service/token-mgr.js +113 -0
- package/dist/services/mm-api-service/token-mgr.js.map +1 -0
- package/dist/services/mm-api-service/types/checkpoint.js +2 -0
- package/dist/services/mm-api-service/types/checkpoint.js.map +1 -0
- package/dist/services/mm-api-service/types/entity-transformer.d.ts +2 -2
- package/dist/services/mm-api-service/types/entity-transformer.d.ts.map +1 -1
- package/dist/services/mm-api-service/types/entity-transformer.js +186 -0
- package/dist/services/mm-api-service/types/entity-transformer.js.map +1 -0
- package/dist/services/mm-api-service/types/mm-response-interfaces.js +34 -0
- package/dist/services/mm-api-service/types/mm-response-interfaces.js.map +1 -0
- package/dist/services/mm-api-service/types/receive-types.js +55 -0
- package/dist/services/mm-api-service/types/receive-types.js.map +1 -0
- package/dist/services/mm-api-service/types/send-types.js +337 -0
- package/dist/services/mm-api-service/types/send-types.js.map +1 -0
- package/dist/services/psql-erp-service/configuration.js +2 -0
- package/dist/services/psql-erp-service/configuration.js.map +1 -0
- package/dist/services/psql-erp-service/index.d.ts +3 -3
- package/dist/services/psql-erp-service/index.d.ts.map +1 -1
- package/dist/services/psql-erp-service/index.js +10 -0
- package/dist/services/psql-erp-service/index.js.map +1 -0
- package/dist/services/psql-erp-service/internal/types/psql-types.js +5 -0
- package/dist/services/psql-erp-service/internal/types/psql-types.js.map +1 -0
- package/dist/services/psql-erp-service/psql-helpers.js +99 -0
- package/dist/services/psql-erp-service/psql-helpers.js.map +1 -0
- package/dist/services/psql-erp-service/psql-service.d.ts +2 -2
- package/dist/services/psql-erp-service/psql-service.d.ts.map +1 -1
- package/dist/services/psql-erp-service/psql-service.js +187 -0
- package/dist/services/psql-erp-service/psql-service.js.map +1 -0
- package/dist/services/reporting-service/index.d.ts +1 -1
- package/dist/services/reporting-service/index.d.ts.map +1 -1
- package/dist/services/reporting-service/index.js +5 -0
- package/dist/services/reporting-service/index.js.map +1 -0
- package/dist/services/reporting-service/logger.js +217 -0
- package/dist/services/reporting-service/logger.js.map +1 -0
- package/dist/services/sql-server-erp-service/configuration.js +2 -0
- package/dist/services/sql-server-erp-service/configuration.js.map +1 -0
- package/dist/services/sql-server-erp-service/index.d.ts +3 -3
- package/dist/services/sql-server-erp-service/index.d.ts.map +1 -1
- package/dist/services/sql-server-erp-service/index.js +11 -0
- package/dist/services/sql-server-erp-service/index.js.map +1 -0
- package/dist/services/sql-server-erp-service/internal/sql-labor-ticket-operations.d.ts +2 -2
- package/dist/services/sql-server-erp-service/internal/sql-labor-ticket-operations.d.ts.map +1 -1
- package/dist/services/sql-server-erp-service/internal/sql-labor-ticket-operations.js +50 -0
- package/dist/services/sql-server-erp-service/internal/sql-labor-ticket-operations.js.map +1 -0
- package/dist/services/sql-server-erp-service/internal/sql-server-config.js +40 -0
- package/dist/services/sql-server-erp-service/internal/sql-server-config.js.map +1 -0
- package/dist/services/sql-server-erp-service/internal/sql-transaction-manager.js +36 -0
- package/dist/services/sql-server-erp-service/internal/sql-transaction-manager.js.map +1 -0
- package/dist/services/sql-server-erp-service/internal/types/sql-server-types.js +2 -0
- package/dist/services/sql-server-erp-service/internal/types/sql-server-types.js.map +1 -0
- package/dist/services/sql-server-erp-service/sql-server-helpers.d.ts +3 -3
- package/dist/services/sql-server-erp-service/sql-server-helpers.d.ts.map +1 -1
- package/dist/services/sql-server-erp-service/sql-server-helpers.js +66 -0
- package/dist/services/sql-server-erp-service/sql-server-helpers.js.map +1 -0
- package/dist/services/sql-server-erp-service/sql-server-service.d.ts +2 -2
- 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 +154 -0
- package/dist/services/sql-server-erp-service/sql-server-service.js.map +1 -0
- package/dist/services/sql-server-erp-service/types/sql-input-param.js +2 -0
- package/dist/services/sql-server-erp-service/types/sql-input-param.js.map +1 -0
- package/dist/services/sqlite-service/index.d.ts +1 -1
- package/dist/services/sqlite-service/index.d.ts.map +1 -1
- package/dist/services/sqlite-service/index.js +2 -0
- package/dist/services/sqlite-service/index.js.map +1 -0
- package/dist/services/sqlite-service/sqlite-coordinator.js +60 -0
- package/dist/services/sqlite-service/sqlite-coordinator.js.map +1 -0
- package/dist/types/erp-connector.d.ts +1 -1
- package/dist/types/erp-connector.d.ts.map +1 -1
- package/dist/types/erp-connector.js +2 -0
- package/dist/types/erp-connector.js.map +1 -0
- package/dist/types/erp-types.js +13 -0
- package/dist/types/erp-types.js.map +1 -0
- package/dist/types/index.d.ts +2 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +6 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/application-initializer.js +55 -0
- package/dist/utils/application-initializer.js.map +1 -0
- package/dist/utils/cleanup-numbers.js +6 -0
- package/dist/utils/cleanup-numbers.js.map +1 -0
- package/dist/utils/connector-factory.d.ts +1 -1
- package/dist/utils/connector-factory.d.ts.map +1 -1
- package/dist/utils/connector-factory.js +34 -0
- package/dist/utils/connector-factory.js.map +1 -0
- package/dist/utils/connector-log/log-deduper.d.ts +1 -1
- package/dist/utils/connector-log/log-deduper.d.ts.map +1 -1
- package/dist/utils/connector-log/log-deduper.js +240 -0
- package/dist/utils/connector-log/log-deduper.js.map +1 -0
- package/dist/utils/connector-log/mm-connector-logger-example.d.ts +1 -0
- package/dist/utils/connector-log/mm-connector-logger-example.js +88 -0
- package/dist/utils/connector-log/mm-connector-logger-example.js.map +1 -0
- package/dist/utils/connector-log/mm-connector-logger.d.ts +1 -1
- package/dist/utils/connector-log/mm-connector-logger.d.ts.map +1 -1
- package/dist/utils/connector-log/mm-connector-logger.js +151 -0
- package/dist/utils/connector-log/mm-connector-logger.js.map +1 -0
- package/dist/utils/data-transformation.js +38 -0
- package/dist/utils/data-transformation.js.map +1 -0
- package/dist/utils/erp-type-from-entity.d.ts +1 -1
- package/dist/utils/erp-type-from-entity.d.ts.map +1 -1
- package/dist/utils/erp-type-from-entity.js +6 -0
- package/dist/utils/erp-type-from-entity.js.map +1 -0
- package/dist/utils/error-utils.js +21 -0
- package/dist/utils/error-utils.js.map +1 -0
- package/dist/utils/http-client.js +186 -0
- package/dist/utils/http-client.js.map +1 -0
- package/dist/utils/index.d.ts +33 -33
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +65 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/local-data-store/database-lock.js +68 -0
- package/dist/utils/local-data-store/database-lock.js.map +1 -0
- package/dist/utils/local-data-store/jobs-shared-data.js +116 -0
- package/dist/utils/local-data-store/jobs-shared-data.js.map +1 -0
- package/dist/utils/mm-labor-ticket-helpers.d.ts +1 -1
- package/dist/utils/mm-labor-ticket-helpers.d.ts.map +1 -1
- package/dist/utils/mm-labor-ticket-helpers.js +23 -0
- package/dist/utils/mm-labor-ticket-helpers.js.map +1 -0
- package/dist/utils/removeExtraneousFields.d.ts +1 -1
- package/dist/utils/removeExtraneousFields.d.ts.map +1 -1
- package/dist/utils/removeExtraneousFields.js +16 -0
- package/dist/utils/removeExtraneousFields.js.map +1 -0
- package/dist/utils/removeIdFieldFromPayload.d.ts +1 -1
- package/dist/utils/removeIdFieldFromPayload.d.ts.map +1 -1
- package/dist/utils/removeIdFieldFromPayload.js +16 -0
- package/dist/utils/removeIdFieldFromPayload.js.map +1 -0
- package/dist/utils/resource-group.d.ts +1 -1
- package/dist/utils/resource-group.d.ts.map +1 -1
- package/dist/utils/resource-group.js +59 -0
- package/dist/utils/resource-group.js.map +1 -0
- package/dist/utils/standard-process-drivers/error-processor.d.ts +3 -3
- package/dist/utils/standard-process-drivers/error-processor.d.ts.map +1 -1
- package/dist/utils/standard-process-drivers/error-processor.js +262 -0
- package/dist/utils/standard-process-drivers/error-processor.js.map +1 -0
- package/dist/utils/standard-process-drivers/index.d.ts +3 -3
- package/dist/utils/standard-process-drivers/index.d.ts.map +1 -1
- package/dist/utils/standard-process-drivers/index.js +4 -0
- package/dist/utils/standard-process-drivers/index.js.map +1 -0
- package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.d.ts +1 -1
- 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 +164 -0
- package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.js.map +1 -0
- package/dist/utils/standard-process-drivers/mm-entity-processor.d.ts +4 -4
- package/dist/utils/standard-process-drivers/mm-entity-processor.d.ts.map +1 -1
- package/dist/utils/standard-process-drivers/mm-entity-processor.js +168 -0
- package/dist/utils/standard-process-drivers/mm-entity-processor.js.map +1 -0
- package/dist/utils/standard-process-drivers/standard-process-drivers.d.ts +4 -4
- package/dist/utils/standard-process-drivers/standard-process-drivers.d.ts.map +1 -1
- package/dist/utils/standard-process-drivers/standard-process-drivers.js +324 -0
- package/dist/utils/standard-process-drivers/standard-process-drivers.js.map +1 -0
- package/dist/utils/time-utils.js +96 -0
- package/dist/utils/time-utils.js.map +1 -0
- package/dist/utils/timezone.js +105 -0
- package/dist/utils/timezone.js.map +1 -0
- package/dist/utils/trimObjectValues.js +11 -0
- package/dist/utils/trimObjectValues.js.map +1 -0
- package/dist/utils/uniqueRows.js +35 -0
- package/dist/utils/uniqueRows.js.map +1 -0
- package/package.json +5 -6
- package/src/index.ts +42 -42
- package/src/services/caching-service/batch-cache-manager.ts +2 -2
- package/src/services/caching-service/hashed-cache-manager.ts +5 -5
- package/src/services/caching-service/index.ts +1 -1
- package/src/services/caching-service/record-tracking-manager.ts +2 -2
- package/src/services/data-sync-service/configuration-manager.ts +2 -2
- package/src/services/data-sync-service/data-sync-service.ts +9 -3
- package/src/services/data-sync-service/index.ts +3 -3
- package/src/services/data-sync-service/jobs/clean-up-expired-cache.ts +3 -3
- package/src/services/data-sync-service/jobs/from-erp.ts +3 -3
- package/src/services/data-sync-service/jobs/retry-failed-labor-tickets.ts +2 -2
- package/src/services/data-sync-service/jobs/run-migrations.ts +2 -2
- package/src/services/data-sync-service/jobs/to-erp.ts +2 -2
- package/src/services/erp-api-services/errors.ts +3 -3
- package/src/services/erp-api-services/graphql/graphql-service.ts +5 -5
- package/src/services/erp-api-services/index.ts +8 -8
- package/src/services/erp-api-services/rest/rest-api-service.ts +4 -4
- package/src/services/erp-api-services/types.ts +2 -2
- package/src/services/mm-api-service/index.ts +6 -6
- package/src/services/mm-api-service/mm-api-service.ts +10 -10
- package/src/services/mm-api-service/token-mgr.ts +4 -4
- package/src/services/mm-api-service/types/entity-transformer.ts +3 -3
- package/src/services/psql-erp-service/index.ts +3 -3
- package/src/services/psql-erp-service/psql-service.ts +4 -4
- package/src/services/reporting-service/index.ts +1 -1
- package/src/services/sql-server-erp-service/index.ts +3 -3
- package/src/services/sql-server-erp-service/internal/sql-labor-ticket-operations.ts +2 -2
- package/src/services/sql-server-erp-service/internal/sql-transaction-manager.ts +1 -1
- package/src/services/sql-server-erp-service/sql-server-helpers.ts +6 -6
- package/src/services/sql-server-erp-service/sql-server-service.ts +4 -4
- package/src/services/sqlite-service/index.ts +1 -1
- package/src/services/sqlite-service/sqlite-coordinator.ts +2 -2
- package/src/types/erp-connector.ts +1 -1
- package/src/types/index.ts +2 -2
- package/src/utils/application-initializer.ts +5 -5
- package/src/utils/connector-factory.ts +2 -2
- package/src/utils/connector-log/log-deduper.ts +2 -2
- package/src/utils/connector-log/mm-connector-logger.ts +3 -3
- package/src/utils/erp-type-from-entity.ts +1 -1
- package/src/utils/http-client.ts +1 -1
- package/src/utils/index.ts +33 -33
- package/src/utils/local-data-store/database-lock.ts +1 -1
- package/src/utils/mm-labor-ticket-helpers.ts +2 -2
- package/src/utils/removeExtraneousFields.ts +1 -1
- package/src/utils/removeIdFieldFromPayload.ts +1 -1
- package/src/utils/resource-group.ts +2 -2
- package/src/utils/standard-process-drivers/error-processor.ts +5 -5
- package/src/utils/standard-process-drivers/index.ts +3 -3
- package/src/utils/standard-process-drivers/labor-ticket-erp-synchronizer.ts +6 -6
- package/src/utils/standard-process-drivers/mm-entity-processor.ts +7 -7
- package/src/utils/standard-process-drivers/standard-process-drivers.ts +6 -6
- package/src/utils/time-utils.ts +3 -3
- package/src/utils/timezone.ts +2 -2
- package/dist/config-Bax6Ofp5.js +0 -418
- package/dist/config-Bax6Ofp5.js.map +0 -1
- package/dist/connector-factory-BaMIlES8.js +0 -30
- package/dist/connector-factory-BaMIlES8.js.map +0 -1
- package/dist/hashed-cache-manager-C1u9jQgY.js +0 -322
- package/dist/hashed-cache-manager-C1u9jQgY.js.map +0 -1
- package/dist/index-BkVlW0ZW.js +0 -192
- package/dist/index-BkVlW0ZW.js.map +0 -1
- package/dist/knexfile-Bng2Ru9c.js +0 -20
- package/dist/knexfile-Bng2Ru9c.js.map +0 -1
- package/dist/logger-DW5fyhVS.js +0 -17593
- package/dist/logger-DW5fyhVS.js.map +0 -1
- package/dist/mm-erp-sdk.js +0 -4266
- package/dist/mm-erp-sdk.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/services/reporting-service/logger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC3D,OAAO,eAAe,MAAM,2BAA2B,CAAC;AACxD,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,YAAY,GAAG,MAAM,CAAC;AAC5B,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,MAAM,CAAC;AAExD,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;AAElD,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAAU,EAAE;IACtD,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC;IACtC,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAE,EAAE;IAC3C,MAAM,UAAU,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAC/C,IAAI,CAAC;QACH,sCAAsC;QACtC,OAAO,CAAC,KAAK,CAAC,GAAG,mBAAmB,qBAAqB,UAAU,EAAE,CAAC,CAAC;IACzE,CAAC;IAAC,MAAM,CAAC;QACP,kDAAkD;IACpD,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,EAAE,CAAC;AACvB,MAAM,aAAa,GAAG,IAAI,CAAC;AAE3B,MAAM,cAAc,GAAG,CAAC,GAAW,EAAU,EAAE;IAC7C,0BAA0B;IAC1B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,MAAM,GACR,KAAK,CAAC,MAAM,GAAG,WAAW;QACxB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,yBAAyB;QACpE,CAAC,CAAC,GAAG,CAAC;IAEV,gDAAgD;IAChD,IAAI,MAAM,CAAC,MAAM,GAAG,aAAa,EAAE,CAAC;QAClC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,GAAG,uBAAuB,CAAC;IACpE,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;IAC1E,IAAI,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IACpD,UAAU,GAAG,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;IAEnD,IAAI,gBAAwB,CAAC;IAE7B,IAAI,OAAO,OAAO,IAAI,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACzE,gBAAgB,GAAG,GAAG,SAAS,IAAI,KAAK,CAAC,iBAAiB,EAAE,KAAK,OAAO,EAAE,CAAC;IAC7E,CAAC;SAAM,IAAI,OAAO,YAAY,KAAK,EAAE,CAAC;QACpC,gBAAgB,GAAG,GAAG,SAAS,IAAI,KAAK,CAAC,iBAAiB,EAAE,KAAK,OAAO,CAAC,KAAK,IAAI,EAAE,KAAK,UAAU,EAAE,CAAC;IACxG,CAAC;SAAM,IAAI,IAAI,YAAY,KAAK,EAAE,CAAC;QACjC,MAAM,GAAG,GACP,OAAO,OAAO,IAAI,QAAQ;YACxB,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,OAAO,YAAY,KAAK;gBACxB,CAAC,CAAC,OAAO,CAAC,OAAO;gBACjB,CAAC,CAAC,EAAE,CAAC;QACX,gBAAgB,GAAG,GAAG,SAAS,IAAI,KAAK,CAAC,iBAAiB,EAAE,KAAK,GAAG,KAAK,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;IAC9F,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,GACP,OAAO,OAAO,IAAI,QAAQ;YACxB,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,OAAO,YAAY,KAAK;gBACxB,CAAC,CAAC,OAAO,CAAC,OAAO;gBACjB,CAAC,CAAC,EAAE,CAAC;QACX,gBAAgB,GAAG,GAAG,SAAS,IAAI,KAAK,CAAC,iBAAiB,EAAE,KAAK,GAAG,IAAI,UAAU,EAAE,CAAC;IACvF,CAAC;IAED,OAAO,cAAc,CAAC,gBAAgB,CAAC,CAAC;AAC1C,CAAC,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAC9B,MAAM,CAAC,SAAS,EAAE,EAClB,MAAM,CAAC,KAAK,EAAE,EACd,UAAU,CACX,CAAC;AAEF,MAAM,sBAAsB,GAAG,GAAG,EAAE;IAClC,MAAM,gBAAgB,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC;QAC9C,MAAM,EAAE,MAAM,CAAC,OAAO,CACpB,MAAM,CAAC,SAAS,EAAE,EAClB,MAAM,CAAC,KAAK,EAAE,EACd,UAAU,EACV,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAC/B;KACF,CAAC,CAAC;IACH,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;IAChD,OAAO,gBAAgB,CAAC;AAC1B,CAAC,CAAC;AAEF,mDAAmD;AACnD,MAAM,MAAM,GAAG,YAAY,CAAC;IAC1B,KAAK,EAAE,eAAe;IACtB,MAAM,EAAE,SAAS;IACjB,UAAU,EAAE,CAAC,sBAAsB,EAAE,CAAC;CACvC,CAAC,CAAC;AAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;AAEtC,uEAAuE;AACvE,MAAM,mBAAmB,GAAG,GAAoB,EAAE;IAChD,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC;QACpC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC;QAC/C,WAAW,EAAE,YAAY;QACzB,aAAa,EAAE,IAAI;QACnB,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,SAAS;KAClB,CAAC,CAAC;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;IACzC,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,0GAA0G;AAC1G,SAAS,sBAAsB,CAC7B,SAA0B,EAC1B,IAA2C;IAE3C,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IACnC,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,IAAY,EAAE,IAAY,EAAE,EAAE;QACpD,IAAI,YAAY;YAAE,OAAO;QACzB,YAAY,GAAG,IAAI,CAAC;QACpB,IAAI,YAAY,GAA0B,IAAI,CAAC;QAC/C,IAAI,IAAI,GAA2B,IAAI,CAAC;QAExC,MAAM,cAAc,GAAG,GAAG,EAAE;YAC1B,IAAI,YAAY,EAAE,CAAC;gBACjB,YAAY,CAAC,YAAY,CAAC,CAAC;gBAC3B,YAAY,GAAG,IAAI,CAAC;YACtB,CAAC;YACD,YAAY,GAAG,KAAK,CAAC;QACvB,CAAC,CAAC;QAEF,IAAI,CAAC;YACH,oDAAoD;YACpD,IAAI,GAAG,mBAAmB,EAAE,CAAC;YAC7B,yDAAyD;YACzD,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;gBAClB,IAAI,YAAY,EAAE,CAAC;oBACjB,YAAY,CAAC,YAAY,CAAC,CAAC;oBAC3B,YAAY,GAAG,IAAI,CAAC;gBACtB,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC3B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBAC3B,CAAC;gBACD,cAAc,EAAE,CAAC;YACnB,CAAC,CAAC,CAAC;YACH,sBAAsB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACnC,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBACzB,cAAc,EAAE,CAAC;gBACjB,IAAI,CAAC;oBACH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACtB,CAAC;gBAAC,MAAM,CAAC,CAAA,CAAC;gBACV,IAAI,CAAC;oBACH,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;wBACrC,IAAI,CAAC,KAAK,EAAE,CAAC;oBACf,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC,CAAA,CAAC;gBACV,OAAO;YACT,CAAC;YAED,2FAA2F;YAC3F,MAAM,gBAAgB,GAAG,KAAK,CAAC;YAC/B,YAAY,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC7B,IAAI,CAAC;oBACH,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC3B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBAC3B,CAAC;gBACD,cAAc,EAAE,CAAC;YACnB,CAAC,EAAE,gBAAgB,CAAC,CAAC;YAErB,oEAAoE;YACpE,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC;QAC1B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,cAAc,EAAE,CAAC;YACjB,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACzB,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC;oBACH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACtB,CAAC;gBAAC,MAAM,CAAC,CAAA,CAAC;gBACV,IAAI,CAAC;oBACH,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;wBACrC,IAAI,CAAC,KAAK,EAAE,CAAC;oBACf,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC,CAAA,CAAC;YACZ,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,yEAAyE;AACzE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAE,OAAe,EAAE,EAAE;IACnE,+EAA+E;IAC/E,IAAI,CAAC;QACH,MAAM,sBAAsB,GAAG,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,MAAM,CAC7D,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,YAAY,eAAe,CACzC,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,sBAAsB,EAAE,CAAC;YACvC,MAAM,CAAC,GAAI,CAAS,CAAC,SAAS,CAAC;YAC/B,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;gBACrC,IAAI,CAAC;oBACH,CAAC,CAAC,GAAG,EAAE,CAAC;gBACV,CAAC;gBAAC,MAAM,CAAC,CAAA,CAAC;YACZ,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;IAEV,MAAM,CAAC,KAAK,EAAE,CAAC;IAEf,qBAAqB;IACrB,MAAM,aAAa,GAAG,mBAAmB,EAAE,CAAC;IAC5C,sBAAsB,CAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IAC7D,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAE1B,uDAAuD;IACvD,IAAI,OAAO,KAAK,YAAY,EAAE,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,sBAAsB,EAAE,CAAC,CAAC;IACvC,CAAC;IAED,oBAAoB;IACpB,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC;AAC1B,CAAC,CAAC;AAEF,8CAA8C;AAC7C,MAAc,CAAC,KAAK,GAAG,CAAC,GAAQ,EAAE,IAAU,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAE1E,eAAe,MAAM,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../../src/services/sql-server-erp-service/configuration.ts"],"names":[],"mappings":""}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { SqlServerService } from "./sql-server-service";
|
|
2
|
-
import { SqlServerHelper } from "./sql-server-helpers";
|
|
3
|
-
import { SQLInput } from "./types/sql-input-param";
|
|
1
|
+
import { SqlServerService } from "./sql-server-service.js";
|
|
2
|
+
import { SqlServerHelper } from "./sql-server-helpers.js";
|
|
3
|
+
import { SQLInput } from "./types/sql-input-param.js";
|
|
4
4
|
/**
|
|
5
5
|
* A class to manage interactions with SQL Server
|
|
6
6
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/sql-server-erp-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/sql-server-erp-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEtD;;GAEG;AACH,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B;;GAEG;AACH,OAAO,EAAE,eAAe,EAAE,CAAC;AAE3B;;GAEG;AACH,YAAY,EAAE,QAAQ,EAAE,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { SqlServerService } from "./sql-server-service.js";
|
|
2
|
+
import { SqlServerHelper } from "./sql-server-helpers.js";
|
|
3
|
+
/**
|
|
4
|
+
* A class to manage interactions with SQL Server
|
|
5
|
+
*/
|
|
6
|
+
export { SqlServerService };
|
|
7
|
+
/**
|
|
8
|
+
* A helper class for common SQL Server operations
|
|
9
|
+
*/
|
|
10
|
+
export { SqlServerHelper };
|
|
11
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/sql-server-erp-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG1D;;GAEG;AACH,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B;;GAEG;AACH,OAAO,EAAE,eAAe,EAAE,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import sql from "mssql";
|
|
2
|
-
import { SQLInput } from "../types/sql-input-param";
|
|
3
|
-
import { SQLTransactionOperation } from "./sql-transaction-manager";
|
|
2
|
+
import { SQLInput } from "../types/sql-input-param.js";
|
|
3
|
+
import { SQLTransactionOperation } from "./sql-transaction-manager.js";
|
|
4
4
|
/**
|
|
5
5
|
* Insert a new labor ticket into the database.
|
|
6
6
|
* Create a query named laborTicketsInsert in the sql_toERP folder, add its inputs to the SQLInput array
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql-labor-ticket-operations.d.ts","sourceRoot":"","sources":["../../../../src/services/sql-server-erp-service/internal/sql-labor-ticket-operations.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,OAAO,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"sql-labor-ticket-operations.d.ts","sourceRoot":"","sources":["../../../../src/services/sql-server-erp-service/internal/sql-labor-ticket-operations.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,OAAO,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE;;;;;;;;GAQG;AACH,qBAAa,6BACX,YAAW,uBAAuB,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC;IAE1C,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,EAAE,MAAM;IAEvC,OAAO,CACX,WAAW,EAAE,GAAG,CAAC,WAAW,EAC5B,MAAM,EAAE,QAAQ,EAAE,GACjB,OAAO,CAAC,MAAM,CAAC;CAiBnB;AAED;;;;;;;GAOG;AACH,qBAAa,6BACX,YAAW,uBAAuB,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC;IAE1C,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,EAAE,MAAM;IAEvC,OAAO,CACX,WAAW,EAAE,GAAG,CAAC,WAAW,EAC5B,MAAM,EAAE,QAAQ,EAAE,GACjB,OAAO,CAAC,MAAM,CAAC;CASnB"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Insert a new labor ticket into the database.
|
|
3
|
+
* Create a query named laborTicketsInsert in the sql_toERP folder, add its inputs to the SQLInput array
|
|
4
|
+
* The laborTicketsInsert query is expected to return the NewRowUniqueId of the inserted labor ticket
|
|
5
|
+
*
|
|
6
|
+
* @param transaction The SQL transaction object
|
|
7
|
+
* @param inputs The SQL input parameters
|
|
8
|
+
* @returns The NewRowUniqueId of the inserted labor ticket
|
|
9
|
+
*/
|
|
10
|
+
export class SQLLaborTicketInsertOperation {
|
|
11
|
+
sqlQuery;
|
|
12
|
+
constructor(sqlQuery) {
|
|
13
|
+
this.sqlQuery = sqlQuery;
|
|
14
|
+
}
|
|
15
|
+
async execute(transaction, inputs) {
|
|
16
|
+
const request = transaction.request();
|
|
17
|
+
inputs.forEach((input) => {
|
|
18
|
+
request.input(input.name, input.type, input.value);
|
|
19
|
+
});
|
|
20
|
+
const result = await request.query(this.sqlQuery);
|
|
21
|
+
if (!result.recordset[0].NewRowUniqueId) {
|
|
22
|
+
throw new Error("No LaborTicketId generated by the labor ticket insert query: " +
|
|
23
|
+
JSON.stringify(request.parameters, null, 2));
|
|
24
|
+
}
|
|
25
|
+
return result.recordset[0].NewRowUniqueId;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Update an existing labor ticket in the database.
|
|
30
|
+
* Create a query named laborTicketsUpdate in the sql_toERP folder, add its inputs to the SQLInput array
|
|
31
|
+
*
|
|
32
|
+
* @param transaction The SQL transaction object
|
|
33
|
+
* @param inputs The SQL input parameters
|
|
34
|
+
* @returns The number of rows affected
|
|
35
|
+
*/
|
|
36
|
+
export class SQLLaborTicketUpdateOperation {
|
|
37
|
+
sqlQuery;
|
|
38
|
+
constructor(sqlQuery) {
|
|
39
|
+
this.sqlQuery = sqlQuery;
|
|
40
|
+
}
|
|
41
|
+
async execute(transaction, inputs) {
|
|
42
|
+
const request = transaction.request();
|
|
43
|
+
inputs.forEach((input) => {
|
|
44
|
+
request.input(input.name, input.type, input.value);
|
|
45
|
+
});
|
|
46
|
+
const result = await request.query(this.sqlQuery);
|
|
47
|
+
return result.rowsAffected[0];
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=sql-labor-ticket-operations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sql-labor-ticket-operations.js","sourceRoot":"","sources":["../../../../src/services/sql-server-erp-service/internal/sql-labor-ticket-operations.ts"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AACH,MAAM,OAAO,6BAA6B;IAGX;IAA7B,YAA6B,QAAgB;QAAhB,aAAQ,GAAR,QAAQ,CAAQ;IAAG,CAAC;IAEjD,KAAK,CAAC,OAAO,CACX,WAA4B,EAC5B,MAAkB;QAElB,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC;QACtC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACvB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAElD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CACb,+DAA+D;gBAC7D,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAC9C,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;IAC5C,CAAC;CACF;AAED;;;;;;;GAOG;AACH,MAAM,OAAO,6BAA6B;IAGX;IAA7B,YAA6B,QAAgB;QAAhB,aAAQ,GAAR,QAAQ,CAAQ;IAAG,CAAC;IAEjD,KAAK,CAAC,OAAO,CACX,WAA4B,EAC5B,MAAkB;QAElB,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC;QACtC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACvB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClD,OAAO,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC;CACF"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export const SQLServerConfigSchema = z.object({
|
|
3
|
+
user: z.string().nonempty("User is required."),
|
|
4
|
+
password: z.string().nonempty("Password is required."),
|
|
5
|
+
database: z.string().nonempty("Database name is required."),
|
|
6
|
+
server: z.string().nonempty("Server is required."),
|
|
7
|
+
port: z.coerce.number().int().positive("Port must be a positive integer.").default(1433),
|
|
8
|
+
connectionTimeout: z.coerce
|
|
9
|
+
.number()
|
|
10
|
+
.int()
|
|
11
|
+
.positive("Connection timeout must be a positive integer.")
|
|
12
|
+
.default(30000),
|
|
13
|
+
requestTimeout: z.coerce
|
|
14
|
+
.number()
|
|
15
|
+
.int()
|
|
16
|
+
.positive("Request timeout must be a positive integer.")
|
|
17
|
+
.default(60000),
|
|
18
|
+
pool: z.object({
|
|
19
|
+
max: z.coerce
|
|
20
|
+
.number()
|
|
21
|
+
.int()
|
|
22
|
+
.positive("Max pool size must be a positive integer.")
|
|
23
|
+
.default(10),
|
|
24
|
+
min: z.coerce
|
|
25
|
+
.number()
|
|
26
|
+
.int()
|
|
27
|
+
.nonnegative("Min pool size must be a non-negative integer.")
|
|
28
|
+
.default(0),
|
|
29
|
+
idleTimeoutMillis: z.coerce
|
|
30
|
+
.number()
|
|
31
|
+
.int()
|
|
32
|
+
.nonnegative("Idle timeout must be a non-negative integer.")
|
|
33
|
+
.default(30000),
|
|
34
|
+
}),
|
|
35
|
+
options: z.object({
|
|
36
|
+
encrypt: z.coerce.boolean().default(false),
|
|
37
|
+
trustServerCertificate: z.coerce.boolean().default(false),
|
|
38
|
+
}),
|
|
39
|
+
});
|
|
40
|
+
//# sourceMappingURL=sql-server-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sql-server-config.js","sourceRoot":"","sources":["../../../../src/services/sql-server-erp-service/internal/sql-server-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;IAC9C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IACtD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IAC3D,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IAClD,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxF,iBAAiB,EAAE,CAAC,CAAC,MAAM;SACxB,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,CAAC,gDAAgD,CAAC;SAC1D,OAAO,CAAC,KAAK,CAAC;IACjB,cAAc,EAAE,CAAC,CAAC,MAAM;SACrB,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,CAAC,6CAA6C,CAAC;SACvD,OAAO,CAAC,KAAK,CAAC;IACjB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;QACb,GAAG,EAAE,CAAC,CAAC,MAAM;aACV,MAAM,EAAE;aACR,GAAG,EAAE;aACL,QAAQ,CAAC,2CAA2C,CAAC;aACrD,OAAO,CAAC,EAAE,CAAC;QACd,GAAG,EAAE,CAAC,CAAC,MAAM;aACV,MAAM,EAAE;aACR,GAAG,EAAE;aACL,WAAW,CAAC,+CAA+C,CAAC;aAC5D,OAAO,CAAC,CAAC,CAAC;QACb,iBAAiB,EAAE,CAAC,CAAC,MAAM;aACxB,MAAM,EAAE;aACR,GAAG,EAAE;aACL,WAAW,CAAC,8CAA8C,CAAC;aAC3D,OAAO,CAAC,KAAK,CAAC;KAClB,CAAC;IACF,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC;QAChB,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;QAC1C,sBAAsB,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;KAC1D,CAAC;CACH,CAAC,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import sql from "mssql";
|
|
2
|
+
import logger from "../../reporting-service/logger.js";
|
|
3
|
+
export class SQLTransactionManager {
|
|
4
|
+
connection;
|
|
5
|
+
constructor(connection) {
|
|
6
|
+
this.connection = connection;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Executes a transaction with the given operation and data, manages rollbacks
|
|
10
|
+
* @param operation The SQLTransactionOperation to execute
|
|
11
|
+
* @param data The sql input parameters to pass to the operation
|
|
12
|
+
* @param config The configuration for the transaction
|
|
13
|
+
* @returns The result of the operation; throws exceptions on failures
|
|
14
|
+
*/
|
|
15
|
+
async executeTransaction(operation, data, config = {}) {
|
|
16
|
+
const transaction = new sql.Transaction(this.connection);
|
|
17
|
+
const isolationLevel = config.isolationLevel || sql.ISOLATION_LEVEL.READ_COMMITTED;
|
|
18
|
+
try {
|
|
19
|
+
await transaction.begin(isolationLevel);
|
|
20
|
+
const result = await operation.execute(transaction, data);
|
|
21
|
+
await transaction.commit();
|
|
22
|
+
return result;
|
|
23
|
+
}
|
|
24
|
+
catch (error) {
|
|
25
|
+
logger.error("Transaction error:", error);
|
|
26
|
+
try {
|
|
27
|
+
await transaction.rollback();
|
|
28
|
+
}
|
|
29
|
+
catch (rollbackError) {
|
|
30
|
+
logger.error("Rollback error:", rollbackError);
|
|
31
|
+
}
|
|
32
|
+
throw error;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=sql-transaction-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sql-transaction-manager.js","sourceRoot":"","sources":["../../../../src/services/sql-server-erp-service/internal/sql-transaction-manager.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,OAAO,CAAC;AACxB,OAAO,MAAM,MAAM,mCAAmC,CAAC;AAUvD,MAAM,OAAO,qBAAqB;IACZ;IAApB,YAAoB,UAA8B;QAA9B,eAAU,GAAV,UAAU,CAAoB;IAAG,CAAC;IACtD;;;;;;OAMG;IACH,KAAK,CAAC,kBAAkB,CACtB,SAAwC,EACxC,IAAO,EACP,SAA+B,EAAE;QAEjC,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACzD,MAAM,cAAc,GAClB,MAAM,CAAC,cAAc,IAAI,GAAG,CAAC,eAAe,CAAC,cAAc,CAAC;QAE9D,IAAI,CAAC;YACH,MAAM,WAAW,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YACxC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAC1D,MAAM,WAAW,CAAC,MAAM,EAAE,CAAC;YAC3B,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;YAC1C,IAAI,CAAC;gBACH,MAAM,WAAW,CAAC,QAAQ,EAAE,CAAC;YAC/B,CAAC;YAAC,OAAO,aAAa,EAAE,CAAC;gBACvB,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;YACjD,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sql-server-types.js","sourceRoot":"","sources":["../../../../../src/services/sql-server-erp-service/internal/types/sql-server-types.ts"],"names":[],"mappings":""}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { MMReceiveLaborTicket } from "../mm-api-service/types/receive-types";
|
|
2
|
-
import { SqlServerService } from "./sql-server-service";
|
|
3
|
-
import { SQLInput } from "./types/sql-input-param";
|
|
1
|
+
import { MMReceiveLaborTicket } from "../mm-api-service/types/receive-types.js";
|
|
2
|
+
import { SqlServerService } from "./sql-server-service.js";
|
|
3
|
+
import { SQLInput } from "./types/sql-input-param.js";
|
|
4
4
|
export declare class SqlServerHelper {
|
|
5
5
|
/**
|
|
6
6
|
* Creates a new labor ticket in the SQL Server database
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql-server-helpers.d.ts","sourceRoot":"","sources":["../../../src/services/sql-server-erp-service/sql-server-helpers.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"sql-server-helpers.d.ts","sourceRoot":"","sources":["../../../src/services/sql-server-erp-service/sql-server-helpers.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAEtD,qBAAa,eAAe;IAC1B;;;;;;;;;;;OAWG;WACU,iBAAiB,CAC5B,gBAAgB,EAAE,gBAAgB,EAClC,WAAW,EAAE,oBAAoB,EACjC,SAAS,EAAE,QAAQ,EAAE,EACrB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,oBAAoB,CAAC;IAwBhC;;;;;;;;;;OAUG;WACU,iBAAiB,CAC5B,gBAAgB,EAAE,gBAAgB,EAClC,WAAW,EAAE,oBAAoB,EACjC,SAAS,EAAE,QAAQ,EAAE,EACrB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,oBAAoB,CAAC;IAiBhC;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI;CAUhD"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { SQLTransactionManager } from "./internal/sql-transaction-manager.js";
|
|
2
|
+
import { SQLLaborTicketInsertOperation, SQLLaborTicketUpdateOperation, } from "./internal/sql-labor-ticket-operations.js";
|
|
3
|
+
import logger from "../reporting-service/logger.js";
|
|
4
|
+
export class SqlServerHelper {
|
|
5
|
+
/**
|
|
6
|
+
* Creates a new labor ticket in the SQL Server database
|
|
7
|
+
* Opens but does not close the connection
|
|
8
|
+
*
|
|
9
|
+
* @param sqlServerService The SQL Server service to use for connections
|
|
10
|
+
* @param laborTicket The labor ticket to create
|
|
11
|
+
* @param sqlInputs The SQL query parameters
|
|
12
|
+
* @param insertQuery The SQL query to execute for insertion
|
|
13
|
+
*
|
|
14
|
+
* @returns The processed labor ticket, with the ERP's laborTicketId set
|
|
15
|
+
* Throws exceptions on failures, including if the query does not return a laborTicketId
|
|
16
|
+
*/
|
|
17
|
+
static async createLaborTicket(sqlServerService, laborTicket, sqlInputs, insertQuery) {
|
|
18
|
+
const connection = await sqlServerService.openConnection();
|
|
19
|
+
if (!connection) {
|
|
20
|
+
throw new Error("Unable to establish database connection to create labor ticket.");
|
|
21
|
+
}
|
|
22
|
+
const transactionManager = new SQLTransactionManager(connection);
|
|
23
|
+
const laborTicketId = await transactionManager.executeTransaction(new SQLLaborTicketInsertOperation(insertQuery), sqlInputs);
|
|
24
|
+
if (laborTicketId) {
|
|
25
|
+
laborTicket.laborTicketId = laborTicketId.toString();
|
|
26
|
+
return laborTicket;
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
throw new Error(`The query did not return the labor ticket id for labor ticket ref: ${laborTicket.laborTicketRef}`);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Updates an existing labor ticket in the SQL Server database
|
|
34
|
+
* Opens but does not close the connection
|
|
35
|
+
* @param sqlServerService The SQL Server service to use for connections
|
|
36
|
+
* @param laborTicket The labor ticket to update
|
|
37
|
+
* @param sqlInputs The SQL query parameters
|
|
38
|
+
* @param updateQuery The SQL query to execute for update
|
|
39
|
+
*
|
|
40
|
+
* @returns The processed labor ticket
|
|
41
|
+
* Throws exceptions on failures
|
|
42
|
+
*/
|
|
43
|
+
static async updateLaborTicket(sqlServerService, laborTicket, sqlInputs, updateQuery) {
|
|
44
|
+
const connection = await sqlServerService.openConnection();
|
|
45
|
+
if (!connection) {
|
|
46
|
+
throw new Error("Unable to establish database connection to update labor ticket.");
|
|
47
|
+
}
|
|
48
|
+
const transactionManager = new SQLTransactionManager(connection);
|
|
49
|
+
await transactionManager.executeTransaction(new SQLLaborTicketUpdateOperation(updateQuery), sqlInputs);
|
|
50
|
+
return laborTicket;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Logs the SQL input parameters for debugging
|
|
54
|
+
*/
|
|
55
|
+
static logQueryInputs(inputs) {
|
|
56
|
+
logger.info("SQL Input Variables:");
|
|
57
|
+
logger.info("----------------------------------------");
|
|
58
|
+
logger.info("Variable Name | Value");
|
|
59
|
+
logger.info("----------------------------------------");
|
|
60
|
+
inputs.forEach((input) => {
|
|
61
|
+
logger.info(`${input.name.padEnd(20)} | ${input.value}`);
|
|
62
|
+
});
|
|
63
|
+
logger.info("----------------------------------------");
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=sql-server-helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sql-server-helpers.js","sourceRoot":"","sources":["../../../src/services/sql-server-erp-service/sql-server-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,GAC9B,MAAM,2CAA2C,CAAC;AAGnD,OAAO,MAAM,MAAM,gCAAgC,CAAC;AAGpD,MAAM,OAAO,eAAe;IAC1B;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAC5B,gBAAkC,EAClC,WAAiC,EACjC,SAAqB,EACrB,WAAmB;QAEnB,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,cAAc,EAAE,CAAC;QAC3D,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACb,iEAAiE,CAClE,CAAC;QACJ,CAAC;QAED,MAAM,kBAAkB,GAAG,IAAI,qBAAqB,CAAC,UAAU,CAAC,CAAC;QACjE,MAAM,aAAa,GAAG,MAAM,kBAAkB,CAAC,kBAAkB,CAC/D,IAAI,6BAA6B,CAAC,WAAW,CAAC,EAC9C,SAAS,CACV,CAAC;QAEF,IAAI,aAAa,EAAE,CAAC;YAClB,WAAW,CAAC,aAAa,GAAG,aAAa,CAAC,QAAQ,EAAE,CAAC;YACrD,OAAO,WAAW,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CACb,sEAAsE,WAAW,CAAC,cAAc,EAAE,CACnG,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACH,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAC5B,gBAAkC,EAClC,WAAiC,EACjC,SAAqB,EACrB,WAAmB;QAEnB,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,cAAc,EAAE,CAAC;QAC3D,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACb,iEAAiE,CAClE,CAAC;QACJ,CAAC;QAED,MAAM,kBAAkB,GAAG,IAAI,qBAAqB,CAAC,UAAU,CAAC,CAAC;QACjE,MAAM,kBAAkB,CAAC,kBAAkB,CACzC,IAAI,6BAA6B,CAAC,WAAW,CAAC,EAC9C,SAAS,CACV,CAAC;QAEF,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,MAAkB;QACtC,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACpC,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;QACxD,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;QAC7C,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;QACxD,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACvB,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;IAC1D,CAAC;CACF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ConnectionPool, IRecordSet } from "mssql";
|
|
2
|
-
import { ERPResponse } from "../../types/erp-types";
|
|
3
|
-
import { SQLServerConfiguration } from "./configuration";
|
|
2
|
+
import { ERPResponse } from "../../types/erp-types.js";
|
|
3
|
+
import { SQLServerConfiguration } from "./configuration.js";
|
|
4
4
|
type PagingParams = {
|
|
5
5
|
limit?: number;
|
|
6
6
|
offset?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql-server-service.d.ts","sourceRoot":"","sources":["../../../src/services/sql-server-erp-service/sql-server-service.ts"],"names":[],"mappings":"AAAA,OAAY,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGxD,OAAO,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"sql-server-service.d.ts","sourceRoot":"","sources":["../../../src/services/sql-server-erp-service/sql-server-service.ts"],"names":[],"mappings":"AAAA,OAAY,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAGxD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,KAAK,YAAY,GAAG;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,UAAU,CAA+B;IACjD,OAAO,CAAC,MAAM,CAAyB;gBAE3B,MAAM,EAAE,sBAAsB;IAIpC,OAAO;IAIb;;;;;;;OAOG;IACU,wBAAwB,CACnC,kBAAkB,EAAE,MAAM,EAC1B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,MAAM,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAsEnC;;;;OAIG;IACG,cAAc,IAAI,OAAO,CAAC,cAAc,CAAC;IA4C/C;;;;OAIG;WACW,kBAAkB,CAC9B,SAAS,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAC9C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE;YAab,eAAe;CAgB9B"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import sql from "mssql";
|
|
2
|
+
import { SQLServerConfigSchema } from "./internal/sql-server-config.js";
|
|
3
|
+
import logger from "../reporting-service/logger.js";
|
|
4
|
+
export class SqlServerService {
|
|
5
|
+
connection = null;
|
|
6
|
+
config;
|
|
7
|
+
constructor(config) {
|
|
8
|
+
this.config = config;
|
|
9
|
+
}
|
|
10
|
+
async dispose() {
|
|
11
|
+
await this.closeConnection();
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Execute a prepared statement and return the results
|
|
15
|
+
*
|
|
16
|
+
* @param statementToPrepare The SQL query to prepare
|
|
17
|
+
* @param params The parameters to bind to the prepared statement
|
|
18
|
+
* @param paging Optional paging parameters
|
|
19
|
+
* @returns The entities fetched from the database, along with paging information
|
|
20
|
+
*/
|
|
21
|
+
async executePreparedStatement(statementToPrepare, params, paging) {
|
|
22
|
+
const connection = await this.openConnection();
|
|
23
|
+
const preparedStatement = new sql.PreparedStatement(connection);
|
|
24
|
+
// Add all parameters as inputs
|
|
25
|
+
Object.keys(params).forEach((key) => {
|
|
26
|
+
preparedStatement.input(key, sql.VarChar);
|
|
27
|
+
});
|
|
28
|
+
// If limit is specified, try SQL paging
|
|
29
|
+
const finalQuery = paging?.limit !== undefined
|
|
30
|
+
? `${statementToPrepare} OFFSET ${paging.offset || 0} ROWS FETCH NEXT ${paging.limit} ROWS ONLY`
|
|
31
|
+
: statementToPrepare;
|
|
32
|
+
await preparedStatement.prepare(finalQuery);
|
|
33
|
+
let records;
|
|
34
|
+
try {
|
|
35
|
+
records = await preparedStatement.execute(params);
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
const errorInfo = error;
|
|
39
|
+
const errorMessage = "Error fetching data from ERP -> " +
|
|
40
|
+
(errorInfo.cause ? `Cause: ${errorInfo.cause}. ` : "") +
|
|
41
|
+
`Name: ${errorInfo.name}. ` +
|
|
42
|
+
`Message: ${errorInfo.message}. ` +
|
|
43
|
+
`Stack: ${errorInfo.stack}`;
|
|
44
|
+
throw new Error(errorMessage);
|
|
45
|
+
}
|
|
46
|
+
finally {
|
|
47
|
+
try {
|
|
48
|
+
await preparedStatement.unprepare();
|
|
49
|
+
}
|
|
50
|
+
catch (unprepareError) {
|
|
51
|
+
logger.error("Error during unprepare:", unprepareError);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
const allRecords = SqlServerService.recordsetToRecords(records?.recordset);
|
|
55
|
+
const rowsFetched = records?.rowsAffected[0] || 0;
|
|
56
|
+
// If SQL paging failed or we need to handle offset, apply in-memory paging
|
|
57
|
+
const pagedData = paging?.offset !== undefined
|
|
58
|
+
? allRecords.slice(paging.offset, (paging.offset || 0) + (paging.limit || allRecords.length))
|
|
59
|
+
: allRecords;
|
|
60
|
+
return {
|
|
61
|
+
data: pagedData,
|
|
62
|
+
paging: {
|
|
63
|
+
count: rowsFetched,
|
|
64
|
+
limit: paging?.limit || 0,
|
|
65
|
+
offset: paging?.offset || 0,
|
|
66
|
+
nextPage: (() => {
|
|
67
|
+
const currentPageEnd = (paging?.offset || 0) + (paging?.limit || 0);
|
|
68
|
+
return paging?.limit && currentPageEnd < rowsFetched
|
|
69
|
+
? String(currentPageEnd)
|
|
70
|
+
: undefined;
|
|
71
|
+
})(),
|
|
72
|
+
previousPage: paging?.offset
|
|
73
|
+
? String(Math.max(0, (paging.offset || 0) - (paging.limit || 10)))
|
|
74
|
+
: undefined,
|
|
75
|
+
},
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Opens a connection to SQL Server
|
|
80
|
+
* Caches the connection so that it can be reused.
|
|
81
|
+
* On failure to connect, throws
|
|
82
|
+
*/
|
|
83
|
+
async openConnection() {
|
|
84
|
+
// If we have a connection and it's still connected, reuse it
|
|
85
|
+
if (this.connection?.connected) {
|
|
86
|
+
logger.debug("Reusing existing SQL Server connection");
|
|
87
|
+
return this.connection;
|
|
88
|
+
}
|
|
89
|
+
// If we have a connection but it's not connected, just null it out
|
|
90
|
+
if (this.connection) {
|
|
91
|
+
logger.debug("Clearing disconnected SQL Server connection");
|
|
92
|
+
this.connection = null;
|
|
93
|
+
}
|
|
94
|
+
try {
|
|
95
|
+
logger.info("Opening new SQL Server connection");
|
|
96
|
+
const sqlConfig = SQLServerConfigSchema.parse({
|
|
97
|
+
user: this.config.username,
|
|
98
|
+
password: this.config.password,
|
|
99
|
+
database: this.config.database,
|
|
100
|
+
server: this.config.host,
|
|
101
|
+
port: parseInt(this.config.port),
|
|
102
|
+
connectionTimeout: parseInt(this.config.connectionTimeout),
|
|
103
|
+
requestTimeout: parseInt(this.config.requestTimeout),
|
|
104
|
+
pool: {
|
|
105
|
+
max: parseInt(this.config.poolMax),
|
|
106
|
+
min: parseInt(this.config.poolMin),
|
|
107
|
+
idleTimeoutMillis: parseInt(this.config.idleTimeoutMillis),
|
|
108
|
+
},
|
|
109
|
+
options: {
|
|
110
|
+
encrypt: this.config.encrypt,
|
|
111
|
+
trustServerCertificate: this.config.trustServer,
|
|
112
|
+
},
|
|
113
|
+
});
|
|
114
|
+
this.connection = await sql.connect(sqlConfig);
|
|
115
|
+
return this.connection;
|
|
116
|
+
}
|
|
117
|
+
catch (error) {
|
|
118
|
+
logger.error("SqlServerService>>openConnection>> Connection failed", {
|
|
119
|
+
error,
|
|
120
|
+
});
|
|
121
|
+
throw new Error("SQL Server connection failed");
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Transform a IRecordSet from a SQL query into an array of Record<string, string> instances.
|
|
126
|
+
* @param recordset IRecordSet from a SQL query
|
|
127
|
+
* @returns array of Record<string, string> instances
|
|
128
|
+
*/
|
|
129
|
+
static recordsetToRecords(recordset) {
|
|
130
|
+
const data = recordset?.map((row) => {
|
|
131
|
+
const transformedRow = {};
|
|
132
|
+
Object.keys(row).forEach((key) => {
|
|
133
|
+
transformedRow[key] = row[key]?.toString() || "";
|
|
134
|
+
});
|
|
135
|
+
return transformedRow;
|
|
136
|
+
}) || [];
|
|
137
|
+
return data;
|
|
138
|
+
}
|
|
139
|
+
async closeConnection() {
|
|
140
|
+
if (this.connection?.connected) {
|
|
141
|
+
logger.info("Closing SQL Server connection");
|
|
142
|
+
try {
|
|
143
|
+
await this.connection.close();
|
|
144
|
+
}
|
|
145
|
+
catch (error) {
|
|
146
|
+
logger.error("SqlServerService::closeConnection: Error closing connection", {
|
|
147
|
+
error,
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
this.connection = null;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
//# sourceMappingURL=sql-server-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sql-server-service.js","sourceRoot":"","sources":["../../../src/services/sql-server-erp-service/sql-server-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sql-input-param.js","sourceRoot":"","sources":["../../../../src/services/sql-server-erp-service/types/sql-input-param.ts"],"names":[],"mappings":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { SQLiteCoordinator } from "./sqlite-coordinator";
|
|
1
|
+
export { SQLiteCoordinator } from "./sqlite-coordinator.js";
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/sqlite-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/sqlite-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/sqlite-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { acquireDatabaseLock, releaseDatabaseLock, getDatabaseLock, } from "../../utils/local-data-store/database-lock.js";
|
|
2
|
+
import { logger } from "../reporting-service/index.js";
|
|
3
|
+
export class SQLiteCoordinator {
|
|
4
|
+
static LOCK_TIMEOUT_MS = 30_000; // 30 seconds
|
|
5
|
+
static LOCK_RETRY_INTERVAL_MS = 1_000; // 1 second
|
|
6
|
+
/**
|
|
7
|
+
* Performs startup checks to ensure no stale locks exist
|
|
8
|
+
* Should be called when the application starts
|
|
9
|
+
*/
|
|
10
|
+
static async performStartupCheck() {
|
|
11
|
+
const currentLock = getDatabaseLock();
|
|
12
|
+
if (currentLock.isLocked) {
|
|
13
|
+
logger.warn(`Found existing lock held by ${currentLock.lockedBy}, releasing for clean startup`);
|
|
14
|
+
releaseDatabaseLock(currentLock.lockedBy);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Attempts to acquire the database lock
|
|
19
|
+
* @param processName Name of the process requesting the lock
|
|
20
|
+
* @returns true if lock was acquired, false if database is already locked
|
|
21
|
+
*/
|
|
22
|
+
static async tryAcquireLock(processName) {
|
|
23
|
+
return acquireDatabaseLock(processName);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Executes a database operation with proper locking
|
|
27
|
+
* @param processName Name of the process executing the operation
|
|
28
|
+
* @param operation The operation to execute
|
|
29
|
+
* @returns The result of the operation
|
|
30
|
+
*/
|
|
31
|
+
static async executeWithLock(processName, operation) {
|
|
32
|
+
const startTime = Date.now();
|
|
33
|
+
// Try to acquire the lock with timeout
|
|
34
|
+
while (Date.now() - startTime < this.LOCK_TIMEOUT_MS) {
|
|
35
|
+
if (await this.tryAcquireLock(processName)) {
|
|
36
|
+
try {
|
|
37
|
+
// Execute the operation
|
|
38
|
+
const result = await operation();
|
|
39
|
+
return result;
|
|
40
|
+
}
|
|
41
|
+
finally {
|
|
42
|
+
// Always release the lock
|
|
43
|
+
releaseDatabaseLock(processName);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
// Wait before retrying
|
|
47
|
+
await new Promise((resolve) => setTimeout(resolve, this.LOCK_RETRY_INTERVAL_MS));
|
|
48
|
+
}
|
|
49
|
+
throw new Error(`Failed to acquire database lock after ${this.LOCK_TIMEOUT_MS}ms`);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Checks if the database is currently available for operations
|
|
53
|
+
* @returns true if the database is available, false if locked
|
|
54
|
+
*/
|
|
55
|
+
static isAvailable() {
|
|
56
|
+
const lock = getDatabaseLock();
|
|
57
|
+
return !lock.isLocked;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=sqlite-coordinator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sqlite-coordinator.js","sourceRoot":"","sources":["../../../src/services/sqlite-service/sqlite-coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,GAChB,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAEvD,MAAM,OAAO,iBAAiB;IACpB,MAAM,CAAU,eAAe,GAAG,MAAM,CAAC,CAAC,aAAa;IACvD,MAAM,CAAU,sBAAsB,GAAG,KAAK,CAAC,CAAC,WAAW;IAEnE;;;OAGG;IACH,MAAM,CAAC,KAAK,CAAC,mBAAmB;QAC9B,MAAM,WAAW,GAAG,eAAe,EAAE,CAAC;QAEtC,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;YACzB,MAAM,CAAC,IAAI,CACT,+BAA+B,WAAW,CAAC,QAAQ,+BAA+B,CACnF,CAAC;YACF,mBAAmB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,WAAmB;QACrD,OAAO,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CAAC,eAAe,CAC1B,WAAmB,EACnB,SAA2B;QAE3B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,uCAAuC;QACvC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;YACrD,IAAI,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC3C,IAAI,CAAC;oBACH,wBAAwB;oBACxB,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;oBACjC,OAAO,MAAM,CAAC;gBAChB,CAAC;wBAAS,CAAC;oBACT,0BAA0B;oBAC1B,mBAAmB,CAAC,WAAW,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;YAED,uBAAuB;YACvB,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAC5B,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,sBAAsB,CAAC,CACjD,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,KAAK,CACb,yCAAyC,IAAI,CAAC,eAAe,IAAI,CAClE,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,WAAW;QAChB,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;IACxB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"erp-connector.d.ts","sourceRoot":"","sources":["../../src/types/erp-connector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"erp-connector.d.ts","sourceRoot":"","sources":["../../src/types/erp-connector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mDAAmD,CAAC;AAEzF;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAE5B;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtC;;OAEG;IACH,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpC;;OAEG;IACH,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,gCAAgC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAElD;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,sBAAsB,CACpB,WAAW,EAAE,oBAAoB,GAChC,OAAO,CAAC;QAAE,WAAW,EAAE,oBAAoB,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClE,sBAAsB,CACpB,WAAW,EAAE,oBAAoB,GAChC,OAAO,CAAC,oBAAoB,CAAC,CAAC;CAClC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"erp-connector.js","sourceRoot":"","sources":["../../src/types/erp-connector.ts"],"names":[],"mappings":""}
|