@machinemetrics/mm-erp-sdk 0.2.0-beta.0 → 0.2.0-beta.2

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.
Files changed (361) hide show
  1. package/README.md +0 -5
  2. package/dist/config-CvA-mFWF.js +418 -0
  3. package/dist/config-CvA-mFWF.js.map +1 -0
  4. package/dist/connector-factory-BPm2GVVF.js +30 -0
  5. package/dist/connector-factory-BPm2GVVF.js.map +1 -0
  6. package/dist/hashed-cache-manager-B15NN8hK.js +322 -0
  7. package/dist/hashed-cache-manager-B15NN8hK.js.map +1 -0
  8. package/dist/index-D8qO1NyK.js +192 -0
  9. package/dist/index-D8qO1NyK.js.map +1 -0
  10. package/dist/index.d.ts +43 -42
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/knexfile-Bng2Ru9c.js +20 -0
  13. package/dist/knexfile-Bng2Ru9c.js.map +1 -0
  14. package/dist/knexfile.d.ts.map +1 -1
  15. package/dist/logger-BWw0_z9q.js +17557 -0
  16. package/dist/logger-BWw0_z9q.js.map +1 -0
  17. package/dist/migrations/20241015162631_create_cache_table.js +15 -11
  18. package/dist/migrations/20241015162631_create_cache_table.js.map +1 -1
  19. package/dist/migrations/20241015162632_create_sdk_cache_table.js +15 -11
  20. package/dist/migrations/20241015162632_create_sdk_cache_table.js.map +1 -1
  21. package/dist/migrations/20250103162631_create_record_tracking_table.js +15 -14
  22. package/dist/migrations/20250103162631_create_record_tracking_table.js.map +1 -1
  23. package/dist/mm-erp-sdk.js +4978 -0
  24. package/dist/mm-erp-sdk.js.map +1 -0
  25. package/dist/services/caching-service/batch-cache-manager.d.ts +1 -1
  26. package/dist/services/caching-service/batch-cache-manager.d.ts.map +1 -1
  27. package/dist/services/caching-service/hashed-cache-manager.d.ts +2 -2
  28. package/dist/services/caching-service/hashed-cache-manager.d.ts.map +1 -1
  29. package/dist/services/caching-service/index.d.ts +1 -1
  30. package/dist/services/caching-service/index.d.ts.map +1 -1
  31. package/dist/services/caching-service/record-tracking-manager.d.ts +1 -1
  32. package/dist/services/caching-service/record-tracking-manager.d.ts.map +1 -1
  33. package/dist/services/data-sync-service/configuration-manager.d.ts +1 -1
  34. package/dist/services/data-sync-service/configuration-manager.d.ts.map +1 -1
  35. package/dist/services/data-sync-service/data-sync-service.d.ts.map +1 -1
  36. package/dist/services/data-sync-service/index.d.ts +3 -3
  37. package/dist/services/data-sync-service/index.d.ts.map +1 -1
  38. package/dist/services/data-sync-service/jobs/clean-up-expired-cache.d.ts.map +1 -1
  39. package/dist/services/data-sync-service/jobs/clean-up-expired-cache.js +40 -42
  40. package/dist/services/data-sync-service/jobs/clean-up-expired-cache.js.map +1 -1
  41. package/dist/services/data-sync-service/jobs/from-erp.d.ts.map +1 -1
  42. package/dist/services/data-sync-service/jobs/from-erp.js +37 -50
  43. package/dist/services/data-sync-service/jobs/from-erp.js.map +1 -1
  44. package/dist/services/data-sync-service/jobs/retry-failed-labor-tickets.d.ts.map +1 -1
  45. package/dist/services/data-sync-service/jobs/retry-failed-labor-tickets.js +36 -38
  46. package/dist/services/data-sync-service/jobs/retry-failed-labor-tickets.js.map +1 -1
  47. package/dist/services/data-sync-service/jobs/run-migrations.d.ts.map +1 -1
  48. package/dist/services/data-sync-service/jobs/run-migrations.js +22 -24
  49. package/dist/services/data-sync-service/jobs/run-migrations.js.map +1 -1
  50. package/dist/services/data-sync-service/jobs/to-erp.d.ts.map +1 -1
  51. package/dist/services/data-sync-service/jobs/to-erp.js +49 -49
  52. package/dist/services/data-sync-service/jobs/to-erp.js.map +1 -1
  53. package/dist/services/data-sync-service/nats-labor-ticket-listener.d.ts +30 -0
  54. package/dist/services/data-sync-service/nats-labor-ticket-listener.d.ts.map +1 -0
  55. package/dist/services/erp-api-services/errors.d.ts +1 -1
  56. package/dist/services/erp-api-services/errors.d.ts.map +1 -1
  57. package/dist/services/erp-api-services/graphql/graphql-service.d.ts +2 -2
  58. package/dist/services/erp-api-services/graphql/graphql-service.d.ts.map +1 -1
  59. package/dist/services/erp-api-services/index.d.ts +8 -8
  60. package/dist/services/erp-api-services/index.d.ts.map +1 -1
  61. package/dist/services/erp-api-services/rest/rest-api-service.d.ts +2 -2
  62. package/dist/services/erp-api-services/rest/rest-api-service.d.ts.map +1 -1
  63. package/dist/services/erp-api-services/types.d.ts +2 -2
  64. package/dist/services/erp-api-services/types.d.ts.map +1 -1
  65. package/dist/services/mm-api-service/company-info.d.ts +13 -0
  66. package/dist/services/mm-api-service/company-info.d.ts.map +1 -0
  67. package/dist/services/mm-api-service/index.d.ts +13 -6
  68. package/dist/services/mm-api-service/index.d.ts.map +1 -1
  69. package/dist/services/mm-api-service/mm-api-service.d.ts +13 -7
  70. package/dist/services/mm-api-service/mm-api-service.d.ts.map +1 -1
  71. package/dist/services/mm-api-service/types/entity-transformer.d.ts +2 -2
  72. package/dist/services/mm-api-service/types/entity-transformer.d.ts.map +1 -1
  73. package/dist/services/mm-api-service/types/receive-types.d.ts +3 -0
  74. package/dist/services/mm-api-service/types/receive-types.d.ts.map +1 -1
  75. package/dist/services/nats-service/nats-service.d.ts +114 -0
  76. package/dist/services/nats-service/nats-service.d.ts.map +1 -0
  77. package/dist/services/nats-service/test-nats-subscriber.d.ts +6 -0
  78. package/dist/services/nats-service/test-nats-subscriber.d.ts.map +1 -0
  79. package/dist/services/psql-erp-service/index.d.ts +3 -3
  80. package/dist/services/psql-erp-service/index.d.ts.map +1 -1
  81. package/dist/services/psql-erp-service/psql-service.d.ts +2 -2
  82. package/dist/services/psql-erp-service/psql-service.d.ts.map +1 -1
  83. package/dist/services/reporting-service/index.d.ts +1 -1
  84. package/dist/services/reporting-service/index.d.ts.map +1 -1
  85. package/dist/services/reporting-service/logger.d.ts.map +1 -1
  86. package/dist/services/sql-server-erp-service/index.d.ts +3 -3
  87. package/dist/services/sql-server-erp-service/index.d.ts.map +1 -1
  88. package/dist/services/sql-server-erp-service/internal/sql-labor-ticket-operations.d.ts +2 -2
  89. package/dist/services/sql-server-erp-service/internal/sql-labor-ticket-operations.d.ts.map +1 -1
  90. package/dist/services/sql-server-erp-service/sql-server-helpers.d.ts +3 -3
  91. package/dist/services/sql-server-erp-service/sql-server-helpers.d.ts.map +1 -1
  92. package/dist/services/sql-server-erp-service/sql-server-service.d.ts +2 -2
  93. package/dist/services/sql-server-erp-service/sql-server-service.d.ts.map +1 -1
  94. package/dist/services/sqlite-service/index.d.ts +1 -1
  95. package/dist/services/sqlite-service/index.d.ts.map +1 -1
  96. package/dist/types/erp-connector.d.ts +2 -9
  97. package/dist/types/erp-connector.d.ts.map +1 -1
  98. package/dist/types/index.d.ts +2 -3
  99. package/dist/types/index.d.ts.map +1 -1
  100. package/dist/utils/connector-factory.d.ts +1 -1
  101. package/dist/utils/connector-factory.d.ts.map +1 -1
  102. package/dist/utils/connector-log/log-deduper.d.ts +1 -1
  103. package/dist/utils/connector-log/log-deduper.d.ts.map +1 -1
  104. package/dist/utils/connector-log/mm-connector-logger-example.d.ts +0 -1
  105. package/dist/utils/connector-log/mm-connector-logger.d.ts +1 -1
  106. package/dist/utils/connector-log/mm-connector-logger.d.ts.map +1 -1
  107. package/dist/utils/erp-type-from-entity.d.ts +1 -1
  108. package/dist/utils/erp-type-from-entity.d.ts.map +1 -1
  109. package/dist/utils/error-formatter.d.ts +19 -0
  110. package/dist/utils/error-formatter.d.ts.map +1 -0
  111. package/dist/utils/index.d.ts +38 -34
  112. package/dist/utils/index.d.ts.map +1 -1
  113. package/dist/utils/local-data-store/jobs-shared-data.d.ts +0 -2
  114. package/dist/utils/local-data-store/jobs-shared-data.d.ts.map +1 -1
  115. package/dist/utils/mm-labor-ticket-helpers.d.ts +5 -4
  116. package/dist/utils/mm-labor-ticket-helpers.d.ts.map +1 -1
  117. package/dist/utils/removeExtraneousFields.d.ts +1 -1
  118. package/dist/utils/removeExtraneousFields.d.ts.map +1 -1
  119. package/dist/utils/removeIdFieldFromPayload.d.ts +1 -1
  120. package/dist/utils/removeIdFieldFromPayload.d.ts.map +1 -1
  121. package/dist/utils/resource-group.d.ts +1 -1
  122. package/dist/utils/resource-group.d.ts.map +1 -1
  123. package/dist/utils/standard-process-drivers/error-processor.d.ts +3 -3
  124. package/dist/utils/standard-process-drivers/error-processor.d.ts.map +1 -1
  125. package/dist/utils/standard-process-drivers/index.d.ts +3 -3
  126. package/dist/utils/standard-process-drivers/index.d.ts.map +1 -1
  127. package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.d.ts +1 -1
  128. package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.d.ts.map +1 -1
  129. package/dist/utils/standard-process-drivers/mm-entity-processor.d.ts +5 -11
  130. package/dist/utils/standard-process-drivers/mm-entity-processor.d.ts.map +1 -1
  131. package/dist/utils/standard-process-drivers/standard-process-drivers.d.ts +6 -12
  132. package/dist/utils/standard-process-drivers/standard-process-drivers.d.ts.map +1 -1
  133. package/dist/utils/time-utils.d.ts.map +1 -1
  134. package/package.json +10 -8
  135. package/src/index.ts +45 -42
  136. package/src/knexfile.ts +0 -1
  137. package/src/services/caching-service/batch-cache-manager.ts +2 -2
  138. package/src/services/caching-service/hashed-cache-manager.ts +5 -5
  139. package/src/services/caching-service/index.ts +1 -1
  140. package/src/services/caching-service/record-tracking-manager.ts +2 -2
  141. package/src/services/data-sync-service/configuration-manager.ts +39 -52
  142. package/src/services/data-sync-service/data-sync-service.ts +19 -10
  143. package/src/services/data-sync-service/index.ts +3 -3
  144. package/src/services/data-sync-service/jobs/clean-up-expired-cache.ts +4 -5
  145. package/src/services/data-sync-service/jobs/from-erp.ts +6 -12
  146. package/src/services/data-sync-service/jobs/retry-failed-labor-tickets.ts +3 -4
  147. package/src/services/data-sync-service/jobs/run-migrations.ts +3 -4
  148. package/src/services/data-sync-service/jobs/to-erp.ts +14 -5
  149. package/src/services/data-sync-service/nats-labor-ticket-listener.ts +341 -0
  150. package/src/services/erp-api-services/errors.ts +3 -3
  151. package/src/services/erp-api-services/graphql/graphql-service.ts +5 -5
  152. package/src/services/erp-api-services/index.ts +8 -8
  153. package/src/services/erp-api-services/rest/rest-api-service.ts +4 -4
  154. package/src/services/erp-api-services/types.ts +2 -2
  155. package/src/services/mm-api-service/company-info.ts +87 -0
  156. package/src/services/mm-api-service/index.ts +14 -6
  157. package/src/services/mm-api-service/mm-api-service.ts +30 -13
  158. package/src/services/mm-api-service/token-mgr.ts +4 -4
  159. package/src/services/mm-api-service/types/entity-transformer.ts +3 -3
  160. package/src/services/mm-api-service/types/receive-types.ts +1 -0
  161. package/src/services/nats-service/nats-service.ts +351 -0
  162. package/src/services/nats-service/test-nats-subscriber.ts +96 -0
  163. package/src/services/psql-erp-service/index.ts +3 -3
  164. package/src/services/psql-erp-service/psql-service.ts +4 -4
  165. package/src/services/reporting-service/index.ts +1 -1
  166. package/src/services/reporting-service/logger.ts +81 -116
  167. package/src/services/sql-server-erp-service/index.ts +3 -3
  168. package/src/services/sql-server-erp-service/internal/sql-labor-ticket-operations.ts +2 -2
  169. package/src/services/sql-server-erp-service/internal/sql-transaction-manager.ts +1 -1
  170. package/src/services/sql-server-erp-service/sql-server-helpers.ts +6 -6
  171. package/src/services/sql-server-erp-service/sql-server-service.ts +4 -4
  172. package/src/services/sqlite-service/index.ts +1 -1
  173. package/src/services/sqlite-service/sqlite-coordinator.ts +2 -2
  174. package/src/types/erp-connector.ts +2 -9
  175. package/src/types/index.ts +2 -10
  176. package/src/utils/application-initializer.ts +5 -5
  177. package/src/utils/connector-factory.ts +2 -2
  178. package/src/utils/connector-log/log-deduper.ts +2 -2
  179. package/src/utils/connector-log/mm-connector-logger.ts +3 -3
  180. package/src/utils/erp-type-from-entity.ts +1 -1
  181. package/src/utils/error-formatter.ts +205 -0
  182. package/src/utils/http-client.ts +3 -2
  183. package/src/utils/index.ts +39 -38
  184. package/src/utils/local-data-store/database-lock.ts +1 -1
  185. package/src/utils/local-data-store/jobs-shared-data.ts +0 -2
  186. package/src/utils/mm-labor-ticket-helpers.ts +9 -12
  187. package/src/utils/removeExtraneousFields.ts +1 -1
  188. package/src/utils/removeIdFieldFromPayload.ts +1 -1
  189. package/src/utils/resource-group.ts +2 -2
  190. package/src/utils/standard-process-drivers/error-processor.ts +5 -5
  191. package/src/utils/standard-process-drivers/index.ts +3 -3
  192. package/src/utils/standard-process-drivers/labor-ticket-erp-synchronizer.ts +12 -16
  193. package/src/utils/standard-process-drivers/mm-entity-processor.ts +8 -14
  194. package/src/utils/standard-process-drivers/standard-process-drivers.ts +25 -39
  195. package/src/utils/time-utils.ts +3 -14
  196. package/src/utils/timezone.ts +2 -2
  197. package/dist/index.js +0 -48
  198. package/dist/index.js.map +0 -1
  199. package/dist/knexfile.js +0 -19
  200. package/dist/knexfile.js.map +0 -1
  201. package/dist/migrations/20241015162631_create_cache_table.d.ts +0 -4
  202. package/dist/migrations/20241015162631_create_cache_table.d.ts.map +0 -1
  203. package/dist/migrations/20241015162632_create_sdk_cache_table.d.ts +0 -4
  204. package/dist/migrations/20241015162632_create_sdk_cache_table.d.ts.map +0 -1
  205. package/dist/migrations/20250103162631_create_record_tracking_table.d.ts +0 -4
  206. package/dist/migrations/20250103162631_create_record_tracking_table.d.ts.map +0 -1
  207. package/dist/services/caching-service/batch-cache-manager.js +0 -84
  208. package/dist/services/caching-service/batch-cache-manager.js.map +0 -1
  209. package/dist/services/caching-service/hashed-cache-manager.js +0 -223
  210. package/dist/services/caching-service/hashed-cache-manager.js.map +0 -1
  211. package/dist/services/caching-service/index.js +0 -2
  212. package/dist/services/caching-service/index.js.map +0 -1
  213. package/dist/services/caching-service/record-tracking-manager.js +0 -28
  214. package/dist/services/caching-service/record-tracking-manager.js.map +0 -1
  215. package/dist/services/data-sync-service/configuration-manager.js +0 -163
  216. package/dist/services/data-sync-service/configuration-manager.js.map +0 -1
  217. package/dist/services/data-sync-service/data-sync-service.js +0 -95
  218. package/dist/services/data-sync-service/data-sync-service.js.map +0 -1
  219. package/dist/services/data-sync-service/index.js +0 -10
  220. package/dist/services/data-sync-service/index.js.map +0 -1
  221. package/dist/services/erp-api-services/errors.js +0 -83
  222. package/dist/services/erp-api-services/errors.js.map +0 -1
  223. package/dist/services/erp-api-services/graphql/graphql-service.js +0 -102
  224. package/dist/services/erp-api-services/graphql/graphql-service.js.map +0 -1
  225. package/dist/services/erp-api-services/graphql/types.js +0 -6
  226. package/dist/services/erp-api-services/graphql/types.js.map +0 -1
  227. package/dist/services/erp-api-services/index.js +0 -13
  228. package/dist/services/erp-api-services/index.js.map +0 -1
  229. package/dist/services/erp-api-services/oauth-client.js +0 -41
  230. package/dist/services/erp-api-services/oauth-client.js.map +0 -1
  231. package/dist/services/erp-api-services/rest/get-query-params.js +0 -23
  232. package/dist/services/erp-api-services/rest/get-query-params.js.map +0 -1
  233. package/dist/services/erp-api-services/rest/rest-api-service.js +0 -163
  234. package/dist/services/erp-api-services/rest/rest-api-service.js.map +0 -1
  235. package/dist/services/erp-api-services/types.js +0 -2
  236. package/dist/services/erp-api-services/types.js.map +0 -1
  237. package/dist/services/mm-api-service/index.js +0 -15
  238. package/dist/services/mm-api-service/index.js.map +0 -1
  239. package/dist/services/mm-api-service/mm-api-service.js +0 -519
  240. package/dist/services/mm-api-service/mm-api-service.js.map +0 -1
  241. package/dist/services/mm-api-service/token-mgr.js +0 -113
  242. package/dist/services/mm-api-service/token-mgr.js.map +0 -1
  243. package/dist/services/mm-api-service/types/checkpoint.js +0 -2
  244. package/dist/services/mm-api-service/types/checkpoint.js.map +0 -1
  245. package/dist/services/mm-api-service/types/entity-transformer.js +0 -186
  246. package/dist/services/mm-api-service/types/entity-transformer.js.map +0 -1
  247. package/dist/services/mm-api-service/types/mm-response-interfaces.js +0 -34
  248. package/dist/services/mm-api-service/types/mm-response-interfaces.js.map +0 -1
  249. package/dist/services/mm-api-service/types/receive-types.js +0 -55
  250. package/dist/services/mm-api-service/types/receive-types.js.map +0 -1
  251. package/dist/services/mm-api-service/types/send-types.js +0 -337
  252. package/dist/services/mm-api-service/types/send-types.js.map +0 -1
  253. package/dist/services/psql-erp-service/configuration.js +0 -2
  254. package/dist/services/psql-erp-service/configuration.js.map +0 -1
  255. package/dist/services/psql-erp-service/index.js +0 -10
  256. package/dist/services/psql-erp-service/index.js.map +0 -1
  257. package/dist/services/psql-erp-service/internal/types/psql-types.js +0 -5
  258. package/dist/services/psql-erp-service/internal/types/psql-types.js.map +0 -1
  259. package/dist/services/psql-erp-service/psql-helpers.js +0 -99
  260. package/dist/services/psql-erp-service/psql-helpers.js.map +0 -1
  261. package/dist/services/psql-erp-service/psql-service.js +0 -187
  262. package/dist/services/psql-erp-service/psql-service.js.map +0 -1
  263. package/dist/services/reporting-service/index.js +0 -5
  264. package/dist/services/reporting-service/index.js.map +0 -1
  265. package/dist/services/reporting-service/logger.js +0 -221
  266. package/dist/services/reporting-service/logger.js.map +0 -1
  267. package/dist/services/sql-server-erp-service/configuration.js +0 -2
  268. package/dist/services/sql-server-erp-service/configuration.js.map +0 -1
  269. package/dist/services/sql-server-erp-service/index.js +0 -11
  270. package/dist/services/sql-server-erp-service/index.js.map +0 -1
  271. package/dist/services/sql-server-erp-service/internal/sql-labor-ticket-operations.js +0 -50
  272. package/dist/services/sql-server-erp-service/internal/sql-labor-ticket-operations.js.map +0 -1
  273. package/dist/services/sql-server-erp-service/internal/sql-server-config.js +0 -40
  274. package/dist/services/sql-server-erp-service/internal/sql-server-config.js.map +0 -1
  275. package/dist/services/sql-server-erp-service/internal/sql-transaction-manager.js +0 -36
  276. package/dist/services/sql-server-erp-service/internal/sql-transaction-manager.js.map +0 -1
  277. package/dist/services/sql-server-erp-service/internal/types/sql-server-types.js +0 -2
  278. package/dist/services/sql-server-erp-service/internal/types/sql-server-types.js.map +0 -1
  279. package/dist/services/sql-server-erp-service/sql-server-helpers.js +0 -66
  280. package/dist/services/sql-server-erp-service/sql-server-helpers.js.map +0 -1
  281. package/dist/services/sql-server-erp-service/sql-server-service.js +0 -154
  282. package/dist/services/sql-server-erp-service/sql-server-service.js.map +0 -1
  283. package/dist/services/sql-server-erp-service/types/sql-input-param.js +0 -2
  284. package/dist/services/sql-server-erp-service/types/sql-input-param.js.map +0 -1
  285. package/dist/services/sqlite-service/index.js +0 -2
  286. package/dist/services/sqlite-service/index.js.map +0 -1
  287. package/dist/services/sqlite-service/sqlite-coordinator.js +0 -60
  288. package/dist/services/sqlite-service/sqlite-coordinator.js.map +0 -1
  289. package/dist/types/erp-connector.js +0 -2
  290. package/dist/types/erp-connector.js.map +0 -1
  291. package/dist/types/erp-types.js +0 -13
  292. package/dist/types/erp-types.js.map +0 -1
  293. package/dist/types/flattened-work-order.d.ts +0 -99
  294. package/dist/types/flattened-work-order.d.ts.map +0 -1
  295. package/dist/types/flattened-work-order.js +0 -2
  296. package/dist/types/flattened-work-order.js.map +0 -1
  297. package/dist/types/index.js +0 -6
  298. package/dist/types/index.js.map +0 -1
  299. package/dist/utils/application-initializer.js +0 -55
  300. package/dist/utils/application-initializer.js.map +0 -1
  301. package/dist/utils/cleanup-numbers.js +0 -6
  302. package/dist/utils/cleanup-numbers.js.map +0 -1
  303. package/dist/utils/connector-factory.js +0 -34
  304. package/dist/utils/connector-factory.js.map +0 -1
  305. package/dist/utils/connector-log/log-deduper.js +0 -240
  306. package/dist/utils/connector-log/log-deduper.js.map +0 -1
  307. package/dist/utils/connector-log/mm-connector-logger-example.js +0 -88
  308. package/dist/utils/connector-log/mm-connector-logger-example.js.map +0 -1
  309. package/dist/utils/connector-log/mm-connector-logger.js +0 -151
  310. package/dist/utils/connector-log/mm-connector-logger.js.map +0 -1
  311. package/dist/utils/data-transformation.js +0 -38
  312. package/dist/utils/data-transformation.js.map +0 -1
  313. package/dist/utils/env.d.ts +0 -8
  314. package/dist/utils/env.d.ts.map +0 -1
  315. package/dist/utils/env.js +0 -58
  316. package/dist/utils/env.js.map +0 -1
  317. package/dist/utils/erp-timezone-utils.d.ts +0 -20
  318. package/dist/utils/erp-timezone-utils.d.ts.map +0 -1
  319. package/dist/utils/erp-timezone-utils.js +0 -75
  320. package/dist/utils/erp-timezone-utils.js.map +0 -1
  321. package/dist/utils/erp-type-from-entity.js +0 -6
  322. package/dist/utils/erp-type-from-entity.js.map +0 -1
  323. package/dist/utils/error-utils.js +0 -21
  324. package/dist/utils/error-utils.js.map +0 -1
  325. package/dist/utils/http-client.js +0 -186
  326. package/dist/utils/http-client.js.map +0 -1
  327. package/dist/utils/index.js +0 -66
  328. package/dist/utils/index.js.map +0 -1
  329. package/dist/utils/local-data-store/database-lock.js +0 -68
  330. package/dist/utils/local-data-store/database-lock.js.map +0 -1
  331. package/dist/utils/local-data-store/jobs-shared-data.js +0 -118
  332. package/dist/utils/local-data-store/jobs-shared-data.js.map +0 -1
  333. package/dist/utils/mm-labor-ticket-helpers.js +0 -28
  334. package/dist/utils/mm-labor-ticket-helpers.js.map +0 -1
  335. package/dist/utils/removeExtraneousFields.js +0 -16
  336. package/dist/utils/removeExtraneousFields.js.map +0 -1
  337. package/dist/utils/removeIdFieldFromPayload.js +0 -16
  338. package/dist/utils/removeIdFieldFromPayload.js.map +0 -1
  339. package/dist/utils/resource-group.js +0 -59
  340. package/dist/utils/resource-group.js.map +0 -1
  341. package/dist/utils/standard-process-drivers/error-processor.js +0 -262
  342. package/dist/utils/standard-process-drivers/error-processor.js.map +0 -1
  343. package/dist/utils/standard-process-drivers/index.js +0 -4
  344. package/dist/utils/standard-process-drivers/index.js.map +0 -1
  345. package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.js +0 -173
  346. package/dist/utils/standard-process-drivers/labor-ticket-erp-synchronizer.js.map +0 -1
  347. package/dist/utils/standard-process-drivers/mm-entity-processor.js +0 -174
  348. package/dist/utils/standard-process-drivers/mm-entity-processor.js.map +0 -1
  349. package/dist/utils/standard-process-drivers/standard-process-drivers.js +0 -333
  350. package/dist/utils/standard-process-drivers/standard-process-drivers.js.map +0 -1
  351. package/dist/utils/time-utils.js +0 -103
  352. package/dist/utils/time-utils.js.map +0 -1
  353. package/dist/utils/timezone.js +0 -105
  354. package/dist/utils/timezone.js.map +0 -1
  355. package/dist/utils/trimObjectValues.js +0 -11
  356. package/dist/utils/trimObjectValues.js.map +0 -1
  357. package/dist/utils/uniqueRows.js +0 -35
  358. package/dist/utils/uniqueRows.js.map +0 -1
  359. package/src/types/flattened-work-order.ts +0 -108
  360. package/src/utils/env.ts +0 -75
  361. package/src/utils/erp-timezone-utils.ts +0 -99
@@ -1,40 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,36 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=sql-server-types.js.map
@@ -1 +0,0 @@
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,66 +0,0 @@
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
@@ -1 +0,0 @@
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,154 +0,0 @@
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
@@ -1 +0,0 @@
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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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=sql-input-param.js.map
@@ -1 +0,0 @@
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 +0,0 @@
1
- export { SQLiteCoordinator } from "./sqlite-coordinator.js";
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/sqlite-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -1,60 +0,0 @@
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
@@ -1 +0,0 @@
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,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=erp-connector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"erp-connector.js","sourceRoot":"","sources":["../../src/types/erp-connector.ts"],"names":[],"mappings":""}
@@ -1,13 +0,0 @@
1
- export var ERPObjType;
2
- (function (ERPObjType) {
3
- ERPObjType[ERPObjType["RESOURCES"] = 0] = "RESOURCES";
4
- ERPObjType[ERPObjType["PARTS"] = 1] = "PARTS";
5
- ERPObjType[ERPObjType["PART_OPERATION"] = 2] = "PART_OPERATION";
6
- ERPObjType[ERPObjType["WORK_ORDERS"] = 3] = "WORK_ORDERS";
7
- ERPObjType[ERPObjType["WORK_ORDER_OPERATIONS"] = 4] = "WORK_ORDER_OPERATIONS";
8
- ERPObjType[ERPObjType["PERSONS"] = 5] = "PERSONS";
9
- ERPObjType[ERPObjType["REASONS"] = 6] = "REASONS";
10
- ERPObjType[ERPObjType["LABOR_TICKETS"] = 7] = "LABOR_TICKETS";
11
- // TO DO: TIMESHEETS support
12
- })(ERPObjType || (ERPObjType = {}));
13
- //# sourceMappingURL=erp-types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"erp-types.js","sourceRoot":"","sources":["../../src/types/erp-types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,UAUX;AAVD,WAAY,UAAU;IACpB,qDAAS,CAAA;IACT,6CAAK,CAAA;IACL,+DAAc,CAAA;IACd,yDAAW,CAAA;IACX,6EAAqB,CAAA;IACrB,iDAAO,CAAA;IACP,iDAAO,CAAA;IACP,6DAAa,CAAA;IACb,4BAA4B;AAC9B,CAAC,EAVW,UAAU,KAAV,UAAU,QAUrB"}
@@ -1,99 +0,0 @@
1
- /**
2
- * Canonical representation of a flattened work order row that contains the
3
- * information needed to build MM work order entities plus their operations.
4
- *
5
- * All properties are optional to maintain backwards compatibility with
6
- * existing connectors.
7
- */
8
- export interface FlattenedWorkOrderPartFields {
9
- /** ERP part number (required for Parts when present). */
10
- partNumber?: string | number;
11
- /** ERP part revision or version string. */
12
- partRevision?: string | number;
13
- /** Routing/method identifier (defaults to "Standard" when omitted). */
14
- method?: string;
15
- }
16
- export interface FlattenedWorkOrderPartOperationFields {
17
- /** Sequence number of the operation on the routing. */
18
- sequenceNumber?: string | number;
19
- /** Resource or machine identifier responsible for the operation. */
20
- resourceId?: string | number;
21
- /** Operation cycle time expressed in milliseconds. */
22
- cycleTimeMs?: number;
23
- /** Operation setup time expressed in milliseconds. */
24
- setupTimeMs?: number;
25
- /** Human-readable description of the operation. */
26
- operationDescription?: string;
27
- /** Quantity of parts operated on per cycle. */
28
- quantityPerPart?: number;
29
- }
30
- export interface FlattenedWorkOrderFields extends FlattenedWorkOrderPartFields {
31
- /** Unique identifier for the work order in the ERP. */
32
- workOrderId?: string | number;
33
- /** Lot number (if the ERP distinguishes lots). */
34
- lot?: string | number;
35
- /** Split identifier (if the ERP splits orders). */
36
- split?: string | number;
37
- /** Sub identifier (for multi-level orders). */
38
- sub?: string | number;
39
- /** Work order status (e.g., Open, Closed, Released). */
40
- status?: string;
41
- /**
42
- * Due date expressed as an ISO-8601 UTC string (trailing `Z` or explicit offset).
43
- * The SDK validates but does not shift timezones.
44
- */
45
- dueDate?: string;
46
- /** Free-form description of the work order. */
47
- description?: string;
48
- /** Scheduled start datetime in ISO-8601 UTC form. */
49
- scheduledStartDate?: string;
50
- /** Scheduled end datetime in ISO-8601 UTC form. */
51
- scheduledEndDate?: string;
52
- /** Closed datetime in ISO-8601 UTC form. */
53
- closedDate?: string;
54
- /** Quantity required by the work order. */
55
- quantityRequired?: number;
56
- }
57
- export interface FlattenedWorkOrderOperationFields {
58
- /** Work order identifier (repeated for each operation). */
59
- workOrderId?: string | number;
60
- /** Lot identifier for the operation row. */
61
- lot?: string | number;
62
- /** Split identifier for the operation row. */
63
- split?: string | number;
64
- /** Sub identifier for the operation row. */
65
- sub?: string | number;
66
- /** Sequence number for the specific operation. */
67
- sequenceNumber?: string | number;
68
- /** Resource or machine identifier for the operation. */
69
- resourceId?: string | number;
70
- /** Quantity started on the operation. */
71
- startQuantity?: number;
72
- /** Quantity finished on the operation. */
73
- finishQuantity?: number;
74
- /** Expected reject percentage (0-1). */
75
- expectedRejectRate?: number;
76
- /** Scheduled start datetime (ISO-8601 UTC). */
77
- opScheduledStartDate?: string;
78
- /** Scheduled finish datetime (ISO-8601 UTC). */
79
- opScheduledFinishDate?: string;
80
- /** Closed datetime for the operation (ISO-8601 UTC). */
81
- opClosedDate?: string;
82
- /** Production burden rate per hour. */
83
- productionburdenRateHourly?: number | string;
84
- /** Setup burden rate per hour. */
85
- setupburdenRatehourly?: number | string;
86
- /** Operation type (Production, Setup, etc.). */
87
- operationType?: string;
88
- /** Quantity per part for the operation. */
89
- quantityPerPart?: number;
90
- /** Operation status (defaults to work-order status when omitted). */
91
- opStatus?: string;
92
- }
93
- export type FlattenedWorkOrderRowBase = FlattenedWorkOrderPartFields & FlattenedWorkOrderPartOperationFields & FlattenedWorkOrderFields & FlattenedWorkOrderOperationFields;
94
- /**
95
- * Canonical flattened row that callers pass into
96
- * `StandardProcessDrivers.syncWorkOrderBatchFromFlattened`.
97
- */
98
- export type FlattenedWorkOrderRow = FlattenedWorkOrderRowBase;
99
- //# sourceMappingURL=flattened-work-order.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"flattened-work-order.d.ts","sourceRoot":"","sources":["../../src/types/flattened-work-order.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=flattened-work-order.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"flattened-work-order.js","sourceRoot":"","sources":["../../src/types/flattened-work-order.ts"],"names":[],"mappings":""}
@@ -1,6 +0,0 @@
1
- /**
2
- * Type definitions for the MachineMetrics ERP Connector SDK.
3
- * This file re-exports all type definitions that are part of the public API.
4
- */
5
- export {};
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -1,55 +0,0 @@
1
- import logger from "../services/reporting-service/logger.js";
2
- import { CoreConfiguration } from "../services/data-sync-service/configuration-manager.js";
3
- import { SQLiteCoordinator } from "../services/sqlite-service/index.js";
4
- import { getTimezoneOffsetAndPersist } from "./time-utils.js";
5
- import knex from "knex";
6
- import config from "../knexfile.js";
7
- /**
8
- * Utility class to handle application initialization tasks
9
- */
10
- export class ApplicationInitializer {
11
- /**
12
- * Performs all necessary application initialization tasks
13
- * This should be called before starting any services or jobs
14
- */
15
- static async initialize() {
16
- try {
17
- logger.info("\n================================INITIALIZING APPLICATION================================\n");
18
- // Load and validate core configuration
19
- const coreConfig = CoreConfiguration.inst();
20
- logger.info("Core Configuration loaded:", coreConfig.toSafeLogObject());
21
- // Perform database startup checks
22
- logger.info("Performing database startup checks...");
23
- await SQLiteCoordinator.performStartupCheck();
24
- logger.info("Database startup checks completed successfully");
25
- // Run database migrations to ensure all tables exist
26
- logger.info("Running database migrations...");
27
- await ApplicationInitializer.runMigrations();
28
- logger.info("Database migrations completed successfully");
29
- // Required for most connectors
30
- await getTimezoneOffsetAndPersist();
31
- logger.info("\n================================APPLICATION INITIALIZATION COMPLETED================================\n");
32
- }
33
- catch (error) {
34
- logger.error("Critical initialization failure. Exiting.", error);
35
- process.exitCode = 1;
36
- }
37
- }
38
- /**
39
- * Runs database migrations to ensure all required tables exist
40
- */
41
- static async runMigrations() {
42
- const db = knex(config.local);
43
- try {
44
- await db.migrate.latest();
45
- }
46
- catch (error) {
47
- logger.error("Error running migrations:", error);
48
- throw error;
49
- }
50
- finally {
51
- await db.destroy();
52
- }
53
- }
54
- }
55
- //# sourceMappingURL=application-initializer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"application-initializer.js","sourceRoot":"","sources":["../../src/utils/application-initializer.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,yCAAyC,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wDAAwD,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,MAAM,MAAM,gBAAgB,CAAC;AAEpC;;GAEG;AACH,MAAM,OAAO,sBAAsB;IACjC;;;OAGG;IACI,MAAM,CAAC,KAAK,CAAC,UAAU;QAC5B,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CACT,8FAA8F,CAC/F,CAAC;YAEF,uCAAuC;YACvC,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,EAAE,CAAC;YAC5C,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC;YAExE,kCAAkC;YAClC,MAAM,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;YACrD,MAAM,iBAAiB,CAAC,mBAAmB,EAAE,CAAC;YAC9C,MAAM,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;YAE9D,qDAAqD;YACrD,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;YAC9C,MAAM,sBAAsB,CAAC,aAAa,EAAE,CAAC;YAC7C,MAAM,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;YAE1D,+BAA+B;YAC/B,MAAM,2BAA2B,EAAE,CAAC;YAEpC,MAAM,CAAC,IAAI,CACT,0GAA0G,CAC3G,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,2CAA2C,EAAE,KAAK,CAAC,CAAC;YACjE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,KAAK,CAAC,aAAa;QAChC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;YACjD,MAAM,KAAK,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;CACF"}
@@ -1,6 +0,0 @@
1
- export const cleanupNumbers = (data) => {
2
- // eslint-disable-next-line no-useless-escape
3
- data = data.toString().replace(/[^0-9\.]+/g, "");
4
- return data;
5
- };
6
- //# sourceMappingURL=cleanup-numbers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cleanup-numbers.js","sourceRoot":"","sources":["../../src/utils/cleanup-numbers.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAY,EAAE,EAAE;IAC7C,6CAA6C;IAC7C,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IACjD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}