@devx-commerce/plugin-gati 0.0.34-beta.4 → 0.0.34-beta.41

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 (298) hide show
  1. package/.medusa/server/src/admin/index.js +3 -1
  2. package/.medusa/server/src/admin/index.mjs +3 -1
  3. package/.medusa/server/src/api/admin/masters/validators.js +2 -2
  4. package/.medusa/server/src/api/admin/variant-options/recalculate/route.js +446 -0
  5. package/.medusa/server/src/api/admin/variant-options/sync/route.js +21 -5
  6. package/.medusa/server/src/api/erp/webhook/config.js +36 -1
  7. package/.medusa/server/src/api/erp/webhook/route.js +10 -137
  8. package/.medusa/server/src/api/erp/webhook/utils.js +8 -1
  9. package/.medusa/server/src/api/pos/customer-ledger/middleware.js +13 -0
  10. package/.medusa/server/src/api/pos/customer-ledger/route.js +50 -0
  11. package/.medusa/server/src/api/pos/generate-invoice/route.js +427 -0
  12. package/.medusa/server/src/api/pos/gold/calculate/route.js +104 -0
  13. package/.medusa/server/src/api/pos/gold/item-master-purity.js +46 -0
  14. package/.medusa/server/src/api/pos/gold/middleware.js +18 -0
  15. package/.medusa/server/src/api/pos/gold/route.js +83 -0
  16. package/.medusa/server/src/api/pos/gold-rate/route.js +37 -24
  17. package/.medusa/server/src/api/pos/middleware.js +13 -1
  18. package/.medusa/server/src/api/pos/old-gold-item/middleware.js +10 -0
  19. package/.medusa/server/src/api/pos/old-gold-item/route.js +52 -0
  20. package/.medusa/server/src/api/pos/platinumdata/middleware.js +13 -0
  21. package/.medusa/server/src/api/pos/platinumdata/route.js +41 -0
  22. package/.medusa/server/src/api/pos/silverdata/middleware.js +13 -0
  23. package/.medusa/server/src/api/pos/silverdata/route.js +41 -0
  24. package/.medusa/server/src/api/pos/wallet-balance/middleware.js +13 -0
  25. package/.medusa/server/src/api/pos/wallet-balance/route.js +68 -0
  26. package/.medusa/server/src/api/store/custom-price/validators.js +2 -2
  27. package/.medusa/server/src/api/store/customer-ledger/middleware.js +13 -0
  28. package/.medusa/server/src/api/store/customer-ledger/route.js +49 -0
  29. package/.medusa/server/src/api/store/gold-rate/validators.js +2 -2
  30. package/.medusa/server/src/api/store/middleware.js +5 -1
  31. package/.medusa/server/src/api/store/wallet-balance/middleware.js +13 -0
  32. package/.medusa/server/src/api/store/wallet-balance/route.js +67 -0
  33. package/.medusa/server/src/jobs/process-erp-events.js +205 -0
  34. package/.medusa/server/src/jobs/process-variant-option-sync.js +43 -28
  35. package/.medusa/server/src/jobs/sync-addless-detail.js +60 -0
  36. package/.medusa/server/src/jobs/sync-book-list-and-applicable-policy.js +89 -0
  37. package/.medusa/server/src/jobs/sync-item-master.js +20 -0
  38. package/.medusa/server/src/jobs/sync-labour-chart-master.js +20 -0
  39. package/.medusa/server/src/jobs/sync-order-erp.js +2 -2
  40. package/.medusa/server/src/jobs/sync-payment-book-master.js +63 -0
  41. package/.medusa/server/src/jobs/sync-rate-chart-master.js +20 -0
  42. package/.medusa/server/src/jobs/sync-report-master.js +46 -0
  43. package/.medusa/server/src/jobs/sync-sale-return-policy-master.js +29 -0
  44. package/.medusa/server/src/lib/api-response.js +2 -1
  45. package/.medusa/server/src/links/jewel-trans-master.js +13 -0
  46. package/.medusa/server/src/links/order-master.js +13 -0
  47. package/.medusa/server/src/links/sale-master.js +13 -0
  48. package/.medusa/server/src/modules/addless-detail/index.js +13 -0
  49. package/.medusa/server/src/modules/addless-detail/migrations/Migration20260212101102.js +15 -0
  50. package/.medusa/server/src/modules/addless-detail/migrations/Migration20260213000000.js +47 -0
  51. package/.medusa/server/src/modules/addless-detail/migrations/Migration20260226053037.js +15 -0
  52. package/.medusa/server/src/modules/addless-detail/models/addless-master.js +17 -0
  53. package/.medusa/server/src/modules/addless-detail/service.js +10 -0
  54. package/.medusa/server/src/modules/applicable-sale-return-policy/index.js +13 -0
  55. package/.medusa/server/src/modules/applicable-sale-return-policy/migrations/Migration20260123083526.js +15 -0
  56. package/.medusa/server/src/modules/applicable-sale-return-policy/models/applicable-sale-return-policy.js +23 -0
  57. package/.medusa/server/src/modules/applicable-sale-return-policy/service.js +10 -0
  58. package/.medusa/server/src/modules/book-list/index.js +13 -0
  59. package/.medusa/server/src/modules/book-list/migrations/Migration20260123083525.js +15 -0
  60. package/.medusa/server/src/modules/book-list/models/book-list.js +12 -0
  61. package/.medusa/server/src/modules/book-list/service.js +10 -0
  62. package/.medusa/server/src/modules/category-group-master/migrations/Migration20250729035221.js +2 -2
  63. package/.medusa/server/src/modules/category-group-master/migrations/Migration20251031061116.js +2 -2
  64. package/.medusa/server/src/modules/category-group-master/migrations/Migration20251104045912.js +2 -2
  65. package/.medusa/server/src/modules/category-master/migrations/Migration20250513122212.js +2 -2
  66. package/.medusa/server/src/modules/category-master/migrations/Migration20250519180539.js +2 -2
  67. package/.medusa/server/src/modules/category-master/migrations/Migration20250531004724.js +2 -2
  68. package/.medusa/server/src/modules/category-master/migrations/Migration20250729040659.js +2 -2
  69. package/.medusa/server/src/modules/category-master/migrations/Migration20251031061327.js +2 -2
  70. package/.medusa/server/src/modules/category-master/migrations/Migration20251104045755.js +2 -2
  71. package/.medusa/server/src/modules/collection-group-master/migrations/Migration20250531022203.js +2 -2
  72. package/.medusa/server/src/modules/collection-group-master/migrations/Migration20251031061432.js +2 -2
  73. package/.medusa/server/src/modules/collection-group-master/migrations/Migration20251104050102.js +2 -2
  74. package/.medusa/server/src/modules/collection-master/migrations/Migration20250513122211.js +2 -2
  75. package/.medusa/server/src/modules/collection-master/migrations/Migration20250531025048.js +2 -2
  76. package/.medusa/server/src/modules/collection-master/migrations/Migration20251031060941.js +2 -2
  77. package/.medusa/server/src/modules/collection-master/migrations/Migration20251104050012.js +2 -2
  78. package/.medusa/server/src/modules/customer-receive-voucher/index.js +13 -0
  79. package/.medusa/server/src/modules/customer-receive-voucher/migrations/Migration20250115000000.js +51 -0
  80. package/.medusa/server/src/modules/customer-receive-voucher/migrations/Migration20260106050934.js +18 -0
  81. package/.medusa/server/src/modules/customer-receive-voucher/models/customer-receive-voucher.js +35 -0
  82. package/.medusa/server/src/modules/customer-receive-voucher/service.js +10 -0
  83. package/.medusa/server/src/modules/discount-master/migrations/Migration20250707232514.js +2 -2
  84. package/.medusa/server/src/modules/discount-master/migrations/Migration20250708051709.js +2 -2
  85. package/.medusa/server/src/modules/discount-master/migrations/Migration20250708051737.js +2 -2
  86. package/.medusa/server/src/modules/discount-master/migrations/Migration20251031061523.js +2 -2
  87. package/.medusa/server/src/modules/discount-master/migrations/Migration20251104050153.js +2 -2
  88. package/.medusa/server/src/modules/erp/migrations/Migration20250513121436.js +2 -2
  89. package/.medusa/server/src/modules/erp/service.js +542 -8
  90. package/.medusa/server/src/modules/erp-event/migrations/Migration20250908040911.js +2 -2
  91. package/.medusa/server/src/modules/erp-event/migrations/Migration20250922095956.js +2 -2
  92. package/.medusa/server/src/modules/extended-product/migrations/Migration20250620030100.js +2 -2
  93. package/.medusa/server/src/modules/extended-product/migrations/Migration20250716041546.js +2 -2
  94. package/.medusa/server/src/modules/extended-product/migrations/Migration20251103182726.js +2 -2
  95. package/.medusa/server/src/modules/extended-product/migrations/Migration20251119062526.js +2 -2
  96. package/.medusa/server/src/modules/extended-product/migrations/Migration20251202055742.js +2 -2
  97. package/.medusa/server/src/modules/extended-product/migrations/Migration20251202064200.js +2 -2
  98. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250620030335.js +2 -2
  99. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250620030522.js +2 -2
  100. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250629220100.js +2 -2
  101. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250629223425.js +2 -2
  102. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250704064831.js +2 -2
  103. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250716121609.js +2 -2
  104. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250725104852.js +2 -2
  105. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250726232339.js +2 -2
  106. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250916065103.js +2 -2
  107. package/.medusa/server/src/modules/extended-variant/migrations/Migration20251119063328.js +2 -2
  108. package/.medusa/server/src/modules/extended-variant/migrations/Migration20251120045708.js +2 -2
  109. package/.medusa/server/src/modules/extended-variant/migrations/Migration20251120051832.js +2 -2
  110. package/.medusa/server/src/modules/extended-variant/migrations/Migration20251120052514.js +2 -2
  111. package/.medusa/server/src/modules/extended-variant/migrations/Migration20251202055952.js +2 -2
  112. package/.medusa/server/src/modules/extended-variant/migrations/Migration20251210112341.js +18 -0
  113. package/.medusa/server/src/modules/extended-variant/models/extended-variant.js +2 -2
  114. package/.medusa/server/src/modules/item-master/index.js +13 -0
  115. package/.medusa/server/src/modules/item-master/migrations/Migration20260212101055.js +15 -0
  116. package/.medusa/server/src/modules/item-master/models/item-master.js +20 -0
  117. package/.medusa/server/src/modules/item-master/service.js +10 -0
  118. package/.medusa/server/src/modules/item-size-master/migrations/Migration20251031111036.js +2 -2
  119. package/.medusa/server/src/modules/jewel-trans-master/index.js +13 -0
  120. package/.medusa/server/src/modules/jewel-trans-master/migrations/Migration20260226053036.js +57 -0
  121. package/.medusa/server/src/modules/jewel-trans-master/models/jewel-trans-master.js +151 -0
  122. package/.medusa/server/src/modules/jewel-trans-master/service.js +16 -0
  123. package/.medusa/server/src/modules/labour-chart-master/index.js +13 -0
  124. package/.medusa/server/src/modules/labour-chart-master/migrations/Migration20260101081502.js +15 -0
  125. package/.medusa/server/src/modules/labour-chart-master/models/labour-chart-master.js +16 -0
  126. package/.medusa/server/src/modules/labour-chart-master/service.js +10 -0
  127. package/.medusa/server/src/modules/material-purchase-master/index.js +13 -0
  128. package/.medusa/server/src/modules/material-purchase-master/migrations/Migration20260310090700.js +18 -0
  129. package/.medusa/server/src/modules/material-purchase-master/models/material-purchase-detail-line.js +24 -0
  130. package/.medusa/server/src/modules/material-purchase-master/models/material-purchase-master.js +21 -0
  131. package/.medusa/server/src/modules/material-purchase-master/service.js +12 -0
  132. package/.medusa/server/src/modules/order-master/index.js +13 -0
  133. package/.medusa/server/src/modules/order-master/migrations/Migration20260226053036.js +29 -0
  134. package/.medusa/server/src/modules/order-master/migrations/Migration20260303000001.js +30 -0
  135. package/.medusa/server/src/modules/order-master/models/order-master.js +97 -0
  136. package/.medusa/server/src/modules/order-master/service.js +12 -0
  137. package/.medusa/server/src/modules/party-master/migrations/Migration20250604104235.js +2 -2
  138. package/.medusa/server/src/modules/party-master/migrations/Migration20250604115453.js +2 -2
  139. package/.medusa/server/src/modules/party-master/migrations/Migration20250604120348.js +2 -2
  140. package/.medusa/server/src/modules/party-master/migrations/Migration20250604120701.js +2 -2
  141. package/.medusa/server/src/modules/party-master/migrations/Migration20250608220924.js +2 -2
  142. package/.medusa/server/src/modules/party-master/migrations/Migration20250612225738.js +2 -2
  143. package/.medusa/server/src/modules/party-master/migrations/Migration20250612231031.js +2 -2
  144. package/.medusa/server/src/modules/party-master/migrations/Migration20250708123734.js +2 -2
  145. package/.medusa/server/src/modules/party-master/migrations/Migration20251031061657.js +2 -2
  146. package/.medusa/server/src/modules/party-master/migrations/Migration20251104050242.js +2 -2
  147. package/.medusa/server/src/modules/payment-book-master/index.js +13 -0
  148. package/.medusa/server/src/modules/payment-book-master/migrations/Migration20251203105358.js +15 -0
  149. package/.medusa/server/src/modules/payment-book-master/models/payment-book-master.js +12 -0
  150. package/.medusa/server/src/modules/payment-book-master/service.js +10 -0
  151. package/.medusa/server/src/modules/promocode-master/migrations/Migration20250819123821.js +2 -2
  152. package/.medusa/server/src/modules/promocode-master/migrations/Migration20250918095713.js +2 -2
  153. package/.medusa/server/src/modules/promocode-master/migrations/Migration20251031061829.js +2 -2
  154. package/.medusa/server/src/modules/promocode-master/migrations/Migration20251104050332.js +2 -2
  155. package/.medusa/server/src/modules/quality-master/migrations/Migration20251031095211.js +2 -2
  156. package/.medusa/server/src/modules/quality-master/migrations/Migration20251105045114.js +2 -2
  157. package/.medusa/server/src/modules/rate-chart-master/index.js +13 -0
  158. package/.medusa/server/src/modules/rate-chart-master/migrations/Migration20260101081500.js +15 -0
  159. package/.medusa/server/src/modules/rate-chart-master/models/rate-chart-master.js +13 -0
  160. package/.medusa/server/src/modules/rate-chart-master/service.js +10 -0
  161. package/.medusa/server/src/modules/raw-master/migrations/Migration20250509190057.js +2 -2
  162. package/.medusa/server/src/modules/raw-master/migrations/Migration20250509190322.js +2 -2
  163. package/.medusa/server/src/modules/raw-master/migrations/Migration20251031061912.js +2 -2
  164. package/.medusa/server/src/modules/report-master/index.js +13 -0
  165. package/.medusa/server/src/modules/report-master/migrations/Migration20260121060955.js +15 -0
  166. package/.medusa/server/src/modules/report-master/migrations/Migration20260121112624.js +15 -0
  167. package/.medusa/server/src/modules/report-master/models/report-master.js +12 -0
  168. package/.medusa/server/src/modules/report-master/service.js +10 -0
  169. package/.medusa/server/src/modules/sale-master/index.js +13 -0
  170. package/.medusa/server/src/modules/sale-master/migrations/Migration20260205092935.js +15 -0
  171. package/.medusa/server/src/modules/sale-master/migrations/Migration20260205100000.js +16 -0
  172. package/.medusa/server/src/modules/sale-master/models/sale-master.js +27 -0
  173. package/.medusa/server/src/modules/sale-master/service.js +10 -0
  174. package/.medusa/server/src/modules/sale-return-master/index.js +13 -0
  175. package/.medusa/server/src/modules/sale-return-master/migrations/Migration20260205093034.js +15 -0
  176. package/.medusa/server/src/modules/sale-return-master/models/sale-return-master.js +16 -0
  177. package/.medusa/server/src/modules/sale-return-master/service.js +10 -0
  178. package/.medusa/server/src/modules/sale-return-policy-master/index.js +13 -0
  179. package/.medusa/server/src/modules/sale-return-policy-master/migrations/Migration20260105061449.js +21 -0
  180. package/.medusa/server/src/modules/sale-return-policy-master/migrations/Migration20260129084920.js +14 -0
  181. package/.medusa/server/src/modules/sale-return-policy-master/migrations/Migration20260129085620.js +20 -0
  182. package/.medusa/server/src/modules/sale-return-policy-master/models/sale-return-policy-master.js +37 -0
  183. package/.medusa/server/src/modules/sale-return-policy-master/service.js +12 -0
  184. package/.medusa/server/src/modules/shape-master/migrations/Migration20250509174455.js +2 -2
  185. package/.medusa/server/src/modules/shape-master/migrations/Migration20251031062019.js +2 -2
  186. package/.medusa/server/src/modules/shipping-info-master/migrations/Migration20250713113247.js +2 -2
  187. package/.medusa/server/src/modules/shipping-info-master/migrations/Migration20250713121440.js +2 -2
  188. package/.medusa/server/src/modules/shipping-info-master/migrations/Migration20251031062128.js +2 -2
  189. package/.medusa/server/src/modules/shipping-info-master/migrations/Migration20251104050501.js +2 -2
  190. package/.medusa/server/src/modules/shipping-info-master/migrations/Migration20251203083315.js +2 -2
  191. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250513115356.js +2 -2
  192. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250519180538.js +2 -2
  193. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250531010409.js +2 -2
  194. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250730025135.js +2 -2
  195. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250730025307.js +2 -2
  196. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250730032130.js +2 -2
  197. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20251031062303.js +2 -2
  198. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20251104050743.js +2 -2
  199. package/.medusa/server/src/modules/tone-master/migrations/Migration20251031104320.js +2 -2
  200. package/.medusa/server/src/modules/variant-option-sync-queue/migrations/Migration20251101082220.js +2 -2
  201. package/.medusa/server/src/modules/variant-option-sync-queue/migrations/Migration20251103123857.js +2 -2
  202. package/.medusa/server/src/subscribers/cutomer-updated.js +3 -1
  203. package/.medusa/server/src/subscribers/order-item-update.js +11 -0
  204. package/.medusa/server/src/subscribers/party-master.js +36 -35
  205. package/.medusa/server/src/subscribers/shipping-info-master.js +3 -3
  206. package/.medusa/server/src/utils/build-redis-key.js +3 -1
  207. package/.medusa/server/src/utils/state-helper.js +3 -2
  208. package/.medusa/server/src/workflows/addless-detail/index.js +11 -0
  209. package/.medusa/server/src/workflows/addless-detail/steps/create-or-update-addless-detail.js +36 -0
  210. package/.medusa/server/src/workflows/addless-detail/steps/fetch-addless-detail.js +73 -0
  211. package/.medusa/server/src/workflows/applicable-sale-return-policy/index.js +11 -0
  212. package/.medusa/server/src/workflows/applicable-sale-return-policy/steps/create-or-update-applicable-sale-return-policy.js +74 -0
  213. package/.medusa/server/src/workflows/applicable-sale-return-policy/steps/fetch-applicable-sale-return-policy.js +64 -0
  214. package/.medusa/server/src/workflows/book-list/index.js +11 -0
  215. package/.medusa/server/src/workflows/book-list/steps/create-or-update-book-list.js +55 -0
  216. package/.medusa/server/src/workflows/book-list/steps/fetch-book-list.js +64 -0
  217. package/.medusa/server/src/workflows/customer-advance-payment/index.js +18 -0
  218. package/.medusa/server/src/workflows/customer-advance-payment/steps/create-receive-voucher.js +71 -0
  219. package/.medusa/server/src/workflows/customer-advance-payment/steps/index.js +18 -0
  220. package/.medusa/server/src/workflows/customer-advance-payment/workflows/create-receive-voucher-workflow.js +11 -0
  221. package/.medusa/server/src/workflows/customer-advance-payment/workflows/index.js +18 -0
  222. package/.medusa/server/src/workflows/helpers/product-helper.js +33 -17
  223. package/.medusa/server/src/workflows/helpers/variant-helper.js +165 -162
  224. package/.medusa/server/src/workflows/hooks/product-updated.js +6 -11
  225. package/.medusa/server/src/workflows/index.js +3 -1
  226. package/.medusa/server/src/workflows/inward-master/helper/index.js +5 -1
  227. package/.medusa/server/src/workflows/inward-master/workflows/create-inward.js +6 -3
  228. package/.medusa/server/src/workflows/inward-master/workflows/update-inward.js +6 -2
  229. package/.medusa/server/src/workflows/item-master/index.js +11 -0
  230. package/.medusa/server/src/workflows/item-master/steps/create-or-update-item-master.js +50 -0
  231. package/.medusa/server/src/workflows/item-master/steps/fetch-item-master.js +29 -0
  232. package/.medusa/server/src/workflows/jewel-trans-master/index.js +18 -0
  233. package/.medusa/server/src/workflows/jewel-trans-master/steps/create-or-update-jewel-trans-master.js +370 -0
  234. package/.medusa/server/src/workflows/jewel-trans-master/steps/index.js +18 -0
  235. package/.medusa/server/src/workflows/labour-chart-master/index.js +11 -0
  236. package/.medusa/server/src/workflows/labour-chart-master/steps/create-or-update-labour-chart-master.js +38 -0
  237. package/.medusa/server/src/workflows/labour-chart-master/steps/fetch-labour-chart.js +31 -0
  238. package/.medusa/server/src/workflows/material-purchase-master/index.js +24 -0
  239. package/.medusa/server/src/workflows/material-purchase-master/steps/create-material-purchase-master.js +79 -0
  240. package/.medusa/server/src/workflows/material-purchase-master/steps/delete-material-purchase-master.js +81 -0
  241. package/.medusa/server/src/workflows/material-purchase-master/steps/fetch-material-purchase-master.js +60 -0
  242. package/.medusa/server/src/workflows/material-purchase-master/steps/update-material-purchase-master.js +100 -0
  243. package/.medusa/server/src/workflows/order-master/index.js +3 -0
  244. package/.medusa/server/src/workflows/order-master/order-master-webhook.js +24 -0
  245. package/.medusa/server/src/workflows/order-master/steps/create-or-update-order-master.js +245 -0
  246. package/.medusa/server/src/workflows/order-master/steps/delete-order-master-by-erp-ids.js +61 -0
  247. package/.medusa/server/src/workflows/order-master/steps/process-order-master-from-webhook.js +283 -0
  248. package/.medusa/server/src/workflows/orders/steps/find-nearest-pincodes-step.js +336 -0
  249. package/.medusa/server/src/workflows/orders/steps/get-today-gold-rate-step.js +77 -0
  250. package/.medusa/server/src/workflows/orders/steps/index.js +14 -1
  251. package/.medusa/server/src/workflows/orders/steps/sync-advance-payment-to-erp-step.js +185 -0
  252. package/.medusa/server/src/workflows/orders/steps/sync-buyback-to-erp-step.js +98 -0
  253. package/.medusa/server/src/workflows/orders/steps/sync-cancel-to-erp-step.js +119 -0
  254. package/.medusa/server/src/workflows/orders/steps/sync-exchange-to-erp-step.js +100 -0
  255. package/.medusa/server/src/workflows/orders/steps/sync-old-gold-to-erp-step.js +161 -0
  256. package/.medusa/server/src/workflows/orders/steps/sync-order-to-erp.js +534 -16
  257. package/.medusa/server/src/workflows/orders/steps/sync-sale-return-to-erp-step.js +147 -0
  258. package/.medusa/server/src/workflows/orders/steps/update-old-gold-sync-status-step.js +60 -0
  259. package/.medusa/server/src/workflows/orders/utils/order-helper.js +143 -36
  260. package/.medusa/server/src/workflows/orders/utils/order-request-helper.js +222 -0
  261. package/.medusa/server/src/workflows/orders/workflows/get-today-gold-rate.js +10 -0
  262. package/.medusa/server/src/workflows/orders/workflows/index.js +3 -1
  263. package/.medusa/server/src/workflows/orders/workflows/sync-advanve-payment-to-erp.js +21 -0
  264. package/.medusa/server/src/workflows/orders/workflows/sync-old-gold-to-erp.js +23 -0
  265. package/.medusa/server/src/workflows/orders/workflows/sync-order-to-erp.js +53 -4
  266. package/.medusa/server/src/workflows/party-master/steps/create-customer-erp.js +44 -33
  267. package/.medusa/server/src/workflows/party-master/steps/create-user-erp.js +96 -0
  268. package/.medusa/server/src/workflows/party-master/steps/fetch-party-master.js +2 -1
  269. package/.medusa/server/src/workflows/party-master/steps/index.js +2 -1
  270. package/.medusa/server/src/workflows/party-master/workflows/create-or-update-party-master.js +2 -2
  271. package/.medusa/server/src/workflows/party-master/workflows/create-user-erp.js +11 -0
  272. package/.medusa/server/src/workflows/party-master/workflows/index.js +2 -1
  273. package/.medusa/server/src/workflows/party-style-master/steps/update-product-options-after-deletion.js +16 -249
  274. package/.medusa/server/src/workflows/party-style-master/steps/update-product-options-after-variant-update.js +103 -22
  275. package/.medusa/server/src/workflows/party-style-master/workflows/create-or-update-party-style-master.js +16 -10
  276. package/.medusa/server/src/workflows/payment-book-master/index.js +11 -0
  277. package/.medusa/server/src/workflows/payment-book-master/steps/create-or-update-payment-book-master.js +37 -0
  278. package/.medusa/server/src/workflows/payment-book-master/steps/fetch-payment-book.js +64 -0
  279. package/.medusa/server/src/workflows/rate-chart-master/index.js +11 -0
  280. package/.medusa/server/src/workflows/rate-chart-master/steps/create-or-update-rate-chart-master.js +25 -0
  281. package/.medusa/server/src/workflows/rate-chart-master/steps/fetch-rate-chart.js +31 -0
  282. package/.medusa/server/src/workflows/report-master/index.js +11 -0
  283. package/.medusa/server/src/workflows/report-master/steps/create-or-update-report-master.js +53 -0
  284. package/.medusa/server/src/workflows/report-master/steps/fetch-report.js +71 -0
  285. package/.medusa/server/src/workflows/sale-master/index.js +24 -0
  286. package/.medusa/server/src/workflows/sale-master/steps/create-sale-master.js +72 -0
  287. package/.medusa/server/src/workflows/sale-master/steps/delete-sale-master.js +59 -0
  288. package/.medusa/server/src/workflows/sale-master/steps/update-sale-master.js +95 -0
  289. package/.medusa/server/src/workflows/sale-return-master/index.js +24 -0
  290. package/.medusa/server/src/workflows/sale-return-master/steps/create-sale-return-master.js +45 -0
  291. package/.medusa/server/src/workflows/sale-return-master/steps/delete-sale-return-master.js +36 -0
  292. package/.medusa/server/src/workflows/sale-return-master/steps/update-sale-return-master.js +53 -0
  293. package/.medusa/server/src/workflows/sale-return-policy-master/index.js +11 -0
  294. package/.medusa/server/src/workflows/sale-return-policy-master/steps/create-or-update-sale-return-policy-master.js +91 -0
  295. package/.medusa/server/src/workflows/sale-return-policy-master/steps/fetch-sale-return-policy.js +31 -0
  296. package/.medusa/server/src/workflows/update-extended-product-from-product/index.js +6 -8
  297. package/.medusa/server/src/workflows/update-extended-variant-from-variant/workflows/update-extended-variant-status-from-variant.js +9 -3
  298. package/package.json +14 -32
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.deleteMaterialPurchaseMasterStep = void 0;
4
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
5
+ const framework_1 = require("@medusajs/framework");
6
+ const material_purchase_master_1 = require("../../../modules/material-purchase-master");
7
+ exports.deleteMaterialPurchaseMasterStep = (0, workflows_sdk_1.createStep)("delete-material-purchase-master-step", async (input, { container }) => {
8
+ const service = container.resolve(material_purchase_master_1.MATERIAL_PURCHASE_MASTER_MODULE);
9
+ const transIds = input
10
+ .map((d) => d?.MaterialTransId)
11
+ .filter((id) => id != null);
12
+ if (!transIds.length) {
13
+ return new workflows_sdk_1.StepResponse(null, null);
14
+ }
15
+ const existing = await service.listMaterialPurchaseMasters({
16
+ material_trans_id: transIds,
17
+ });
18
+ if (!existing.length) {
19
+ return new workflows_sdk_1.StepResponse(null, null);
20
+ }
21
+ const prevDetails = [];
22
+ await Promise.all(existing.map(async (master) => {
23
+ const details = await service.listMaterialPurchaseDetailLines({
24
+ material_trans_id: master.material_trans_id,
25
+ });
26
+ prevDetails.push(...details.map((d) => ({ ...d })));
27
+ if (details.length > 0) {
28
+ await service.deleteMaterialPurchaseDetailLines(details.map((d) => d.id));
29
+ }
30
+ }));
31
+ const masterIds = existing.map((m) => m.id);
32
+ await service.deleteMaterialPurchaseMasters(masterIds);
33
+ framework_1.logger.info(`Deleted ${masterIds.length} MaterialPurchaseMaster records`);
34
+ return new workflows_sdk_1.StepResponse(masterIds, { prevMasters: existing, prevDetails });
35
+ }, async (compensationData, { container }) => {
36
+ if (!compensationData)
37
+ return;
38
+ const service = container.resolve(material_purchase_master_1.MATERIAL_PURCHASE_MASTER_MODULE);
39
+ // Restore deleted masters
40
+ if (compensationData.prevMasters?.length) {
41
+ await Promise.all(compensationData.prevMasters.map((m) => service.createMaterialPurchaseMasters({
42
+ id: m.id,
43
+ material_trans_id: m.material_trans_id,
44
+ material_trans_prefix: m.material_trans_prefix,
45
+ material_trans_no: m.material_trans_no,
46
+ material_trans_date: m.material_trans_date,
47
+ party_no: m.party_no,
48
+ firm_name: m.firm_name,
49
+ sales_person: m.sales_person,
50
+ branch_no: m.branch_no,
51
+ branch_name: m.branch_name,
52
+ gross_amount: m.gross_amount,
53
+ total_addless_amount: m.total_addless_amount,
54
+ amount: m.amount,
55
+ remarks: m.remarks,
56
+ })));
57
+ }
58
+ // Restore detail lines
59
+ if (compensationData.prevDetails?.length) {
60
+ await Promise.all(compensationData.prevDetails.map((d) => service.createMaterialPurchaseDetailLines({
61
+ id: d.id,
62
+ material_trans_id: d.material_trans_id,
63
+ detail_id: d.detail_id,
64
+ item_id: d.item_id,
65
+ item_name: d.item_name,
66
+ item_code: d.item_code,
67
+ raw_formula: d.raw_formula,
68
+ qly_purity: d.qly_purity,
69
+ hsn_name: d.hsn_name,
70
+ size_no: d.size_no,
71
+ size_code: d.size_code,
72
+ size_name: d.size_name,
73
+ pieces: d.pieces,
74
+ weight: d.weight,
75
+ rate: d.rate,
76
+ amount: d.amount,
77
+ description: d.description,
78
+ })));
79
+ }
80
+ });
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLW1hdGVyaWFsLXB1cmNoYXNlLW1hc3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvbWF0ZXJpYWwtcHVyY2hhc2UtbWFzdGVyL3N0ZXBzL2RlbGV0ZS1tYXRlcmlhbC1wdXJjaGFzZS1tYXN0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUVBQTZFO0FBQzdFLG1EQUE2QztBQUM3Qyx3RkFBNEY7QUFJL0UsUUFBQSxnQ0FBZ0MsR0FBRyxJQUFBLDBCQUFVLEVBQ3hELHNDQUFzQyxFQUN0QyxLQUFLLEVBQUUsS0FBZ0MsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDeEQsTUFBTSxPQUFPLEdBQWtDLFNBQVMsQ0FBQyxPQUFPLENBQzlELDBEQUErQixDQUNoQyxDQUFDO0lBRUYsTUFBTSxRQUFRLEdBQUcsS0FBSztTQUNuQixHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxlQUFlLENBQUM7U0FDOUIsTUFBTSxDQUFDLENBQUMsRUFBRSxFQUFnQixFQUFFLENBQUMsRUFBRSxJQUFJLElBQUksQ0FBQyxDQUFDO0lBRTVDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDckIsT0FBTyxJQUFJLDRCQUFZLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxNQUFNLFFBQVEsR0FBRyxNQUFNLE9BQU8sQ0FBQywyQkFBMkIsQ0FBQztRQUN6RCxpQkFBaUIsRUFBRSxRQUFRO0tBQzVCLENBQUMsQ0FBQztJQUVILElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDckIsT0FBTyxJQUFJLDRCQUFZLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxNQUFNLFdBQVcsR0FBVSxFQUFFLENBQUM7SUFDOUIsTUFBTSxPQUFP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
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fetchMaterialPurchaseMaster = void 0;
4
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
5
+ const BATCH_SIZE = 50;
6
+ const MAX_RETRIES = 3;
7
+ const RETRY_DELAY = 1000;
8
+ const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
9
+ const processBatch = async (erpService, datafor, batch, retryCount = 0) => {
10
+ try {
11
+ const results = await Promise.all(batch.map(async (transactionId) => {
12
+ try {
13
+ return await erpService.getMasterData(datafor, transactionId);
14
+ }
15
+ catch (error) {
16
+ console.error(`Error fetching MaterialPurchase for ID ${transactionId}:`, error);
17
+ return null;
18
+ }
19
+ }));
20
+ const successfulResults = results.filter((result) => result !== null);
21
+ if (results.length !== successfulResults.length && retryCount < MAX_RETRIES) {
22
+ const failedIds = batch.filter((_, index) => results[index] === null);
23
+ console.log(`Retrying ${failedIds.length} failed requests (attempt ${retryCount + 1})`);
24
+ await sleep(RETRY_DELAY);
25
+ const retryResults = await processBatch(erpService, datafor, failedIds, retryCount + 1);
26
+ return [...successfulResults, ...retryResults];
27
+ }
28
+ return successfulResults.filter(Boolean);
29
+ }
30
+ catch (error) {
31
+ console.error("Batch processing error:", error);
32
+ if (retryCount < MAX_RETRIES) {
33
+ console.log(`Retrying entire batch (attempt ${retryCount + 1})`);
34
+ await sleep(RETRY_DELAY);
35
+ return processBatch(erpService, datafor, batch, retryCount + 1);
36
+ }
37
+ throw error;
38
+ }
39
+ };
40
+ exports.fetchMaterialPurchaseMaster = (0, workflows_sdk_1.createStep)("fetch-material-purchase-master", async (input, { container }) => {
41
+ const erpService = container.resolve("erp");
42
+ const { datafor, data } = input;
43
+ const batches = [];
44
+ for (let i = 0; i < data.length; i += BATCH_SIZE) {
45
+ batches.push(data.slice(i, i + BATCH_SIZE));
46
+ }
47
+ console.log(`Processing ${data.length} MaterialPurchase items in ${batches.length} batches`);
48
+ const allResults = [];
49
+ for (let i = 0; i < batches.length; i++) {
50
+ console.log(`Processing batch ${i + 1}/${batches.length}`);
51
+ const batchResults = await processBatch(erpService, datafor, batches[i]);
52
+ allResults.push(...batchResults);
53
+ }
54
+ console.log(`Successfully fetched ${allResults.length} MaterialPurchase records`);
55
+ // ERP returns a single object per transactionId (not an array), so no flatMap needed
56
+ return new workflows_sdk_1.StepResponse(allResults.filter(Boolean));
57
+ }, async (_result, _context) => {
58
+ console.log("Compensation: fetch-material-purchase-master (no-op)");
59
+ });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2gtbWF0ZXJpYWwtcHVyY2hhc2UtbWFzdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9tYXRlcmlhbC1wdXJjaGFzZS1tYXN0ZXIvc3RlcHMvZmV0Y2gtbWF0ZXJpYWwtcHVyY2hhc2UtbWFzdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUk3RSxNQUFNLFVBQVUsR0FBRyxFQUFFLENBQUM7QUFDdEIsTUFBTSxXQUFXLEdBQUcsQ0FBQyxDQUFDO0FBQ3RCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQztBQUV6QixNQUFNLEtBQUssR0FBRyxDQUFDLEVBQVUsRUFBRSxFQUFFLENBQUMsSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUVoRixNQUFNLFlBQVksR0FBRyxLQUFLLEVBQ3hCLFVBQTRCLEVBQzVCLE9BQWUsRUFDZixLQUFlLEVBQ2YsVUFBVSxHQUFHLENBQUMsRUFDRSxFQUFFO0lBQ2xCLElBQUksQ0FBQztRQUNILE1BQU0sT0FBTyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDL0IsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsYUFBYSxFQUFFLEVBQUU7WUFDaEMsSUFBSSxDQUFDO2dCQUNILE9BQU8sTUFBTSxVQUFVLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxhQUFhLENBQUMsQ0FBQztZQUNoRSxDQUFDO1lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztnQkFDZixPQUFPLENBQUMsS0FBSyxDQUFDLDBDQUEwQyxhQUFhLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDakYsT0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUVGLE1BQU0saUJBQWlCLEdBQUcsT0FBTyxDQUFD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
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateMaterialPurchaseMasterStep = void 0;
4
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
5
+ const framework_1 = require("@medusajs/framework");
6
+ const material_purchase_master_1 = require("../../../modules/material-purchase-master");
7
+ exports.updateMaterialPurchaseMasterStep = (0, workflows_sdk_1.createStep)("update-material-purchase-master-step", async (input, { container }) => {
8
+ const service = container.resolve(material_purchase_master_1.MATERIAL_PURCHASE_MASTER_MODULE);
9
+ const prevMasters = [];
10
+ const prevDetails = [];
11
+ await Promise.all(input.map(async (data) => {
12
+ const transId = data?.MaterialTransId;
13
+ if (transId == null)
14
+ return;
15
+ const existing = await service.listMaterialPurchaseMasters({
16
+ material_trans_id: transId,
17
+ });
18
+ if (!existing?.length) {
19
+ framework_1.logger.warn(`MaterialPurchase update skipped: MaterialTransId ${transId} not found`);
20
+ return;
21
+ }
22
+ const master = existing[0];
23
+ prevMasters.push({ ...master });
24
+ // Snapshot old detail lines for compensation
25
+ const oldDetails = await service.listMaterialPurchaseDetailLines({
26
+ material_trans_id: transId,
27
+ });
28
+ prevDetails.push(...oldDetails.map((d) => ({ ...d })));
29
+ // Update header
30
+ await service.updateMaterialPurchaseMasters([
31
+ {
32
+ id: master.id,
33
+ material_trans_prefix: data?.MaterialTransPrefix ?? master.material_trans_prefix,
34
+ material_trans_no: data?.MaterialTransNo ?? master.material_trans_no,
35
+ material_trans_date: data?.MaterialTransDate
36
+ ? new Date(data.MaterialTransDate)
37
+ : master.material_trans_date,
38
+ party_no: data?.PartyNo ?? master.party_no,
39
+ firm_name: data?.FirmName ?? master.firm_name,
40
+ sales_person: data?.SalesPerson ?? master.sales_person,
41
+ branch_no: data?.BranchNo ?? master.branch_no,
42
+ branch_name: data?.BranchName ?? master.branch_name,
43
+ gross_amount: data?.GrossAmount ?? master.gross_amount,
44
+ total_addless_amount: data?.TotalAddlessAmount ?? master.total_addless_amount,
45
+ amount: data?.Amount ?? master.amount,
46
+ remarks: data?.Remarks ?? master.remarks,
47
+ },
48
+ ]);
49
+ // Replace detail lines: delete old, create new
50
+ if (oldDetails.length > 0) {
51
+ await service.deleteMaterialPurchaseDetailLines(oldDetails.map((d) => d.id));
52
+ }
53
+ const details = data?.MaterialTransDetail ?? [];
54
+ await Promise.all(details.map((detail) => service.createMaterialPurchaseDetailLines({
55
+ material_trans_id: transId,
56
+ detail_id: detail?.Id ?? 0,
57
+ item_id: detail?.ItemId ?? null,
58
+ item_name: detail?.ItemName ?? null,
59
+ item_code: detail?.ItemCode ?? null,
60
+ raw_formula: detail?.RawFormula ?? null,
61
+ qly_purity: detail?.QlyPurity ?? null,
62
+ hsn_name: detail?.HSNName ?? null,
63
+ size_no: detail?.SizeNo ?? null,
64
+ size_code: detail?.SizeCode ?? null,
65
+ size_name: detail?.SizeName ?? null,
66
+ pieces: detail?.Pieces ?? null,
67
+ weight: detail?.Weight ?? null,
68
+ rate: detail?.Rate ?? null,
69
+ amount: detail?.Amount ?? null,
70
+ description: detail?.Description ?? null,
71
+ })));
72
+ framework_1.logger.info(`Updated MaterialPurchaseMaster for MaterialTransId ${transId}`);
73
+ }));
74
+ return new workflows_sdk_1.StepResponse(null, { prevMasters, prevDetails });
75
+ }, async (compensationData, { container }) => {
76
+ if (!compensationData)
77
+ return;
78
+ const service = container.resolve(material_purchase_master_1.MATERIAL_PURCHASE_MASTER_MODULE);
79
+ // Restore previous header values
80
+ if (compensationData.prevMasters?.length) {
81
+ await Promise.all(compensationData.prevMasters.map((m) => service.updateMaterialPurchaseMasters([
82
+ {
83
+ id: m.id,
84
+ material_trans_prefix: m.material_trans_prefix,
85
+ material_trans_no: m.material_trans_no,
86
+ material_trans_date: m.material_trans_date,
87
+ party_no: m.party_no,
88
+ firm_name: m.firm_name,
89
+ sales_person: m.sales_person,
90
+ branch_no: m.branch_no,
91
+ branch_name: m.branch_name,
92
+ gross_amount: m.gross_amount,
93
+ total_addless_amount: m.total_addless_amount,
94
+ amount: m.amount,
95
+ remarks: m.remarks,
96
+ },
97
+ ])));
98
+ }
99
+ });
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLW1hdGVyaWFsLXB1cmNoYXNlLW1hc3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvbWF0ZXJpYWwtcHVyY2hhc2UtbWFzdGVyL3N0ZXBzL3VwZGF0ZS1tYXRlcmlhbC1wdXJjaGFzZS1tYXN0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUVBQTZFO0FBQzdFLG1EQUE2QztBQUM3Qyx3RkFBNEY7QUFJL0UsUUFBQSxnQ0FBZ0MsR0FBRyxJQUFBLDBCQUFVLEVBQ3hELHNDQUFzQyxFQUN0QyxLQUFLLEVBQUUsS0FBZ0MsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDeEQsTUFBTSxPQUFPLEdBQWtDLFNBQVMsQ0FBQyxPQUFPLENBQzlELDBEQUErQixDQUNoQyxDQUFDO0lBRUYsTUFBTSxXQUFXLEdBQVUsRUFBRSxDQUFDO0lBQzlCLE1BQU0sV0FBVyxHQUFVLEVBQUUsQ0FBQztJQUU5QixNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQ2YsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7UUFDdkIsTUFBTSxPQUFPLEdBQUcsSUFBSSxFQUFFLGVBQWUsQ0FBQztRQUN0QyxJQUFJLE9BQU8sSUFBSSxJQUFJO1lBQUUsT0FBTztRQUU1QixNQUFNLFFBQVEsR0FBRyxNQUFNLE9BQU8sQ0FBQywyQkFBMkIsQ0FBQztZQUN6RCxpQkFBaUIsRUFBRSxPQUFPO1NBQzNCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUM7WUFDdEIsa0JBQU0sQ0FBQyxJQUFJLENBQUMsb0RBQW9ELE9BQU8sWUFBWSxDQUFDLENBQUM7WUFDckYsT0FBTztRQUNULENBQUM7UUFFRCxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDM0IsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFF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
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL29yZGVyLW1hc3Rlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.orderMasterWebhookWorkflow = void 0;
4
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
5
+ const fetch_category_master_1 = require("../category-master/steps/fetch-category-master");
6
+ const process_order_master_from_webhook_1 = require("./steps/process-order-master-from-webhook");
7
+ const delete_order_master_by_erp_ids_1 = require("./steps/delete-order-master-by-erp-ids");
8
+ /**
9
+ * Webhook-driven order master workflow.
10
+ * - add/update: fetch order data from ERP by ids, then create or update order_master (and details, payments).
11
+ * - delete: delete order_master by ERP order ids (input.data).
12
+ */
13
+ exports.orderMasterWebhookWorkflow = (0, workflows_sdk_1.createWorkflow)("order-master-webhook", (input) => {
14
+ const orderData = (0, fetch_category_master_1.fetchCategoryData)(input);
15
+ (0, workflows_sdk_1.when)("order-webhook-add-or-update", input, (i) => i.operation === "add" || i.operation === "update").then(() => {
16
+ const result = (0, process_order_master_from_webhook_1.processOrderMasterFromWebhookStep)(orderData);
17
+ return new workflows_sdk_1.WorkflowResponse(result);
18
+ });
19
+ (0, workflows_sdk_1.when)("order-webhook-delete", input, (i) => i.operation === "delete").then(() => {
20
+ const result = (0, delete_order_master_by_erp_ids_1.deleteOrderMasterByErpIdsStep)(input);
21
+ return new workflows_sdk_1.WorkflowResponse(result);
22
+ });
23
+ });
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXItbWFzdGVyLXdlYmhvb2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL29yZGVyLW1hc3Rlci9vcmRlci1tYXN0ZXItd2ViaG9vay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxRUFJMkM7QUFFM0MsMEZBQW1GO0FBQ25GLGlHQUE4RjtBQUM5RiwyRkFBdUY7QUFHdkY7Ozs7R0FJRztBQUNVLFFBQUEsMEJBQTBCLEdBQUcsSUFBQSw4QkFBYyxFQUN0RCxzQkFBc0IsRUFDdEIsQ0FBQyxLQUFrQixFQUFFLEVBQUU7SUFDckIsTUFBTSxTQUFTLEdBQUcsSUFBQSx5Q0FBaUIsRUFBQyxLQUFLLENBQUMsQ0FBQztJQUUzQyxJQUFBLG9CQUFJLEVBQ0YsNkJBQTZCLEVBQzdCLEtBQUssRUFDTCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsS0FBSyxLQUFLLElBQUksQ0FBQyxDQUFDLFNBQVMsS0FBSyxRQUFRLENBQ3pELENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtRQUNWLE1BQU0sTUFBTSxHQUFHLElBQUEscUVBQWlDLEVBQUMsU0FBUyxDQUFDLENBQUM7UUFDNUQsT0FBTyxJQUFJLGdDQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3RDLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBQSxvQkFBSSxFQUFDLHNCQUFzQixFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsS0FBSyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQ3ZFLEdBQUcsRUFBRTtRQUNILE1BQU0sTUFBTSxHQUFHLElBQUEsOERBQTZCLEVBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEQsT0FBTyxJQUFJLGdDQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3RDLENBQUMsQ0FDRixDQUFDO0FBQ0osQ0FBQyxDQUNGLENBQUMifQ==
@@ -0,0 +1,245 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createOrderMaster = void 0;
4
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
5
+ const order_master_1 = require("../../../modules/order-master");
6
+ const utils_1 = require("@medusajs/framework/utils");
7
+ const framework_1 = require("@medusajs/framework");
8
+ exports.createOrderMaster = (0, workflows_sdk_1.createStep)("create-order-master-step", async (input, { container }) => {
9
+ try {
10
+ const orderMasterService = container.resolve(order_master_1.ORDER_MASTER_MODULE);
11
+ const erpService = container.resolve("erp");
12
+ const orderData = await erpService.getMasterData("order", input.order_id);
13
+ if (!orderData) {
14
+ framework_1.logger.info(`No order data received for OrderID ${input.order_id}`);
15
+ return new workflows_sdk_1.StepResponse();
16
+ }
17
+ const masters = await Promise.all([orderData].map(async (data) => {
18
+ const existing = await orderMasterService.listOrderMasters({
19
+ erp_order_id: String(input.order_id),
20
+ });
21
+ let master;
22
+ if (existing?.length > 0) {
23
+ // Update existing order master
24
+ framework_1.logger.info(`Updating Order ${input.order_id} - already exists.`);
25
+ master = existing[0];
26
+ await orderMasterService.updateOrderMasters({
27
+ id: master.id,
28
+ erp_order_id: data.OrderId,
29
+ branch_no: data.BranchNo,
30
+ branch_name: data.BranchName,
31
+ order_prefix: data.OrderPrefix,
32
+ order_no: data.OrderNo,
33
+ order_date: data.OrderDate,
34
+ customer_id: data.CustomerId,
35
+ customer_name: data.Customer,
36
+ po_no: data.PoNo,
37
+ po_date: data.PoDate,
38
+ sales_person: data.SalesPerson,
39
+ work_order_no: data.WorkOrderNo,
40
+ remarks: data.Remarks,
41
+ shipping_id: data.ShippingId,
42
+ promocode_series_id: data.PromocodeSeriesId,
43
+ promocode: data.Promocode,
44
+ promocode_percentage: data.PromocodePercentage,
45
+ promocode_amount: data.PromocodeAmount,
46
+ });
47
+ // Handle order details - update existing or create new
48
+ if (data?.OrderDetail?.length) {
49
+ for (const d of data.OrderDetail) {
50
+ const existingDetail = await orderMasterService.listOrderDetailMasters({
51
+ erp_order_id: d.OrderId,
52
+ order_item_id: d.OrderItemId,
53
+ order_master: master.id,
54
+ });
55
+ const detailData = {
56
+ erp_order_id: d.OrderId,
57
+ order_item_id: d.OrderItemId,
58
+ order_master: master.id,
59
+ sr_no: d.SrNo,
60
+ style_id: d.StyleId,
61
+ style_code: d.StyleCode,
62
+ party_style_id: d.PartyStyleId,
63
+ party_style_code: d.PartyStyleCode ?? null,
64
+ jewel_id: d.JewelId,
65
+ jewel_code: d.JewelCode,
66
+ item_size_id: d.ItemSizeId,
67
+ item_size: d.ItemSize,
68
+ item_size_name: d.ItemSizeName,
69
+ order_qty: d.OrderQty,
70
+ order_item_pcs: d.OrderItemPcs,
71
+ metal_item_id: d.MetalItemId,
72
+ metal: d.Metal,
73
+ metal_name: d.MetalName,
74
+ metal_tone_no: d.MetalToneNo,
75
+ tone: d.Tone,
76
+ tone_name: d.ToneName,
77
+ priority_id: d.PriorityId,
78
+ priority: d.Priority,
79
+ priority_name: d.PriorityName,
80
+ stock_type_no: d.StockTypeNo,
81
+ stock_type: d.StockType,
82
+ stock_type_code: d.StockTypeCode,
83
+ make_type_no: d.MakeTypeNo,
84
+ make_type: d.MakeType,
85
+ make_type_code: d.MakeTypeCode,
86
+ expected_delivery_date: d.Expecteddeliverydate,
87
+ mrp: d.MRP,
88
+ };
89
+ if (existingDetail?.length > 0) {
90
+ await orderMasterService.updateOrderDetailMasters({
91
+ id: existingDetail[0].id,
92
+ ...detailData,
93
+ });
94
+ }
95
+ else {
96
+ await orderMasterService.createOrderDetailMasters(detailData);
97
+ }
98
+ }
99
+ }
100
+ }
101
+ else {
102
+ // Create new order master
103
+ framework_1.logger.info(`Creating new Order ${input.order_id}.`);
104
+ master = await orderMasterService.createOrderMasters({
105
+ erp_order_id: data.OrderId,
106
+ branch_no: data.BranchNo,
107
+ branch_name: data.BranchName,
108
+ order_prefix: data.OrderPrefix,
109
+ order_no: data.OrderNo,
110
+ order_date: data.OrderDate,
111
+ customer_id: data.CustomerId,
112
+ customer_name: data.Customer,
113
+ po_no: data.PoNo,
114
+ po_date: data.PoDate,
115
+ sales_person: data.SalesPerson,
116
+ work_order_no: data.WorkOrderNo,
117
+ remarks: data.Remarks,
118
+ shipping_id: data.ShippingId,
119
+ promocode_series_id: data.PromocodeSeriesId,
120
+ promocode: data.Promocode,
121
+ promocode_percentage: data.PromocodePercentage,
122
+ promocode_amount: data.PromocodeAmount,
123
+ });
124
+ // Create order details
125
+ if (data?.OrderDetail?.length) {
126
+ await orderMasterService.createOrderDetailMasters(data.OrderDetail.map((d) => ({
127
+ erp_order_id: d.OrderId,
128
+ order_item_id: d.OrderItemId,
129
+ order_master: master.id,
130
+ sr_no: d.SrNo,
131
+ style_id: d.StyleId,
132
+ style_code: d.StyleCode,
133
+ party_style_id: d.PartyStyleId,
134
+ party_style_code: d.PartyStyleCode ?? null,
135
+ jewel_id: d.JewelId,
136
+ jewel_code: d.JewelCode,
137
+ item_size_id: d.ItemSizeId,
138
+ item_size: d.ItemSize,
139
+ item_size_name: d.ItemSizeName,
140
+ order_qty: d.OrderQty,
141
+ order_item_pcs: d.OrderItemPcs,
142
+ metal_item_id: d.MetalItemId,
143
+ metal: d.Metal,
144
+ metal_name: d.MetalName,
145
+ metal_tone_no: d.MetalToneNo,
146
+ tone: d.Tone,
147
+ tone_name: d.ToneName,
148
+ priority_id: d.PriorityId,
149
+ priority: d.Priority,
150
+ priority_name: d.PriorityName,
151
+ stock_type_no: d.StockTypeNo,
152
+ stock_type: d.StockType,
153
+ stock_type_code: d.StockTypeCode,
154
+ make_type_no: d.MakeTypeNo,
155
+ make_type: d.MakeType,
156
+ make_type_code: d.MakeTypeCode,
157
+ expected_delivery_date: d.Expecteddeliverydate,
158
+ mrp: d.MRP,
159
+ })));
160
+ }
161
+ }
162
+ // Handle order payments - check if exists, update or create
163
+ if (data?.PaymentOption?.length) {
164
+ framework_1.logger.info(`Processing ${data.PaymentOption.length} payment(s) for Order ${input.order_id}`);
165
+ for (const p of data.PaymentOption) {
166
+ // Check if payment exists - try multiple matching strategies
167
+ let existingPayment = await orderMasterService.listOrderPaymentOptionMasters({
168
+ erp_order_id: p.OrderId,
169
+ voucher_entry_id: p.VoucherEntryId,
170
+ trans_no: p.TransNo,
171
+ order_master: master.id,
172
+ });
173
+ // If not found and trans_no exists, try without trans_no as fallback
174
+ if (existingPayment?.length === 0 && p.TransNo) {
175
+ existingPayment = await orderMasterService.listOrderPaymentOptionMasters({
176
+ erp_order_id: p.OrderId,
177
+ voucher_entry_id: p.VoucherEntryId,
178
+ order_master: master.id,
179
+ });
180
+ }
181
+ const paymentData = {
182
+ erp_order_id: p.OrderId,
183
+ book_name: p.BookName,
184
+ order_master: master.id,
185
+ voucher_entry_id: p.VoucherEntryId,
186
+ trans_prefix: p.TransPrefix,
187
+ trans_no: p.TransNo,
188
+ transaction_date: p.TransactionDate,
189
+ doc_no: p.DocNo,
190
+ remarks: p.Remarks,
191
+ amount: p.Amount,
192
+ };
193
+ if (existingPayment?.length > 0) {
194
+ // Payment exists, update it
195
+ framework_1.logger.info(`Updating payment for Order ${input.order_id} - VoucherEntryId: ${p.VoucherEntryId}, TransNo: ${p.TransNo || 'N/A'}`);
196
+ await orderMasterService.updateOrderPaymentOptionMasters({
197
+ id: existingPayment[0].id,
198
+ ...paymentData,
199
+ });
200
+ }
201
+ else {
202
+ // Payment doesn't exist, create it
203
+ framework_1.logger.info(`Creating new payment for Order ${input.order_id} - VoucherEntryId: ${p.VoucherEntryId}, TransNo: ${p.TransNo || 'N/A'}`);
204
+ await orderMasterService.createOrderPaymentOptionMasters(paymentData);
205
+ }
206
+ }
207
+ }
208
+ return master;
209
+ }));
210
+ const createdMasters = masters.filter(Boolean);
211
+ if (createdMasters.length === 0) {
212
+ framework_1.logger.info(`No order master was processed`);
213
+ return new workflows_sdk_1.StepResponse();
214
+ }
215
+ const master = createdMasters[0];
216
+ // Create or update link between order_master and order
217
+ const link = container.resolve("link");
218
+ try {
219
+ await link.create({
220
+ [order_master_1.ORDER_MASTER_MODULE]: { order_master_id: master?.id },
221
+ [utils_1.Modules.ORDER]: { order_id: input.id },
222
+ });
223
+ framework_1.logger.info(`Link created between order_master ${master.id} and order ${input.id}`);
224
+ }
225
+ catch (linkError) {
226
+ // If link already exists, that's okay - continue
227
+ if (linkError?.message?.includes("Cannot create multiple links") ||
228
+ linkError?.message?.includes("already exists") ||
229
+ linkError?.code === "23505" ||
230
+ linkError?.name === "UniqueConstraintViolationError") {
231
+ framework_1.logger.info(`Link already exists between order_master ${master.id} and order ${input.id}`);
232
+ }
233
+ else {
234
+ // Re-throw if it's a different error
235
+ throw linkError;
236
+ }
237
+ }
238
+ return new workflows_sdk_1.StepResponse(master);
239
+ }
240
+ catch (error) {
241
+ framework_1.logger.error(`[create-order-master-step] Failed to create/update order master for ERP order ${input.order_id}: ${error?.message}`);
242
+ return new workflows_sdk_1.StepResponse(null);
243
+ }
244
+ });
245
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW9yLXVwZGF0ZS1vcmRlci1tYXN0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL29yZGVyLW1hc3Rlci9zdGVwcy9jcmVhdGUtb3ItdXBkYXRlLW9yZGVyLW1hc3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxRUFBNkU7QUFFN0UsZ0VBQW9FO0FBQ3BFLHFEQUFvRDtBQUNwRCxtREFBNkM7QUFRaEMsUUFBQSxpQkFBaUIsR0FBRyxJQUFBLDBCQUFVLEVBQ3pDLDBCQUEwQixFQUMxQixLQUFLLEVBQUUsS0FBaUMsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDekQsSUFBSSxDQUFDO1FBRUwsTUFBTSxrQkFBa0IsR0FBdUIsU0FBUyxDQUFDLE9BQU8sQ0FDOUQsa0NBQW1CLENBQ3BCLENBQUM7UUFDRixNQUFNLFVBQVUsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBcUIsQ0FBQztRQUNoRSxNQUFNLFNBQVMsR0FBTyxNQUFNLFVBQVUsQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUc5RSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDZixrQkFBTSxDQUFDLElBQUksQ0FBQyxzQ0FBc0MsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7WUFDcEUsT0FBTyxJQUFJLDRCQUFZLEVBQUUsQ0FBQztRQUM1QixDQUFDO1FBQ0QsTUFBTSxPQUFPLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUMvQixDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7WUFDN0IsTUFBTSxRQUFRLEdBQUcsTUFBTSxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDekQsWUFBWSxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO2FBQ3JDLENBQUMsQ0FBQztZQUVILElBQUksTUFBTSxDQUFDO1lBRVgsSUFBSSxRQUFRLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUN6QiwrQkFBK0I7Z0JBQy9CLGtCQUFNLENBQUMsSUFBSSxDQUFDLGtCQUFrQixLQUFLLENBQUMsUUFBUSxvQkFBb0IsQ0FBQyxDQUFDO2dCQUNsRSxNQUFNLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUVyQixNQUFNLGtCQUFrQixDQUFDLGtCQUFrQixDQUFDO29CQUMxQyxFQUFFLEVBQUUsTUFBTSxDQUFDLEVBQUU7b0JBQ2IsWUFBWSxFQUFFLElBQUksQ0FBQyxPQUFPO29CQUMxQixTQUFTLEVBQUUsSUFBSSxDQUFDLFFBQVE7b0JBQ3hCLFdBQVcsRUFBRSxJQUFJLENBQUMsVUFBVTtvQkFDNUIsWUFBWSxFQUFFLElBQUksQ0FBQyxXQUFXO29CQUM5QixRQUFRLEVBQUUsSUFBSSxDQUFDLE9BQU87b0JBQ3RCLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUztvQkFDMUIsV0FBVyxFQUFFLElBQUksQ0FBQyxVQUFVO29CQUM1QixhQUFhLEVBQUUsSUFBSSxDQUFDLFFBQVE7b0JBQzVCLEtBQUssRUFBRSxJQUFJLENBQUMsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNO29CQUNwQixZQUFZLEVBQUUsSUFBSSxDQUFDLFdBQVc7b0JBQzlCLGFBQWEsRUFBRSxJQUFJLENBQUMsV0FBVztvQkFDL0IsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO29CQUNyQixXQUFXLEVBQUUsSUFBSSxDQUFDLFVBQVU7b0JBQzVCLG1CQUFtQixFQUFFLElBQUksQ0FBQyxpQkFBaUI7b0JBQzNDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztvQkFDekIsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLG1CQUFtQjtvQkFDOUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLGVBQWU7aUJBQ3ZDLENBQUMsQ0FBQztnQkFFSCx1REFBdUQ7Z0JBQ3ZELElBQUksSUFBSSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsQ0FBQztvQkFDOUIsS0FBSyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7d0JBQ2pDLE1BQU0sY0FBYyxHQUFHLE1BQU0sa0JBQWtCLENBQUMsc0JBQXNCLENBQUM7NEJBQ3JFLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTzs0QkFDdkIsYUFBYSxFQUFFLENBQUMsQ0FBQyxXQUFXOzRCQUM1QixZQUFZLEVBQUUsTUFBTSxDQUFDLEVBQUU7eUJBQ3hCLENBQUMsQ0FBQzt3QkFFSCxNQUFNLFVBQVUsR0FBRzs0QkFDakIsWUFBWSxFQUFFLENBQUMsQ0FBQyxPQUFPOzRCQUN2QixhQUFhLEVBQUUsQ0FBQyxDQUFDLFdBQVc7NEJBQzVCLFlBQVksRUFBRSxNQUFNLENBQUMsRUFBRTs0QkFDdkIsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJOzRCQUNiLFFBQVEsRUFBRSxDQUFDLENBQUMsT0FBTzs0QkFDbkIsVUFBVSxFQUFFLENBQUMsQ0FBQyxTQUFTOzRCQUN2QixjQUFjLEVBQUUsQ0FBQyxDQUFDLFlBQVk7NEJBQzlCLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxjQUFjLElBQUksSUFBSTs0QkFDMUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxPQUFPOzRCQUNuQixVQUFVLEVBQUUsQ0FBQyxDQUFDLFNBQVM7NEJBQ3ZCLFlBQVksRUFBRSxDQUFDLENBQUMsVUFBVTs0QkFDMUIsU0FBUyxFQUFFLENBQUMsQ0FBQyxRQUFROzRCQUNyQixjQUFjLEVBQUUsQ0FBQyxDQUFDLFlBQVk7NEJBQzlCLFNBQVMsRUFBRSxDQUFDLENBQUMsUUFBUTs0QkFDckIsY0FBYyxFQUFFLENBQUMsQ0FBQyxZQUFZOzRCQUM5QixhQUFhLEVBQUUsQ0FBQyxDQUFDLFdBQVc7NEJBQzVCLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSzs0QkFDZCxVQUFVLEVBQUUsQ0FBQyxDQUFDLFNBQVM7NEJBQ3ZCLGFBQWEsRUFBRSxDQUFDLENBQUMsV0FBVzs0QkFDNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJOzRCQUNaLFNBQVMsRUFBRSxDQUFDLENBQUMsUUFBUTs0QkFDckIsV0FBVyxFQUFFLENBQUMsQ0FBQyxVQUFVOzRCQUN6QixRQUFRLEVBQUUsQ0FBQyxDQUFDLFFBQVE7NEJBQ3BCLGFBQWEsRUFBRSxDQUFDLENBQUMsWUFBWTs0QkFDN0IsYUFBYSxFQUFFLENBQUMsQ0FBQyxXQUFXOzRCQUM1QixVQUFVLEVBQUUsQ0FBQyxDQUFDLFNBQVM7NEJBQ3ZCLGVBQWUsRUFBRSxDQUFDLENBQUMsYUFBYTs0QkFDaEMsWUFBWSxFQUFFLENBQUMsQ0FBQyxVQUFVOzRCQUMxQixTQUFTLEVBQUUsQ0FBQyxDQUFDLFFBQVE7NEJBQ3JCLGNBQWMsRUFBRSxDQUFDLENBQUMsWUFBWTs0QkFDOUIsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDLG9CQUFvQjs0QkFDOUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxHQUFHO3lCQUNYLENBQUM7d0JBRUYsSUFBSSxjQUFjLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDOzRCQUMvQixNQUFNLGtCQUFrQixDQUFDLHdCQUF3QixDQUFDO2dDQUNoRCxFQUFFLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0NBQ3hCLEdBQUcsVUFBVTs2QkFDZCxDQUFDLENBQUM7d0JBQ0wsQ0FBQzs2QkFBTSxDQUFDOzRCQUNOLE1BQU0sa0JBQWtCLENBQUMsd0JBQXdCLENBQUMsVUFBVSxDQUFDLENBQUM7d0JBQ2hFLENBQUM7b0JBQ0gsQ0FBQztnQkFDSCxDQUFDO1lBQ0gsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLDBCQUEwQjtnQkFDMUIsa0JBQU0sQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEtBQUssQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO2dCQUNyRCxNQUFNLEdBQUcsTUFBTSxrQkFBa0IsQ0FBQyxrQkFBa0IsQ0FBQztvQkFDbkQsWUFBWSxFQUFFLElBQUksQ0FBQyxPQUFPO29CQUMxQixTQUFTLEVBQUUsSUFBSSxDQUFDLFFBQVE7b0JBQ3hCLFdBQVcsRUFBRSxJQUFJLENBQUMsVUFBVTtvQkFDNUIsWUFBWSxFQUFFLElBQUksQ0FBQyxXQUFXO29CQUM5QixRQUFRLEVBQUUsSUFBSSxDQUFDLE9BQU87b0JBQ3RCLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUztvQkFDMUIsV0FBVyxFQUFFLElBQUksQ0FBQyxVQUFVO29CQUM1QixhQUFhLEVBQUUsSUFBSSxDQUFDLFFBQVE7b0JBQzVCLEtBQUssRUFBRSxJQUFJLENBQUMsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNO29CQUNwQixZQUFZLEVBQUUsSUFBSSxDQUFDLFdBQVc7b0JBQzlCLGFBQWEsRUFBRSxJQUFJLENBQUMsV0FBVztvQkFDL0IsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO29CQUNyQixXQUFXLEVBQUUsSUFBSSxDQUFDLFVBQVU7b0JBQzVCLG1CQUFtQixFQUFFLElBQUksQ0FBQyxpQkFBaUI7b0JBQzNDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztvQkFDekIsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLG1CQUFtQjtvQkFDOUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLGVBQWU7aUJBQ3ZDLENBQUMsQ0FBQztnQkFFSCx1QkFBdUI7Z0JBQ3ZCLElBQUksSUFBSSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsQ0FBQztvQkFDOUIsTUFBTSxrQkFBa0IsQ0FBQyx3QkFBd0IsQ0FDL0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7d0JBQzNCLFlBQVksRUFBRSxDQUFDLENBQUMsT0FBTzt3QkFDdkIsYUFBYSxFQUFFLENBQUMsQ0FBQyxXQUFXO3dCQUM1QixZQUFZLEVBQUUsTUFBTSxDQUFDLEVBQUU7d0JBQ3ZCLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSTt3QkFDYixRQUFRLEVBQUUsQ0FBQyxDQUFDLE9BQU87d0JBQ25CLFVBQVUsRUFBRSxDQUFDLENBQUMsU0FBUzt3QkFDdkIsY0FBYyxFQUFFLENBQUMsQ0FBQyxZQUFZO3dCQUM5QixnQkFBZ0IsRUFBRSxDQUFDLENBQUMsY0FBYyxJQUFJLElBQUk7d0JBQzFDLFFBQVEsRUFBRSxDQUFDLENBQUMsT0FBTzt3QkFDbkIsVUFBVSxFQUFFLENBQUMsQ0FBQyxTQUFTO3dCQUN2QixZQUFZLEVBQUUsQ0FBQyxDQUFDLFVBQVU7d0JBQzFCLFNBQVMsRUFBRSxDQUFDLENBQUMsUUFBUTt3QkFDckIsY0FBYyxFQUFFLENBQUMsQ0FBQyxZQUFZO3dCQUM5QixTQUFTLEVBQUUsQ0FBQyxDQUFDLFFBQVE7d0JBQ3JCLGNBQWMsRUFBRSxDQUFDLENBQUMsWUFBWTt3QkFDOUIsYUFBYSxFQUFFLENBQUMsQ0FBQyxXQUFXO3dCQUM1QixLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUs7d0JBQ2QsVUFBVSxFQUFFLENBQUMsQ0FBQyxTQUFTO3dCQUN2QixhQUFhLEVBQUUsQ0FBQyxDQUFDLFdBQVc7d0JBQzVCLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSTt3QkFDWixTQUFTLEVBQUUsQ0FBQyxDQUFDLFFBQVE7d0JBQ3JCLFdBQVcsRUFBRSxDQUFDLENBQUMsVUFBVTt3QkFDekIsUUFBUSxFQUFFLENBQUMsQ0FBQyxRQUFRO3dCQUNwQixhQUFhLEVBQUUsQ0FBQyxDQUFDLFlBQVk7d0JBQzdCLGFBQWEsRUFBRSxDQUFDLENBQUMsV0FBVzt3QkFDNUIsVUFBVSxFQUFFLENBQUMsQ0FBQyxTQUFTO3dCQUN2QixlQUFlLEVBQUUsQ0FBQyxDQUFDLGFBQWE7d0JBQ2hDLFlBQVksRUFBRSxDQUFDLENBQUMsVUFBVTt3QkFDMUIsU0FBUyxFQUFFLENBQUMsQ0FBQyxRQUFRO3dCQUNyQixjQUFjLEVBQUUsQ0FBQyxDQUFDLFlBQVk7d0JBQzlCLHNCQUFzQixFQUFFLENBQUMsQ0FBQyxvQkFBb0I7d0JBQzlDLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRztxQkFDWCxDQUFDLENBQUMsQ0FDSixDQUFDO2dCQUNKLENBQUM7WUFDSCxDQUFDO1lBRUQsNERBQTREO1lBQzVELElBQUksSUFBSSxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsQ0FBQztnQkFDaEMsa0JBQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0seUJBQXlCLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO2dCQUU5RixLQUFLLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztvQkFDbkMsNkRBQTZEO29CQUM3RCxJQUFJLGVBQWUsR0FBRyxNQUFNLGtCQUFrQixDQUFDLDZCQUE2QixDQUFDO3dCQUMzRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU87d0JBQ3ZCLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxjQUFjO3dCQUNsQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLE9BQU87d0JBQ25CLFlBQVksRUFBRSxNQUFNLENBQUMsRUFBRTtxQkFDeEIsQ0FBQyxDQUFDO29CQUVILHFFQUFxRTtvQkFDckUsSUFBSSxlQUFlLEVBQUUsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7d0JBQy9DLGVBQWUsR0FBRyxNQUFNLGtCQUFrQixDQUFDLDZCQUE2QixDQUFDOzRCQUN2RSxZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU87NEJBQ3ZCLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxjQUFjOzRCQUNsQyxZQUFZLEVBQUUsTUFBTSxDQUFDLEVBQUU7eUJBQ3hCLENBQUMsQ0FBQztvQkFDTCxDQUFDO29CQUVELE1BQU0sV0FBVyxHQUFHO3dCQUNsQixZQUFZLEVBQUUsQ0FBQyxDQUFDLE9BQU87d0JBQ3ZCLFNBQVMsRUFBRSxDQUFDLENBQUMsUUFBUTt3QkFDckIsWUFBWSxFQUFFLE1BQU0sQ0FBQyxFQUFFO3dCQUN2QixnQkFBZ0IsRUFBRSxDQUFDLENBQUMsY0FBYzt3QkFDbEMsWUFBWSxFQUFFLENBQUMsQ0FBQyxXQUFXO3dCQUMzQixRQUFRLEVBQUUsQ0FBQyxDQUFDLE9BQU87d0JBQ25CLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxlQUFlO3dCQUNuQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEtBQUs7d0JBQ2YsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPO3dCQUNsQixNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU07cUJBQ2pCLENBQUM7b0JBRUYsSUFBSSxlQUFlLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO3dCQUNoQyw0QkFBNEI7d0JBQzVCLGtCQUFNLENBQUMsSUFBSSxDQUFDLDhCQUE4QixLQUFLLENBQUMsUUFBUSxzQkFBc0IsQ0FBQyxDQUFDLGNBQWMsY0FBYyxDQUFDLENBQUMsT0FBTyxJQUFJLEtBQUssRUFBRSxDQUFDLENBQUM7d0JBQ2xJLE1BQU0sa0JBQWtCLENBQUMsK0JBQStCLENBQUM7NEJBQ3ZELEVBQUUsRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTs0QkFDekIsR0FBRyxXQUFXO3lCQUNmLENBQUMsQ0FBQztvQkFDTCxDQUFDO3lCQUFNLENBQUM7d0JBQ04sbUNBQW1DO3dCQUNuQyxrQkFBTSxDQUFDLElBQUksQ0FBQyxrQ0FBa0MsS0FBSyxDQUFDLFFBQVEsc0JBQXNCLENBQUMsQ0FBQyxjQUFjLGNBQWMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxLQUFLLEVBQUUsQ0FBQyxDQUFDO3dCQUN0SSxNQUFNLGtCQUFrQixDQUFDLCtCQUErQixDQUFDLFdBQVcsQ0FBQyxDQUFDO29CQUN4RSxDQUFDO2dCQUNILENBQUM7WUFDSCxDQUFDO1lBRUQsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNGLE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0MsSUFBSSxjQUFjLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2hDLGtCQUFNLENBQUMsSUFBSSxDQUFDLCtCQUErQixDQUFDLENBQUM7WUFDN0MsT0FBTyxJQUFJLDRCQUFZLEVBQUUsQ0FBQztRQUM1QixDQUFDO1FBQ0QsTUFBTSxNQUFNLEdBQUcsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRWpDLHVEQUF1RDtRQUN2RCxNQUFNLElBQUksR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQztZQUNILE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQztnQkFDaEIsQ0FBQyxrQ0FBbUIsQ0FBQyxFQUFFLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUU7Z0JBQ3RELENBQUMsZUFBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUU7YUFDeEMsQ0FBQyxDQUFDO1lBQ0gsa0JBQU0sQ0FBQyxJQUFJLENBQUMscUNBQXFDLE1BQU0sQ0FBQyxFQUFFLGNBQWMsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDdEYsQ0FBQztRQUFDLE9BQU8sU0FBYyxFQUFFLENBQUM7WUFDeEIsaURBQWlEO1lBQ2pELElBQ0UsU0FBUyxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsOEJBQThCLENBQUM7Z0JBQzVELFNBQVMsRUFBRSxPQUFPLEVBQUUsUUFBUSxDQUFDLGdCQUFnQixDQUFDO2dCQUM5QyxTQUFTLEVBQUUsSUFBSSxLQUFLLE9BQU87Z0JBQzNCLFNBQVMsRUFBRSxJQUFJLEtBQUssZ0NBQWdDLEVBQ3BELENBQUM7Z0JBQ0Qsa0JBQU0sQ0FBQyxJQUFJLENBQUMsNENBQTRDLE1BQU0sQ0FBQyxFQUFFLGNBQWMsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDN0YsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLHFDQUFxQztnQkFDckMsTUFBTSxTQUFTLENBQUM7WUFDbEIsQ0FBQztRQUNILENBQUM7UUFFRCxPQUFPLElBQUksNEJBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBQUMsT0FBTyxLQUFVLEVBQUUsQ0FBQztRQUNwQixrQkFBTSxDQUFDLEtBQUssQ0FBQyxpRkFBaUYsS0FBSyxDQUFDLFFBQVEsS0FBSyxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNuSSxPQUFPLElBQUksNEJBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxDQUFDO0FBQ0gsQ0FBQyxDQUNGLENBQUMifQ==
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.deleteOrderMasterByErpIdsStep = void 0;
4
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
5
+ const order_master_1 = require("../../../modules/order-master");
6
+ const framework_1 = require("@medusajs/framework");
7
+ /**
8
+ * Delete order_master records by ERP order ids (from webhook input.data).
9
+ * Cascades delete order_details and order_payment_option.
10
+ */
11
+ exports.deleteOrderMasterByErpIdsStep = (0, workflows_sdk_1.createStep)("delete-order-master-by-erp-ids-step", async (input, { container }) => {
12
+ const orderMasterService = container.resolve(order_master_1.ORDER_MASTER_MODULE);
13
+ const ids = input?.data ?? [];
14
+ if (!ids.length) {
15
+ framework_1.logger.info("[Webhook] Delete Order: no ids in input.data");
16
+ return new workflows_sdk_1.StepResponse({ deleted: 0 }, null);
17
+ }
18
+ const erpOrderIds = ids.map((id) => typeof id === "string" ? parseInt(id, 10) : Number(id)).filter((n) => !Number.isNaN(n));
19
+ if (!erpOrderIds.length) {
20
+ return new workflows_sdk_1.StepResponse({ deleted: 0 }, null);
21
+ }
22
+ const existing = await orderMasterService.listOrderMasters({
23
+ erp_order_id: erpOrderIds,
24
+ });
25
+ if (!existing.length) {
26
+ framework_1.logger.info(`[Webhook] Delete Order: no order_master found for ids ${erpOrderIds.join(", ")}`);
27
+ return new workflows_sdk_1.StepResponse({ deleted: 0 }, null);
28
+ }
29
+ const toDelete = existing.map((o) => o.id);
30
+ await orderMasterService.deleteOrderMasters(toDelete);
31
+ framework_1.logger.info(`[Webhook] Deleted ${toDelete.length} order_master record(s) for ERP ids: ${erpOrderIds.join(", ")}`);
32
+ return new workflows_sdk_1.StepResponse({ deleted: toDelete.length }, existing);
33
+ }, async (prev, { container }) => {
34
+ if (!prev?.length)
35
+ return;
36
+ const orderMasterService = container.resolve(order_master_1.ORDER_MASTER_MODULE);
37
+ for (const o of prev) {
38
+ await orderMasterService.createOrderMasters({
39
+ id: o.id,
40
+ erp_order_id: o.erp_order_id,
41
+ branch_no: o.branch_no,
42
+ branch_name: o.branch_name,
43
+ order_prefix: o.order_prefix,
44
+ order_no: o.order_no,
45
+ order_date: o.order_date,
46
+ customer_id: o.customer_id,
47
+ customer_name: o.customer_name,
48
+ po_no: o.po_no,
49
+ po_date: o.po_date,
50
+ sales_person: o.sales_person,
51
+ work_order_no: o.work_order_no,
52
+ remarks: o.remarks,
53
+ shipping_id: o.shipping_id,
54
+ promocode_series_id: o.promocode_series_id,
55
+ promocode: o.promocode,
56
+ promocode_percentage: o.promocode_percentage,
57
+ promocode_amount: o.promocode_amount,
58
+ });
59
+ }
60
+ });
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLW9yZGVyLW1hc3Rlci1ieS1lcnAtaWRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9vcmRlci1tYXN0ZXIvc3RlcHMvZGVsZXRlLW9yZGVyLW1hc3Rlci1ieS1lcnAtaWRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUU3RSxnRUFBb0U7QUFDcEUsbURBQTZDO0FBRzdDOzs7R0FHRztBQUNVLFFBQUEsNkJBQTZCLEdBQUcsSUFBQSwwQkFBVSxFQUNyRCxxQ0FBcUMsRUFDckMsS0FBSyxFQUFFLEtBQWtCLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFO0lBQzFDLE1BQU0sa0JBQWtCLEdBQXVCLFNBQVMsQ0FBQyxPQUFPLENBQzlELGtDQUFtQixDQUNwQixDQUFDO0lBRUYsTUFBTSxHQUFHLEdBQUcsS0FBSyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUM7SUFDOUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNoQixrQkFBTSxDQUFDLElBQUksQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO1FBQzVELE9BQU8sSUFBSSw0QkFBWSxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxNQUFNLFdBQVcsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FDakMsT0FBTyxFQUFFLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQ3ZELENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUVsQyxJQUFJLENBQUMs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