@devx-commerce/plugin-gati 0.0.34-beta.8 → 0.0.34-beta.81

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 (380) 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/erp-event/query-config.js +8 -1
  4. package/.medusa/server/src/api/admin/generate-invoice/route.js +158 -0
  5. package/.medusa/server/src/api/admin/masters/utils.js +29 -1
  6. package/.medusa/server/src/api/admin/masters/validators.js +2 -2
  7. package/.medusa/server/src/api/admin/variant-options/recalculate/route.js +446 -0
  8. package/.medusa/server/src/api/admin/variant-options/sync/route.js +21 -5
  9. package/.medusa/server/src/api/erp/webhook/config.js +73 -5
  10. package/.medusa/server/src/api/erp/webhook/route.js +10 -137
  11. package/.medusa/server/src/api/erp/webhook/utils.js +8 -1
  12. package/.medusa/server/src/api/pos/customer-ledger/middleware.js +13 -0
  13. package/.medusa/server/src/api/pos/customer-ledger/route.js +50 -0
  14. package/.medusa/server/src/api/pos/generate-invoice/route.js +164 -0
  15. package/.medusa/server/src/api/pos/gold/calculate/route.js +104 -0
  16. package/.medusa/server/src/api/pos/gold/item-master-purity.js +46 -0
  17. package/.medusa/server/src/api/pos/gold/middleware.js +18 -0
  18. package/.medusa/server/src/api/pos/gold/route.js +83 -0
  19. package/.medusa/server/src/api/pos/gold-rate/route.js +37 -24
  20. package/.medusa/server/src/api/pos/middleware.js +13 -1
  21. package/.medusa/server/src/api/pos/old-gold-item/middleware.js +10 -0
  22. package/.medusa/server/src/api/pos/old-gold-item/route.js +52 -0
  23. package/.medusa/server/src/api/pos/platinumdata/middleware.js +13 -0
  24. package/.medusa/server/src/api/pos/platinumdata/route.js +41 -0
  25. package/.medusa/server/src/api/pos/silverdata/middleware.js +13 -0
  26. package/.medusa/server/src/api/pos/silverdata/route.js +41 -0
  27. package/.medusa/server/src/api/pos/wallet-balance/middleware.js +13 -0
  28. package/.medusa/server/src/api/pos/wallet-balance/route.js +68 -0
  29. package/.medusa/server/src/api/store/custom-price/validators.js +2 -2
  30. package/.medusa/server/src/api/store/customer-ledger/middleware.js +13 -0
  31. package/.medusa/server/src/api/store/customer-ledger/route.js +49 -0
  32. package/.medusa/server/src/api/store/gold-rate/validators.js +2 -2
  33. package/.medusa/server/src/api/store/middleware.js +5 -1
  34. package/.medusa/server/src/api/store/wallet-balance/middleware.js +13 -0
  35. package/.medusa/server/src/api/store/wallet-balance/route.js +67 -0
  36. package/.medusa/server/src/jobs/process-erp-events.js +128 -0
  37. package/.medusa/server/src/jobs/process-variant-option-sync.js +46 -29
  38. package/.medusa/server/src/jobs/sync-addless-detail.js +68 -0
  39. package/.medusa/server/src/jobs/sync-book-list-and-applicable-policy.js +97 -0
  40. package/.medusa/server/src/jobs/sync-customer-advance-payment-erp.js +105 -0
  41. package/.medusa/server/src/jobs/sync-customer-erp.js +128 -0
  42. package/.medusa/server/src/jobs/sync-item-master.js +29 -0
  43. package/.medusa/server/src/jobs/sync-labour-chart-master.js +29 -0
  44. package/.medusa/server/src/jobs/sync-order-erp.js +46 -20
  45. package/.medusa/server/src/jobs/sync-order-request-erp.js +64 -0
  46. package/.medusa/server/src/jobs/sync-payment-book-master.js +78 -0
  47. package/.medusa/server/src/jobs/sync-rate-chart-master.js +29 -0
  48. package/.medusa/server/src/jobs/sync-report-master.js +54 -0
  49. package/.medusa/server/src/jobs/sync-sale-return-policy-master.js +38 -0
  50. package/.medusa/server/src/jobs/sync-urd-purchase-erp.js +84 -0
  51. package/.medusa/server/src/lib/api-response.js +2 -1
  52. package/.medusa/server/src/links/jewel-trans-master.js +13 -0
  53. package/.medusa/server/src/links/order-master.js +13 -0
  54. package/.medusa/server/src/links/sale-master.js +13 -0
  55. package/.medusa/server/src/modules/addless-detail/index.js +13 -0
  56. package/.medusa/server/src/modules/addless-detail/migrations/Migration20260212101102.js +15 -0
  57. package/.medusa/server/src/modules/addless-detail/migrations/Migration20260213000000.js +47 -0
  58. package/.medusa/server/src/modules/addless-detail/migrations/Migration20260226053037.js +15 -0
  59. package/.medusa/server/src/modules/addless-detail/models/addless-master.js +17 -0
  60. package/.medusa/server/src/modules/addless-detail/service.js +10 -0
  61. package/.medusa/server/src/modules/applicable-sale-return-policy/index.js +13 -0
  62. package/.medusa/server/src/modules/applicable-sale-return-policy/migrations/Migration20260123083526.js +15 -0
  63. package/.medusa/server/src/modules/applicable-sale-return-policy/models/applicable-sale-return-policy.js +23 -0
  64. package/.medusa/server/src/modules/applicable-sale-return-policy/service.js +10 -0
  65. package/.medusa/server/src/modules/book-list/index.js +13 -0
  66. package/.medusa/server/src/modules/book-list/migrations/Migration20260123083525.js +15 -0
  67. package/.medusa/server/src/modules/book-list/migrations/Migration20260401051011.js +14 -0
  68. package/.medusa/server/src/modules/book-list/models/book-list.js +13 -0
  69. package/.medusa/server/src/modules/book-list/service.js +10 -0
  70. package/.medusa/server/src/modules/category-group-master/migrations/Migration20250729035221.js +2 -2
  71. package/.medusa/server/src/modules/category-group-master/migrations/Migration20251031061116.js +2 -2
  72. package/.medusa/server/src/modules/category-group-master/migrations/Migration20251104045912.js +2 -2
  73. package/.medusa/server/src/modules/category-master/migrations/Migration20250513122212.js +2 -2
  74. package/.medusa/server/src/modules/category-master/migrations/Migration20250519180539.js +2 -2
  75. package/.medusa/server/src/modules/category-master/migrations/Migration20250531004724.js +2 -2
  76. package/.medusa/server/src/modules/category-master/migrations/Migration20250729040659.js +2 -2
  77. package/.medusa/server/src/modules/category-master/migrations/Migration20251031061327.js +2 -2
  78. package/.medusa/server/src/modules/category-master/migrations/Migration20251104045755.js +2 -2
  79. package/.medusa/server/src/modules/collection-group-master/migrations/Migration20250531022203.js +2 -2
  80. package/.medusa/server/src/modules/collection-group-master/migrations/Migration20251031061432.js +2 -2
  81. package/.medusa/server/src/modules/collection-group-master/migrations/Migration20251104050102.js +2 -2
  82. package/.medusa/server/src/modules/collection-master/migrations/Migration20250513122211.js +2 -2
  83. package/.medusa/server/src/modules/collection-master/migrations/Migration20250531025048.js +2 -2
  84. package/.medusa/server/src/modules/collection-master/migrations/Migration20251031060941.js +2 -2
  85. package/.medusa/server/src/modules/collection-master/migrations/Migration20251104050012.js +2 -2
  86. package/.medusa/server/src/modules/customer-receive-voucher/index.js +13 -0
  87. package/.medusa/server/src/modules/customer-receive-voucher/migrations/Migration20250115000000.js +51 -0
  88. package/.medusa/server/src/modules/customer-receive-voucher/migrations/Migration20260106050934.js +18 -0
  89. package/.medusa/server/src/modules/customer-receive-voucher/models/customer-receive-voucher.js +35 -0
  90. package/.medusa/server/src/modules/customer-receive-voucher/service.js +10 -0
  91. package/.medusa/server/src/modules/discount-master/migrations/Migration20250707232514.js +2 -2
  92. package/.medusa/server/src/modules/discount-master/migrations/Migration20250708051709.js +2 -2
  93. package/.medusa/server/src/modules/discount-master/migrations/Migration20250708051737.js +2 -2
  94. package/.medusa/server/src/modules/discount-master/migrations/Migration20251031061523.js +2 -2
  95. package/.medusa/server/src/modules/discount-master/migrations/Migration20251104050153.js +2 -2
  96. package/.medusa/server/src/modules/erp/migrations/Migration20250513121436.js +2 -2
  97. package/.medusa/server/src/modules/erp/service.js +611 -8
  98. package/.medusa/server/src/modules/erp-event/migrations/Migration20250908040911.js +2 -2
  99. package/.medusa/server/src/modules/erp-event/migrations/Migration20250922095956.js +2 -2
  100. package/.medusa/server/src/modules/erp-event/migrations/Migration20260529052734.js +14 -0
  101. package/.medusa/server/src/modules/erp-event/models/erp-event.js +6 -1
  102. package/.medusa/server/src/modules/extended-product/migrations/Migration20250620030100.js +2 -2
  103. package/.medusa/server/src/modules/extended-product/migrations/Migration20250716041546.js +2 -2
  104. package/.medusa/server/src/modules/extended-product/migrations/Migration20251103182726.js +2 -2
  105. package/.medusa/server/src/modules/extended-product/migrations/Migration20251119062526.js +2 -2
  106. package/.medusa/server/src/modules/extended-product/migrations/Migration20251202055742.js +2 -2
  107. package/.medusa/server/src/modules/extended-product/migrations/Migration20251202064200.js +2 -2
  108. package/.medusa/server/src/modules/extended-product/migrations/Migration20260323103543.js +14 -0
  109. package/.medusa/server/src/modules/extended-product/models/extended-product.js +2 -1
  110. package/.medusa/server/src/modules/extended-product/service.js +37 -1
  111. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250620030335.js +2 -2
  112. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250620030522.js +2 -2
  113. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250629220100.js +2 -2
  114. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250629223425.js +2 -2
  115. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250704064831.js +2 -2
  116. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250716121609.js +2 -2
  117. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250725104852.js +2 -2
  118. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250726232339.js +2 -2
  119. package/.medusa/server/src/modules/extended-variant/migrations/Migration20250916065103.js +2 -2
  120. package/.medusa/server/src/modules/extended-variant/migrations/Migration20251119063328.js +2 -2
  121. package/.medusa/server/src/modules/extended-variant/migrations/Migration20251120045708.js +2 -2
  122. package/.medusa/server/src/modules/extended-variant/migrations/Migration20251120051832.js +2 -2
  123. package/.medusa/server/src/modules/extended-variant/migrations/Migration20251120052514.js +2 -2
  124. package/.medusa/server/src/modules/extended-variant/migrations/Migration20251202055952.js +2 -2
  125. package/.medusa/server/src/modules/extended-variant/migrations/Migration20251210112341.js +18 -0
  126. package/.medusa/server/src/modules/extended-variant/migrations/Migration20260616000001.js +14 -0
  127. package/.medusa/server/src/modules/extended-variant/models/extended-variant.js +4 -2
  128. package/.medusa/server/src/modules/extended-variant/service.js +37 -1
  129. package/.medusa/server/src/modules/item-master/index.js +13 -0
  130. package/.medusa/server/src/modules/item-master/migrations/Migration20260212101055.js +15 -0
  131. package/.medusa/server/src/modules/item-master/models/item-master.js +20 -0
  132. package/.medusa/server/src/modules/item-master/service.js +10 -0
  133. package/.medusa/server/src/modules/item-size-master/migrations/Migration20251031111036.js +2 -2
  134. package/.medusa/server/src/modules/jewel-trans-master/index.js +13 -0
  135. package/.medusa/server/src/modules/jewel-trans-master/migrations/Migration20260226053036.js +57 -0
  136. package/.medusa/server/src/modules/jewel-trans-master/models/jewel-trans-master.js +151 -0
  137. package/.medusa/server/src/modules/jewel-trans-master/service.js +16 -0
  138. package/.medusa/server/src/modules/labour-chart-master/index.js +13 -0
  139. package/.medusa/server/src/modules/labour-chart-master/migrations/Migration20260101081502.js +15 -0
  140. package/.medusa/server/src/modules/labour-chart-master/models/labour-chart-master.js +16 -0
  141. package/.medusa/server/src/modules/labour-chart-master/service.js +10 -0
  142. package/.medusa/server/src/modules/material-purchase-master/index.js +13 -0
  143. package/.medusa/server/src/modules/material-purchase-master/migrations/Migration20260310090700.js +18 -0
  144. package/.medusa/server/src/modules/material-purchase-master/models/material-purchase-detail-line.js +24 -0
  145. package/.medusa/server/src/modules/material-purchase-master/models/material-purchase-master.js +21 -0
  146. package/.medusa/server/src/modules/material-purchase-master/service.js +12 -0
  147. package/.medusa/server/src/modules/order-master/index.js +13 -0
  148. package/.medusa/server/src/modules/order-master/migrations/Migration20260226053036.js +29 -0
  149. package/.medusa/server/src/modules/order-master/migrations/Migration20260303000001.js +30 -0
  150. package/.medusa/server/src/modules/order-master/migrations/Migration20260319094758.js +26 -0
  151. package/.medusa/server/src/modules/order-master/migrations/Migration20260320000001.js +19 -0
  152. package/.medusa/server/src/modules/order-master/models/order-master.js +112 -0
  153. package/.medusa/server/src/modules/order-master/service.js +13 -0
  154. package/.medusa/server/src/modules/order-proceed-master/index.js +13 -0
  155. package/.medusa/server/src/modules/order-proceed-master/migrations/Migration20260327100226.js +31 -0
  156. package/.medusa/server/src/modules/order-proceed-master/models/order-proceed-master.js +38 -0
  157. package/.medusa/server/src/modules/order-proceed-master/service.js +11 -0
  158. package/.medusa/server/src/modules/party-master/migrations/Migration20250604104235.js +2 -2
  159. package/.medusa/server/src/modules/party-master/migrations/Migration20250604115453.js +2 -2
  160. package/.medusa/server/src/modules/party-master/migrations/Migration20250604120348.js +2 -2
  161. package/.medusa/server/src/modules/party-master/migrations/Migration20250604120701.js +2 -2
  162. package/.medusa/server/src/modules/party-master/migrations/Migration20250608220924.js +2 -2
  163. package/.medusa/server/src/modules/party-master/migrations/Migration20250612225738.js +2 -2
  164. package/.medusa/server/src/modules/party-master/migrations/Migration20250612231031.js +2 -2
  165. package/.medusa/server/src/modules/party-master/migrations/Migration20250708123734.js +2 -2
  166. package/.medusa/server/src/modules/party-master/migrations/Migration20251031061657.js +2 -2
  167. package/.medusa/server/src/modules/party-master/migrations/Migration20251104050242.js +2 -2
  168. package/.medusa/server/src/modules/payment-book-master/index.js +13 -0
  169. package/.medusa/server/src/modules/payment-book-master/migrations/Migration20251203105358.js +15 -0
  170. package/.medusa/server/src/modules/payment-book-master/models/payment-book-master.js +12 -0
  171. package/.medusa/server/src/modules/payment-book-master/service.js +10 -0
  172. package/.medusa/server/src/modules/promocode-master/migrations/Migration20250819123821.js +2 -2
  173. package/.medusa/server/src/modules/promocode-master/migrations/Migration20250918095713.js +2 -2
  174. package/.medusa/server/src/modules/promocode-master/migrations/Migration20251031061829.js +2 -2
  175. package/.medusa/server/src/modules/promocode-master/migrations/Migration20251104050332.js +2 -2
  176. package/.medusa/server/src/modules/quality-master/migrations/Migration20251031095211.js +2 -2
  177. package/.medusa/server/src/modules/quality-master/migrations/Migration20251105045114.js +2 -2
  178. package/.medusa/server/src/modules/rate-chart-master/index.js +13 -0
  179. package/.medusa/server/src/modules/rate-chart-master/migrations/Migration20260101081500.js +15 -0
  180. package/.medusa/server/src/modules/rate-chart-master/models/rate-chart-master.js +13 -0
  181. package/.medusa/server/src/modules/rate-chart-master/service.js +10 -0
  182. package/.medusa/server/src/modules/raw-master/migrations/Migration20250509190057.js +2 -2
  183. package/.medusa/server/src/modules/raw-master/migrations/Migration20250509190322.js +2 -2
  184. package/.medusa/server/src/modules/raw-master/migrations/Migration20251031061912.js +2 -2
  185. package/.medusa/server/src/modules/receive-voucher-master/index.js +13 -0
  186. package/.medusa/server/src/modules/receive-voucher-master/migrations/Migration20260328053649.js +16 -0
  187. package/.medusa/server/src/modules/receive-voucher-master/models/receive-voucher-master.js +27 -0
  188. package/.medusa/server/src/modules/receive-voucher-master/service.js +10 -0
  189. package/.medusa/server/src/modules/report-master/index.js +13 -0
  190. package/.medusa/server/src/modules/report-master/migrations/Migration20260121060955.js +15 -0
  191. package/.medusa/server/src/modules/report-master/migrations/Migration20260121112624.js +15 -0
  192. package/.medusa/server/src/modules/report-master/models/report-master.js +12 -0
  193. package/.medusa/server/src/modules/report-master/service.js +10 -0
  194. package/.medusa/server/src/modules/sale-master/index.js +13 -0
  195. package/.medusa/server/src/modules/sale-master/migrations/Migration20260205092935.js +15 -0
  196. package/.medusa/server/src/modules/sale-master/migrations/Migration20260205100000.js +16 -0
  197. package/.medusa/server/src/modules/sale-master/models/sale-master.js +27 -0
  198. package/.medusa/server/src/modules/sale-master/service.js +10 -0
  199. package/.medusa/server/src/modules/sale-return-master/index.js +13 -0
  200. package/.medusa/server/src/modules/sale-return-master/migrations/Migration20260205093034.js +15 -0
  201. package/.medusa/server/src/modules/sale-return-master/migrations/Migration20260327084135.js +14 -0
  202. package/.medusa/server/src/modules/sale-return-master/models/sale-return-master.js +18 -0
  203. package/.medusa/server/src/modules/sale-return-master/service.js +10 -0
  204. package/.medusa/server/src/modules/sale-return-policy-master/index.js +13 -0
  205. package/.medusa/server/src/modules/sale-return-policy-master/migrations/Migration20260105061449.js +21 -0
  206. package/.medusa/server/src/modules/sale-return-policy-master/migrations/Migration20260129084920.js +14 -0
  207. package/.medusa/server/src/modules/sale-return-policy-master/migrations/Migration20260129085620.js +20 -0
  208. package/.medusa/server/src/modules/sale-return-policy-master/models/sale-return-policy-master.js +37 -0
  209. package/.medusa/server/src/modules/sale-return-policy-master/service.js +12 -0
  210. package/.medusa/server/src/modules/shape-master/migrations/Migration20250509174455.js +2 -2
  211. package/.medusa/server/src/modules/shape-master/migrations/Migration20251031062019.js +2 -2
  212. package/.medusa/server/src/modules/shipping-info-master/migrations/Migration20250713113247.js +2 -2
  213. package/.medusa/server/src/modules/shipping-info-master/migrations/Migration20250713121440.js +2 -2
  214. package/.medusa/server/src/modules/shipping-info-master/migrations/Migration20251031062128.js +2 -2
  215. package/.medusa/server/src/modules/shipping-info-master/migrations/Migration20251104050501.js +2 -2
  216. package/.medusa/server/src/modules/shipping-info-master/migrations/Migration20251203083315.js +2 -2
  217. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250513115356.js +2 -2
  218. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250519180538.js +2 -2
  219. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250531010409.js +2 -2
  220. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250730025135.js +2 -2
  221. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250730025307.js +2 -2
  222. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250730032130.js +2 -2
  223. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20251031062303.js +2 -2
  224. package/.medusa/server/src/modules/sub-category-master/migrations/Migration20251104050743.js +2 -2
  225. package/.medusa/server/src/modules/tone-master/migrations/Migration20251031104320.js +2 -2
  226. package/.medusa/server/src/modules/variant-option-sync-queue/migrations/Migration20251101082220.js +2 -2
  227. package/.medusa/server/src/modules/variant-option-sync-queue/migrations/Migration20251103123857.js +2 -2
  228. package/.medusa/server/src/subscribers/cutomer-updated.js +3 -1
  229. package/.medusa/server/src/subscribers/erp-batch-processor.js +147 -0
  230. package/.medusa/server/src/subscribers/order-item-update.js +11 -0
  231. package/.medusa/server/src/subscribers/party-master.js +39 -35
  232. package/.medusa/server/src/subscribers/product-sync.js +1 -1
  233. package/.medusa/server/src/subscribers/product-variant-deleted.js +27 -0
  234. package/.medusa/server/src/subscribers/shipping-info-master.js +10 -4
  235. package/.medusa/server/src/utils/build-redis-key.js +3 -1
  236. package/.medusa/server/src/utils/erp-health.js +24 -0
  237. package/.medusa/server/src/utils/state-helper.js +3 -2
  238. package/.medusa/server/src/workflows/addless-detail/index.js +11 -0
  239. package/.medusa/server/src/workflows/addless-detail/steps/create-or-update-addless-detail.js +36 -0
  240. package/.medusa/server/src/workflows/addless-detail/steps/fetch-addless-detail.js +73 -0
  241. package/.medusa/server/src/workflows/applicable-sale-return-policy/index.js +11 -0
  242. package/.medusa/server/src/workflows/applicable-sale-return-policy/steps/create-or-update-applicable-sale-return-policy.js +74 -0
  243. package/.medusa/server/src/workflows/applicable-sale-return-policy/steps/fetch-applicable-sale-return-policy.js +64 -0
  244. package/.medusa/server/src/workflows/book-list/index.js +11 -0
  245. package/.medusa/server/src/workflows/book-list/steps/create-or-update-book-list.js +59 -0
  246. package/.medusa/server/src/workflows/book-list/steps/fetch-book-list.js +64 -0
  247. package/.medusa/server/src/workflows/create-extended-product-from-product/index.js +9 -8
  248. package/.medusa/server/src/workflows/create-extended-variant-from-variant/index.js +9 -18
  249. package/.medusa/server/src/workflows/customer-advance-payment/index.js +18 -0
  250. package/.medusa/server/src/workflows/customer-advance-payment/steps/create-receive-voucher.js +71 -0
  251. package/.medusa/server/src/workflows/customer-advance-payment/steps/index.js +18 -0
  252. package/.medusa/server/src/workflows/customer-advance-payment/workflows/create-receive-voucher-workflow.js +11 -0
  253. package/.medusa/server/src/workflows/customer-advance-payment/workflows/index.js +18 -0
  254. package/.medusa/server/src/workflows/daily-rate/index.js +37 -0
  255. package/.medusa/server/src/workflows/daily-rate/perf.js +89 -0
  256. package/.medusa/server/src/workflows/daily-rate/steps/fetch-gold-rate-step.js +29 -0
  257. package/.medusa/server/src/workflows/daily-rate/steps/update-inward-metal-rates-step.js +154 -0
  258. package/.medusa/server/src/workflows/daily-rate/steps/update-party-style-metal-rates-step.js +224 -0
  259. package/.medusa/server/src/workflows/daily-rate/steps/update-style-master-metal-rates-step.js +180 -0
  260. package/.medusa/server/src/workflows/daily-rate/steps/update-unfix-order-items-on-gold-rate.js +308 -0
  261. package/.medusa/server/src/workflows/erp-batch-processing/index.js +19 -0
  262. package/.medusa/server/src/workflows/erp-batch-processing/steps/finalize-batch-processing.js +55 -0
  263. package/.medusa/server/src/workflows/erp-batch-processing/steps/index.js +20 -0
  264. package/.medusa/server/src/workflows/erp-batch-processing/steps/initialize-batch-processing.js +40 -0
  265. package/.medusa/server/src/workflows/erp-batch-processing/steps/start-batch-processing.js +22 -0
  266. package/.medusa/server/src/workflows/erp-batch-processing/workflows/erp-batch-processing.js +25 -0
  267. package/.medusa/server/src/workflows/erp-batch-processing/workflows/index.js +18 -0
  268. package/.medusa/server/src/workflows/erp-event/steps/update-erp-event.js +24 -7
  269. package/.medusa/server/src/workflows/erp-event/workflows/update-erp-event.js +1 -1
  270. package/.medusa/server/src/workflows/helpers/product-helper.js +212 -21
  271. package/.medusa/server/src/workflows/helpers/variant-helper.js +165 -162
  272. package/.medusa/server/src/workflows/hooks/product-updated.js +23 -15
  273. package/.medusa/server/src/workflows/hooks/variant-updated.js +24 -22
  274. package/.medusa/server/src/workflows/index.js +4 -1
  275. package/.medusa/server/src/workflows/inward-master/helper/index.js +28 -13
  276. package/.medusa/server/src/workflows/inward-master/steps/create-inward-exploration-lines.js +1 -2
  277. package/.medusa/server/src/workflows/inward-master/steps/create-inward-extra-charges-lines.js +1 -2
  278. package/.medusa/server/src/workflows/inward-master/steps/create-order-fulfillment-for-inward.js +196 -0
  279. package/.medusa/server/src/workflows/inward-master/steps/fetch-inward-master.js +17 -25
  280. package/.medusa/server/src/workflows/inward-master/steps/index.js +3 -1
  281. package/.medusa/server/src/workflows/inward-master/steps/notify-inward-skipped.js +38 -0
  282. package/.medusa/server/src/workflows/inward-master/steps/update-order-item-from-inward.js +259 -0
  283. package/.medusa/server/src/workflows/inward-master/workflows/create-inward.js +89 -75
  284. package/.medusa/server/src/workflows/inward-master/workflows/delete-inward.js +6 -9
  285. package/.medusa/server/src/workflows/inward-master/workflows/update-instock.js +2 -1
  286. package/.medusa/server/src/workflows/inward-master/workflows/update-inward.js +49 -7
  287. package/.medusa/server/src/workflows/item-master/index.js +11 -0
  288. package/.medusa/server/src/workflows/item-master/steps/create-or-update-item-master.js +50 -0
  289. package/.medusa/server/src/workflows/item-master/steps/fetch-item-master.js +29 -0
  290. package/.medusa/server/src/workflows/jewel-trans-master/index.js +18 -0
  291. package/.medusa/server/src/workflows/jewel-trans-master/steps/create-or-update-jewel-trans-master.js +370 -0
  292. package/.medusa/server/src/workflows/jewel-trans-master/steps/index.js +18 -0
  293. package/.medusa/server/src/workflows/labour-chart-master/index.js +11 -0
  294. package/.medusa/server/src/workflows/labour-chart-master/steps/create-or-update-labour-chart-master.js +38 -0
  295. package/.medusa/server/src/workflows/labour-chart-master/steps/fetch-labour-chart.js +31 -0
  296. package/.medusa/server/src/workflows/material-purchase-master/index.js +24 -0
  297. package/.medusa/server/src/workflows/material-purchase-master/steps/create-material-purchase-master.js +119 -0
  298. package/.medusa/server/src/workflows/material-purchase-master/steps/delete-material-purchase-master.js +102 -0
  299. package/.medusa/server/src/workflows/material-purchase-master/steps/fetch-material-purchase-master.js +60 -0
  300. package/.medusa/server/src/workflows/material-purchase-master/steps/update-material-purchase-master.js +149 -0
  301. package/.medusa/server/src/workflows/order-master/index.js +3 -0
  302. package/.medusa/server/src/workflows/order-master/order-master-webhook.js +24 -0
  303. package/.medusa/server/src/workflows/order-master/steps/create-or-update-order-master.js +275 -0
  304. package/.medusa/server/src/workflows/order-master/steps/delete-order-master-by-erp-ids.js +61 -0
  305. package/.medusa/server/src/workflows/order-master/steps/process-order-master-from-webhook.js +1038 -0
  306. package/.medusa/server/src/workflows/order-proceed-master/index.js +6 -0
  307. package/.medusa/server/src/workflows/order-proceed-master/order-proceed-master-webhook.js +26 -0
  308. package/.medusa/server/src/workflows/order-proceed-master/steps/create-or-update-order-proceed-master.js +186 -0
  309. package/.medusa/server/src/workflows/order-proceed-master/steps/delete-order-proceed-master-by-erp-ids.js +28 -0
  310. package/.medusa/server/src/workflows/orders/steps/create-sale-for-order-step.js +218 -0
  311. package/.medusa/server/src/workflows/orders/steps/find-nearest-pincodes-step.js +336 -0
  312. package/.medusa/server/src/workflows/orders/steps/get-today-gold-rate-step.js +83 -0
  313. package/.medusa/server/src/workflows/orders/steps/index.js +16 -1
  314. package/.medusa/server/src/workflows/orders/steps/revert-to-wallet-step.js +165 -0
  315. package/.medusa/server/src/workflows/orders/steps/sync-advance-payment-to-erp-step.js +191 -0
  316. package/.medusa/server/src/workflows/orders/steps/sync-buyback-to-erp-step.js +99 -0
  317. package/.medusa/server/src/workflows/orders/steps/sync-cancel-to-erp-step.js +120 -0
  318. package/.medusa/server/src/workflows/orders/steps/sync-exchange-to-erp-step.js +101 -0
  319. package/.medusa/server/src/workflows/orders/steps/sync-old-gold-to-erp-step.js +161 -0
  320. package/.medusa/server/src/workflows/orders/steps/sync-order-to-erp.js +756 -20
  321. package/.medusa/server/src/workflows/orders/steps/sync-sale-return-to-erp-step.js +277 -0
  322. package/.medusa/server/src/workflows/orders/steps/update-old-gold-sync-status-step.js +64 -0
  323. package/.medusa/server/src/workflows/orders/utils/apply-order-item-price-change.js +79 -0
  324. package/.medusa/server/src/workflows/orders/utils/order-helper.js +182 -37
  325. package/.medusa/server/src/workflows/orders/utils/order-request-helper.js +235 -0
  326. package/.medusa/server/src/workflows/orders/workflows/create-sale-for-order.js +10 -0
  327. package/.medusa/server/src/workflows/orders/workflows/get-today-gold-rate.js +10 -0
  328. package/.medusa/server/src/workflows/orders/workflows/index.js +4 -1
  329. package/.medusa/server/src/workflows/orders/workflows/sync-advanve-payment-to-erp.js +21 -0
  330. package/.medusa/server/src/workflows/orders/workflows/sync-old-gold-to-erp.js +24 -0
  331. package/.medusa/server/src/workflows/orders/workflows/sync-order-to-erp.js +54 -5
  332. package/.medusa/server/src/workflows/orders/workflows/sync-sale-return-to-erp.js +11 -0
  333. package/.medusa/server/src/workflows/party-master/steps/create-customer-erp.js +66 -33
  334. package/.medusa/server/src/workflows/party-master/steps/create-user-erp.js +115 -0
  335. package/.medusa/server/src/workflows/party-master/steps/fetch-party-master.js +2 -1
  336. package/.medusa/server/src/workflows/party-master/steps/index.js +2 -1
  337. package/.medusa/server/src/workflows/party-master/workflows/create-or-update-party-master.js +2 -2
  338. package/.medusa/server/src/workflows/party-master/workflows/create-user-erp.js +11 -0
  339. package/.medusa/server/src/workflows/party-master/workflows/index.js +2 -1
  340. package/.medusa/server/src/workflows/party-style-master/steps/update-product-options-after-deletion.js +16 -249
  341. package/.medusa/server/src/workflows/party-style-master/steps/update-product-options-after-variant-update.js +103 -22
  342. package/.medusa/server/src/workflows/party-style-master/workflows/create-or-update-party-style-master.js +49 -18
  343. package/.medusa/server/src/workflows/party-style-master/workflows/delete-party-style-master.js +4 -15
  344. package/.medusa/server/src/workflows/payment-book-master/index.js +11 -0
  345. package/.medusa/server/src/workflows/payment-book-master/steps/create-or-update-payment-book-master.js +37 -0
  346. package/.medusa/server/src/workflows/payment-book-master/steps/fetch-payment-book.js +64 -0
  347. package/.medusa/server/src/workflows/rate-chart-master/index.js +11 -0
  348. package/.medusa/server/src/workflows/rate-chart-master/steps/create-or-update-rate-chart-master.js +25 -0
  349. package/.medusa/server/src/workflows/rate-chart-master/steps/fetch-rate-chart.js +31 -0
  350. package/.medusa/server/src/workflows/receive-voucher-master/index.js +24 -0
  351. package/.medusa/server/src/workflows/receive-voucher-master/steps/create-receive-voucher-master.js +125 -0
  352. package/.medusa/server/src/workflows/receive-voucher-master/steps/delete-receive-voucher-master.js +45 -0
  353. package/.medusa/server/src/workflows/receive-voucher-master/steps/fetch-receive-voucher-master.js +22 -0
  354. package/.medusa/server/src/workflows/receive-voucher-master/steps/update-receive-voucher-master.js +44 -0
  355. package/.medusa/server/src/workflows/report-master/index.js +11 -0
  356. package/.medusa/server/src/workflows/report-master/steps/create-or-update-report-master.js +53 -0
  357. package/.medusa/server/src/workflows/report-master/steps/fetch-report.js +71 -0
  358. package/.medusa/server/src/workflows/sale-master/index.js +35 -0
  359. package/.medusa/server/src/workflows/sale-master/steps/create-sale-master.js +72 -0
  360. package/.medusa/server/src/workflows/sale-master/steps/delete-sale-master.js +59 -0
  361. package/.medusa/server/src/workflows/sale-master/steps/sync-extended-order-from-sale.js +40 -0
  362. package/.medusa/server/src/workflows/sale-master/steps/update-sale-master.js +95 -0
  363. package/.medusa/server/src/workflows/sale-return-master/index.js +6 -0
  364. package/.medusa/server/src/workflows/sale-return-master/sale-return-master-webhook.js +28 -0
  365. package/.medusa/server/src/workflows/sale-return-master/steps/create-or-update-sale-return-master.js +109 -0
  366. package/.medusa/server/src/workflows/sale-return-master/steps/create-sale-return-master.js +45 -0
  367. package/.medusa/server/src/workflows/sale-return-master/steps/delete-sale-return-master-by-erp-ids.js +36 -0
  368. package/.medusa/server/src/workflows/sale-return-master/steps/delete-sale-return-master.js +36 -0
  369. package/.medusa/server/src/workflows/sale-return-master/steps/process-sale-return-from-webhook.js +234 -0
  370. package/.medusa/server/src/workflows/sale-return-master/steps/update-sale-return-master.js +53 -0
  371. package/.medusa/server/src/workflows/sale-return-policy-master/index.js +11 -0
  372. package/.medusa/server/src/workflows/sale-return-policy-master/steps/create-or-update-sale-return-policy-master.js +91 -0
  373. package/.medusa/server/src/workflows/sale-return-policy-master/steps/fetch-sale-return-policy.js +31 -0
  374. package/.medusa/server/src/workflows/shipping-info-master/workflows/create-or-update-shipping-info.js +59 -0
  375. package/.medusa/server/src/workflows/shipping-info-master/workflows/index.js +2 -1
  376. package/.medusa/server/src/workflows/style-master/workflows/create-or-update-style-master.js +116 -10
  377. package/.medusa/server/src/workflows/style-master/workflows/delete-style-master.js +9 -1
  378. package/.medusa/server/src/workflows/update-extended-product-from-product/index.js +6 -16
  379. package/.medusa/server/src/workflows/update-extended-variant-from-variant/workflows/update-extended-variant-status-from-variant.js +5 -17
  380. package/package.json +18 -33
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.orderProceedMasterWebhookWorkflow = void 0;
4
+ var order_proceed_master_webhook_1 = require("./order-proceed-master-webhook");
5
+ Object.defineProperty(exports, "orderProceedMasterWebhookWorkflow", { enumerable: true, get: function () { return order_proceed_master_webhook_1.orderProceedMasterWebhookWorkflow; } });
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL29yZGVyLXByb2NlZWQtbWFzdGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtFQUFtRjtBQUExRSxpSkFBQSxpQ0FBaUMsT0FBQSJ9
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.orderProceedMasterWebhookWorkflow = void 0;
4
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
5
+ const create_or_update_order_proceed_master_1 = require("./steps/create-or-update-order-proceed-master");
6
+ const delete_order_proceed_master_by_erp_ids_1 = require("./steps/delete-order-proceed-master-by-erp-ids");
7
+ /**
8
+ * Webhook-driven order proceed master workflow.
9
+ * - add/update: fetch order proceed data from ERP by ids, then create or update order_proceed_master (and details).
10
+ * - delete: delete order_proceed_master by ERP order proceed ids (input.data).
11
+ */
12
+ exports.orderProceedMasterWebhookWorkflow = (0, workflows_sdk_1.createWorkflow)("order-proceed-master-webhook", (input) => {
13
+ (0, workflows_sdk_1.when)("order-proceed-webhook-add-or-update", input, (i) => i.operation === "add" || i.operation === "update").then(() => {
14
+ const result = (0, create_or_update_order_proceed_master_1.createOrUpdateOrderProceedMaster)({
15
+ order_proceed_ids: input.data,
16
+ });
17
+ return new workflows_sdk_1.WorkflowResponse(result);
18
+ });
19
+ (0, workflows_sdk_1.when)("order-proceed-webhook-delete", input, (i) => i.operation === "delete").then(() => {
20
+ const result = (0, delete_order_proceed_master_by_erp_ids_1.deleteOrderProceedMasterByErpIds)({
21
+ order_proceed_ids: input.data,
22
+ });
23
+ return new workflows_sdk_1.WorkflowResponse(result);
24
+ });
25
+ });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXItcHJvY2VlZC1tYXN0ZXItd2ViaG9vay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3Mvb3JkZXItcHJvY2VlZC1tYXN0ZXIvb3JkZXItcHJvY2VlZC1tYXN0ZXItd2ViaG9vay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxRUFJMkM7QUFFM0MseUdBQWlHO0FBQ2pHLDJHQUFrRztBQVFsRzs7OztHQUlHO0FBQ1UsUUFBQSxpQ0FBaUMsR0FBRyxJQUFBLDhCQUFjLEVBQzdELDhCQUE4QixFQUM5QixDQUFDLEtBQXFDLEVBQUUsRUFBRTtJQUN4QyxJQUFBLG9CQUFJLEVBQ0YscUNBQXFDLEVBQ3JDLEtBQUssRUFDTCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsS0FBSyxLQUFLLElBQUksQ0FBQyxDQUFDLFNBQVMsS0FBSyxRQUFRLENBQ3pELENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtRQUNWLE1BQU0sTUFBTSxHQUFHLElBQUEsd0VBQWdDLEVBQUM7WUFDOUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLElBQUk7U0FDOUIsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLGdDQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3RDLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBQSxvQkFBSSxFQUNGLDhCQUE4QixFQUM5QixLQUFLLEVBQ0wsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLEtBQUssUUFBUSxDQUNoQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7UUFDVixNQUFNLE1BQU0sR0FBRyxJQUFBLHlFQUFnQyxFQUFDO1lBQzlDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxJQUFJO1NBQzlCLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxnQ0FBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN0QyxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FDRixDQUFDIn0=
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createOrUpdateOrderProceedMaster = void 0;
4
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
5
+ const utils_1 = require("@medusajs/framework/utils");
6
+ const order_proceed_master_1 = require("../../../modules/order-proceed-master");
7
+ const framework_1 = require("@medusajs/framework");
8
+ exports.createOrUpdateOrderProceedMaster = (0, workflows_sdk_1.createStep)("create-or-update-order-proceed-master", async (input, { container }) => {
9
+ try {
10
+ const orderProceedMasterService = container.resolve(order_proceed_master_1.ORDER_PROCEED_MASTER_MODULE);
11
+ const erpService = container.resolve("erp");
12
+ const results = [];
13
+ for (const proceedId of input.order_proceed_ids) {
14
+ const proceedData = await erpService.getMasterData("order_proceed", String(proceedId));
15
+ if (!proceedData) {
16
+ framework_1.logger.info(`No order proceed data received for OrderProceedID ${proceedId}`);
17
+ continue;
18
+ }
19
+ const { OrderProceed: proceedRecords, OrderProceedDetail: detailRecords } = proceedData;
20
+ if (!Array.isArray(proceedRecords) || proceedRecords.length === 0) {
21
+ framework_1.logger.warn(`No OrderProceed records found for ID ${proceedId}`);
22
+ continue;
23
+ }
24
+ for (const proceed of proceedRecords) {
25
+ const existing = await orderProceedMasterService.listOrderProceedMasters({
26
+ erp_order_proceed_id: Number(proceed.OrderProceedId),
27
+ });
28
+ let master;
29
+ if (existing?.length > 0) {
30
+ framework_1.logger.info(`Updating OrderProceed ${proceed.OrderProceedId} - already exists.`);
31
+ master = existing[0];
32
+ await orderProceedMasterService.updateOrderProceedMasters({
33
+ id: master.id,
34
+ erp_order_proceed_id: proceed.OrderProceedId,
35
+ branch_no: proceed.BranchNo,
36
+ branch_name: proceed.BranchName,
37
+ order_proceed_date: proceed.OrderProceedDate,
38
+ order_proceed_prefix: proceed.OrderProceedPrefix,
39
+ order_proceed_no: proceed.OrderProceedNo,
40
+ party_no: proceed.PartyNo,
41
+ firm_name: proceed.FirmName,
42
+ remarks: proceed.Remarks || null,
43
+ });
44
+ }
45
+ else {
46
+ framework_1.logger.info(`Creating new OrderProceed ${proceed.OrderProceedId}.`);
47
+ master = await orderProceedMasterService.createOrderProceedMasters({
48
+ erp_order_proceed_id: proceed.OrderProceedId,
49
+ branch_no: proceed.BranchNo,
50
+ branch_name: proceed.BranchName,
51
+ order_proceed_date: proceed.OrderProceedDate,
52
+ order_proceed_prefix: proceed.OrderProceedPrefix,
53
+ order_proceed_no: proceed.OrderProceedNo,
54
+ party_no: proceed.PartyNo,
55
+ firm_name: proceed.FirmName,
56
+ remarks: proceed.Remarks || null,
57
+ });
58
+ }
59
+ // ─── Link to Medusa order (if available) ──────────────────────────────
60
+ // Phase 7: Attempt to resolve order_id via order_master lookup
61
+ if (proceed.OrderId) {
62
+ try {
63
+ const query = container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
64
+ const link = container.resolve("link");
65
+ const { data: orderMasters } = await query.graph({
66
+ entity: "order_master",
67
+ fields: ["*", "order.*"],
68
+ filters: { erp_order_id: String(proceed.OrderId) },
69
+ });
70
+ if (orderMasters?.length > 0) {
71
+ const medusaOrderId = orderMasters[0].order?.id;
72
+ if (medusaOrderId) {
73
+ // Update order_proceed_master with order_id
74
+ await orderProceedMasterService.updateOrderProceedMasters({
75
+ id: master.id,
76
+ order_id: medusaOrderId,
77
+ });
78
+ // Create link (if not exists)
79
+ try {
80
+ await link.create({
81
+ [order_proceed_master_1.ORDER_PROCEED_MASTER_MODULE]: { order_proceed_master_id: master.id },
82
+ [utils_1.Modules.ORDER]: { order_id: medusaOrderId },
83
+ });
84
+ framework_1.logger.info(`[OrderProceed] Linked order_proceed ${master.id} → order ${medusaOrderId}`);
85
+ }
86
+ catch (linkError) {
87
+ if (linkError?.code === "23505") {
88
+ framework_1.logger.info(`[OrderProceed] Link already exists`);
89
+ }
90
+ else {
91
+ throw linkError;
92
+ }
93
+ }
94
+ // Update fulfillment based on order_proceed_status
95
+ await updateOrderFulfillmentFromProceed(medusaOrderId, proceed, detailRecords, container);
96
+ }
97
+ }
98
+ }
99
+ catch (error) {
100
+ framework_1.logger.warn(`[OrderProceed] Could not link to order: ${error}`);
101
+ }
102
+ }
103
+ // Handle detail records
104
+ if (Array.isArray(detailRecords) && detailRecords.length > 0) {
105
+ const details = detailRecords
106
+ .filter((detail) => detail.OrderProceedId === proceed.OrderProceedId)
107
+ .map((detail) => ({
108
+ erp_order_proceed_id: detail.OrderProceedId,
109
+ order_proceed_item_id: detail.OrderProceedItemId,
110
+ order_id: detail.OrderId || null,
111
+ order_item_id: detail.OrderItemId || null,
112
+ jewel_id: detail.JewelId || null,
113
+ jewel_code: detail.JewelCode || null,
114
+ qty: detail.Qty,
115
+ order_proceed_status: detail.OrderProceedStatus || null,
116
+ }));
117
+ // Delete existing details
118
+ const existingDetails = await orderProceedMasterService.listOrderProceedDetailMasters({
119
+ erp_order_proceed_id: Number(proceed.OrderProceedId),
120
+ });
121
+ if (existingDetails?.length > 0) {
122
+ await Promise.all(existingDetails.map((detail) => orderProceedMasterService.deleteOrderProceedDetailMasters(detail.id)));
123
+ }
124
+ // Create new details
125
+ for (const detail of details) {
126
+ await orderProceedMasterService.createOrderProceedDetailMasters({
127
+ ...detail,
128
+ });
129
+ }
130
+ }
131
+ results.push(master);
132
+ }
133
+ }
134
+ return new workflows_sdk_1.StepResponse(results);
135
+ }
136
+ catch (error) {
137
+ framework_1.logger.error("Error in createOrUpdateOrderProceedMaster:", error);
138
+ throw error;
139
+ }
140
+ });
141
+ /**
142
+ * Helper: Update order fulfillment based on order_proceed_status
143
+ * When order proceeds with items, update the fulfillment status of those items in the order.
144
+ */
145
+ async function updateOrderFulfillmentFromProceed(medusaOrderId, proceed, detailRecords, container) {
146
+ try {
147
+ const query = container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
148
+ // Get order with fulfillment details
149
+ const { data: orders } = await query.graph({
150
+ entity: "order",
151
+ fields: ["*", "fulfillments.*", "items.*"],
152
+ filters: { id: medusaOrderId },
153
+ });
154
+ if (!orders?.length) {
155
+ framework_1.logger.warn(`[OrderProceed] Order ${medusaOrderId} not found for fulfillment update`);
156
+ return;
157
+ }
158
+ const order = orders[0];
159
+ const proceedDetails = detailRecords?.filter((detail) => detail.OrderProceedId === proceed.OrderProceedId) || [];
160
+ // If order_proceed_status is "completed", mark order as partially/fully fulfilled
161
+ if (proceed.OrderProceedStatus?.toLowerCase() === "completed" && proceedDetails.length > 0) {
162
+ // Count how many items have been proceeded
163
+ const proceedQtyMap = new Map();
164
+ for (const detail of proceedDetails) {
165
+ if (detail.OrderItemId) {
166
+ const current = proceedQtyMap.get(detail.OrderItemId) || 0;
167
+ proceedQtyMap.set(detail.OrderItemId, current + (detail.Qty || 0));
168
+ }
169
+ }
170
+ // Mark fulfillments as ready_to_ship if items match
171
+ for (const fulfillment of order.fulfillments || []) {
172
+ if (fulfillment.status === "not_fulfilled" ||
173
+ fulfillment.status === "partially_fulfilled") {
174
+ framework_1.logger.info(`[OrderProceed] Marking fulfillment ${fulfillment.id} as ready_to_ship`);
175
+ // Note: actual fulfillment update would be handled by Medusa workflows
176
+ // This is just informational logging for now
177
+ }
178
+ }
179
+ }
180
+ }
181
+ catch (error) {
182
+ framework_1.logger.warn(`[OrderProceed] Could not update order fulfillment: ${error?.message}`);
183
+ // Don't throw - fulfillment update is best-effort
184
+ }
185
+ }
186
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW9yLXVwZGF0ZS1vcmRlci1wcm9jZWVkLW1hc3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3Mvb3JkZXItcHJvY2VlZC1tYXN0ZXIvc3RlcHMvY3JlYXRlLW9yLXVwZGF0ZS1vcmRlci1wcm9jZWVkLW1hc3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxRUFBNkU7QUFDN0UscURBQStFO0FBRS9FLGdGQUFvRjtBQUNwRixtREFBNkM7QUFPaEMsUUFBQSxnQ0FBZ0MsR0FBRyxJQUFBLDBCQUFVLEVBQ3hELHVDQUF1QyxFQUN2QyxLQUFLLEVBQUUsS0FBd0MsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDaEUsSUFBSSxDQUFDO1FBQ0gsTUFBTSx5QkFBeUIsR0FBOEIsU0FBUyxDQUFDLE9BQU8sQ0FDNUUsa0RBQTJCLENBQzVCLENBQUM7UUFDRixNQUFNLFVBQVUsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBcUIsQ0FBQztRQUVoRSxNQUFNLE9BQU8sR0FBVSxFQUFFLENBQUM7UUFFMUIsS0FBSyxNQUFNLFNBQVMsSUFBSSxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUNoRCxNQUFNLFdBQVcsR0FBUSxNQUFNLFVBQVUsQ0FBQyxhQUFhLENBQ3JELGVBQWUsRUFDZixNQUFNLENBQUMsU0FBUyxDQUFDLENBQ2xCLENBQUM7WUFFRixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ2pCLGtCQUFNLENBQUMsSUFBSSxDQUNULHFEQUFxRCxTQUFTLEVBQUUsQ0FDakUsQ0FBQztnQkFDRixTQUFTO1lBQ1gsQ0FBQztZQUVELE1BQU0sRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFFLGFBQWEsRUFBRSxHQUN2RSxXQUFXLENBQUM7WUFFZCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMs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
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.deleteOrderProceedMasterByErpIds = void 0;
4
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
5
+ const order_proceed_master_1 = require("../../../modules/order-proceed-master");
6
+ const framework_1 = require("@medusajs/framework");
7
+ exports.deleteOrderProceedMasterByErpIds = (0, workflows_sdk_1.createStep)("delete-order-proceed-master-by-erp-ids", async (input, { container }) => {
8
+ try {
9
+ const orderProceedMasterService = container.resolve(order_proceed_master_1.ORDER_PROCEED_MASTER_MODULE);
10
+ for (const proceedId of input.order_proceed_ids) {
11
+ const existing = await orderProceedMasterService.listOrderProceedMasters({
12
+ erp_order_proceed_id: Number(proceedId),
13
+ });
14
+ if (existing?.length > 0) {
15
+ framework_1.logger.info(`Deleting OrderProceed ${proceedId}.`);
16
+ await Promise.all(existing.map((record) => orderProceedMasterService.deleteOrderProceedMasters(record.id)));
17
+ }
18
+ }
19
+ return new workflows_sdk_1.StepResponse({
20
+ deletedCount: input.order_proceed_ids.length,
21
+ });
22
+ }
23
+ catch (error) {
24
+ framework_1.logger.error("Error in deleteOrderProceedMasterByErpIds:", error);
25
+ throw error;
26
+ }
27
+ });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLW9yZGVyLXByb2NlZWQtbWFzdGVyLWJ5LWVycC1pZHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL29yZGVyLXByb2NlZWQtbWFzdGVyL3N0ZXBzL2RlbGV0ZS1vcmRlci1wcm9jZWVkLW1hc3Rlci1ieS1lcnAtaWRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUU3RSxnRkFBb0Y7QUFDcEYsbURBQTZDO0FBTWhDLFFBQUEsZ0NBQWdDLEdBQUcsSUFBQSwwQkFBVSxFQUN4RCx3Q0FBd0MsRUFDeEMsS0FBSyxFQUFFLEtBQWdELEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFO0lBQ3hFLElBQUksQ0FBQztRQUNILE1BQU0seUJBQXlCLEdBQThCLFNBQVMsQ0FBQyxPQUFPLENBQzVFLGtEQUEyQixDQUM1QixDQUFDO1FBRUYsS0FBSyxNQUFNLFNBQVMsSUFBSSxLQUFLLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUNoRCxNQUFNLFFBQVEsR0FBRyxNQUFNLHlCQUF5QixDQUFDLHVCQUF1QixDQUFDO2dCQUN2RSxvQkFBb0IsRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDO2FBQ3hDLENBQUMsQ0FBQztZQUVILElBQUksUUFBUSxFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDekIsa0JBQU0sQ0FBQyxJQUFJLENBQUMseUJBQXlCLFNBQVMsR0FBRyxDQUFDLENBQUM7Z0JBQ25ELE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDZixRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBVyxFQUFFLEVBQUUsQ0FDM0IseUJBQXlCLENBQUMseUJBQXlCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUMvRCxDQUNGLENBQUM7WUFDSixDQUFDO1FBQ0gsQ0FBQztRQUVELE9BQU8sSUFBSSw0QkFBWSxDQUFDO1lBQ3RCLFlBQVksRUFBRSxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTTtTQUM3QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLGtCQUFNLENBQUMsS0FBSyxDQUFDLDRDQUE0QyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2xFLE1BQU0sS0FBSyxDQUFDO0lBQ2QsQ0FBQztBQUNILENBQUMsQ0FDRixDQUFDIn0=
@@ -0,0 +1,218 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createSaleForOrderStep = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
6
+ const order_helper_1 = require("../utils/order-helper");
7
+ const framework_1 = require("@medusajs/framework");
8
+ const ORDER_FIELDS = [
9
+ "id",
10
+ "*",
11
+ "customer_id",
12
+ "currency_code",
13
+ "total",
14
+ "subtotal",
15
+ "tax_total",
16
+ "discount_total",
17
+ "discount_subtotal",
18
+ "metadata",
19
+ "shipping_address.*",
20
+ "billing_address.*",
21
+ "items.*",
22
+ "items.variant.*",
23
+ "items.variant.extended_variant.*",
24
+ "payment_collections.*",
25
+ "payment_collections.payments.*",
26
+ ];
27
+ const PAYMENT_PROVIDER_MAP = {
28
+ pp_cash_cash: "cash",
29
+ pp_cheque_cheque: "cheque",
30
+ pp_bank_transfer_bank_transfer: "bank",
31
+ pp_gokwik_gokwik: "payu",
32
+ pp_razorpay_razorpay: "razorpay",
33
+ pp_wallet_wallet: "wallet",
34
+ "pp_worldline-pos_worldline_pos": "pos",
35
+ };
36
+ function buildPaymentOption(payment_collections, payment_info) {
37
+ return payment_collections.map((paymentItem) => {
38
+ const provider = PAYMENT_PROVIDER_MAP[paymentItem.provider_id];
39
+ let book_name = "";
40
+ let remarks = "";
41
+ if (provider === "pos") {
42
+ const posType = paymentItem.data?.pos_type || "";
43
+ book_name =
44
+ payment_info?.find((b) => b.book_name?.toLowerCase()?.includes(posType.toLowerCase()))?.book_name || "";
45
+ const otherFields = { ...paymentItem.data };
46
+ delete otherFields.amount;
47
+ delete otherFields.session_id;
48
+ const worldlineData = otherFields?.worldline_pos;
49
+ if (worldlineData?.verification_response) {
50
+ const vr = worldlineData.verification_response;
51
+ remarks = [
52
+ `pos_id: ${otherFields.pos_id || ""}`,
53
+ `pos_type: ${otherFields.pos_type || ""}`,
54
+ `transaction_id: ${vr.rrn || vr.transaction_id || ""}`,
55
+ `response_code: ${vr.response_code || ""}`,
56
+ `status: ${vr.status || ""}`,
57
+ ]
58
+ .filter((s) => !s.endsWith(": "))
59
+ .join(", ");
60
+ }
61
+ else {
62
+ remarks = Object.entries(otherFields)
63
+ .filter(([, v]) => v !== "")
64
+ .map(([k, v]) => `${k}: ${v}`)
65
+ .join(", ");
66
+ }
67
+ }
68
+ else if (provider === "wallet") {
69
+ book_name = "Wallet Balance";
70
+ remarks = Object.entries(paymentItem.data || {})
71
+ .filter(([, v]) => v !== "")
72
+ .map(([k, v]) => `${k}: ${typeof v === "object" ? JSON.stringify(v) : String(v)}`)
73
+ .join(", ");
74
+ }
75
+ else {
76
+ if (provider === "payu") {
77
+ const paymentMethod = paymentItem.data?.body?.payment_details?.payment_method ||
78
+ paymentItem.data?.payment_details?.payment_method;
79
+ if (paymentMethod === "cod")
80
+ return null;
81
+ }
82
+ book_name =
83
+ payment_info?.find((b) => b.book_name?.toLowerCase()?.includes(provider))?.book_name || "";
84
+ const otherFields = { ...paymentItem.data };
85
+ delete otherFields.amount;
86
+ delete otherFields.session_id;
87
+ delete otherFields?.cart_id;
88
+ delete otherFields?.billing_address;
89
+ delete otherFields?.shipping_address;
90
+ remarks = Object.entries(otherFields)
91
+ .filter(([, v]) => v !== "")
92
+ .map(([k, v]) => `${k}: ${typeof v === "object" ? JSON.stringify(v) : String(v)}`)
93
+ .join(", ");
94
+ }
95
+ return {
96
+ OrderId: 0,
97
+ BookName: book_name || "Razorpay Receipt - Self/Shiv.Adi.",
98
+ Amount: Number(paymentItem.amount) || 0,
99
+ Remarks: remarks ? JSON.stringify(remarks) : "",
100
+ };
101
+ });
102
+ }
103
+ exports.createSaleForOrderStep = (0, workflows_sdk_1.createStep)("create-sale-for-order-step", async ({ order_id }, { container }) => {
104
+ const query = container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
105
+ const extOrderService = container.resolve("extended_order");
106
+ // Idempotency: if sale already created, return existing data
107
+ const [extOrder] = await extOrderService.listExtendedOrders({ order_id });
108
+ if (!extOrder) {
109
+ throw new utils_1.MedusaError(utils_1.MedusaError.Types.NOT_FOUND, `Extended order not found for order_id=${order_id}`);
110
+ }
111
+ if (extOrder.sale_invoice_no) {
112
+ framework_1.logger.info(`[CreateSale] Sale already exists for order ${order_id}: ${extOrder.sale_invoice_no}`);
113
+ return new workflows_sdk_1.StepResponse({
114
+ sale_invoice_no: extOrder.sale_invoice_no,
115
+ already_exists: true,
116
+ });
117
+ }
118
+ // Fetch order
119
+ const { data: orders } = await query.graph({
120
+ entity: "order",
121
+ fields: ORDER_FIELDS,
122
+ filters: { id: order_id },
123
+ });
124
+ const order = orders?.[0];
125
+ if (!order)
126
+ throw new utils_1.MedusaError(utils_1.MedusaError.Types.NOT_FOUND, `Order ${order_id} not found`);
127
+ // Fetch customer
128
+ const { data: [customer], } = await query.graph({
129
+ entity: "customer",
130
+ fields: ["*", "extended_customer.*"],
131
+ filters: { id: order.customer_id || "" },
132
+ });
133
+ const branch_no = order?.metadata?.branch_no || "";
134
+ // Fetch branch_data
135
+ const { data: [branch_data], } = await query.graph({
136
+ entity: "party_master",
137
+ fields: ["*"],
138
+ filters: { branch_no, is_location: true },
139
+ });
140
+ // Fetch party_master
141
+ const ownerMobile = customer?.phone?.replace("+91", "") || "";
142
+ const { data: partyData } = await query.graph({
143
+ entity: "party_master",
144
+ fields: ["*"],
145
+ filters: { owner_mobile: ownerMobile, is_main_client: true },
146
+ });
147
+ // Fetch payment_info and build payment_option
148
+ const { data: payment_info } = await query.graph({
149
+ entity: "payment_book_master",
150
+ fields: ["id", "book_name"],
151
+ filters: { branch_no: branch_data?.branch_no ?? "", type: "order" },
152
+ });
153
+ const payment_collections = order?.payment_collections?.[0]?.payments ?? [];
154
+ const payment_option = buildPaymentOption(payment_collections, payment_info);
155
+ // Fetch promocode_data
156
+ const { data: [promocode_series_master], } = await query.graph({
157
+ entity: "promocode_series_master",
158
+ fields: ["promocode_series_id", "promocode_master_id", "promocode"],
159
+ filters: { promocode: order?.metadata?.discount?.code || "" },
160
+ });
161
+ const { data: [promocode_master], } = await query.graph({
162
+ entity: "promocode_master",
163
+ fields: ["per_amt_on", "per_amt_value"],
164
+ filters: { id: promocode_series_master?.promocode_master_id || "" },
165
+ });
166
+ const promocode_data = {
167
+ promocode_series_id: promocode_series_master?.promocode_series_id || 0,
168
+ promocode: promocode_series_master?.promocode || "",
169
+ promocode_percentage: promocode_series_master?.promocode && promocode_master?.per_amt_on
170
+ ? 0
171
+ : promocode_master?.per_amt_value || 0,
172
+ promocode_amount: promocode_series_master?.promocode && promocode_master?.per_amt_on
173
+ ? promocode_master?.per_amt_value || 0
174
+ : 0,
175
+ };
176
+ // Validate all items in inward_master
177
+ const itemsWithJewelCode = (order.items || []).filter((item) => item.variant_barcode);
178
+ if (itemsWithJewelCode.length > 0 && branch_data?.branch_no) {
179
+ const checks = await Promise.all(itemsWithJewelCode.map(async (item) => {
180
+ const { data: [inward], } = await query.graph({
181
+ entity: "inward_master",
182
+ fields: ["jewel_code", "branch_no"],
183
+ filters: {
184
+ jewel_code: item.variant_barcode,
185
+ branch_no: branch_data.branch_no,
186
+ },
187
+ });
188
+ return !!inward;
189
+ }));
190
+ if (!checks.every(Boolean)) {
191
+ throw new utils_1.MedusaError(utils_1.MedusaError.Types.NOT_ALLOWED, "One or more items not found in inward_master for this branch");
192
+ }
193
+ }
194
+ // Build sale payload and call ERP
195
+ const salePayload = (0, order_helper_1.buildSaleData)(order, customer, partyData[0], promocode_data, payment_option.filter(Boolean), branch_data);
196
+ framework_1.logger.info(`[CreateSale] FULL salePayload: ${JSON.stringify(salePayload)}`);
197
+ const erpModuleService = container.resolve("erp");
198
+ const saleResponse = await erpModuleService.createSale(salePayload, "POS");
199
+ framework_1.logger.info(`[CreateSale] FULL ERP response: ${JSON.stringify(saleResponse)}`);
200
+ if (saleResponse?.status !== true || !saleResponse?.data?.JewelTransId) {
201
+ throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNEXPECTED_STATE, saleResponse?.message || "ERP sale creation failed");
202
+ }
203
+ const { JewelTransId, JewelTransPrefix, JewelTransNo } = saleResponse.data;
204
+ const saleInvoiceNo = [JewelTransPrefix, JewelTransNo].filter(Boolean).join("-") ||
205
+ String(JewelTransId);
206
+ // Update extended_order with sale_external_id and sale_invoice_no
207
+ await extOrderService.updateExtendedOrders({
208
+ id: extOrder.id,
209
+ sale_external_id: String(JewelTransId),
210
+ sale_invoice_no: saleInvoiceNo,
211
+ });
212
+ framework_1.logger.info(`[CreateSale] Updated extended_order ${extOrder.id}: sale_external_id=${JewelTransId}, sale_invoice_no=${saleInvoiceNo}`);
213
+ return new workflows_sdk_1.StepResponse({
214
+ sale_invoice_no: saleInvoiceNo,
215
+ already_exists: false,
216
+ });
217
+ });
218
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXNhbGUtZm9yLW9yZGVyLXN0ZXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL29yZGVycy9zdGVwcy9jcmVhdGUtc2FsZS1mb3Itb3JkZXItc3RlcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxREFJbUM7QUFDbkMscUVBQTZFO0FBRTdFLHdEQUFzRDtBQUN0RCxtREFBNkM7QUFJN0MsTUFBTSxZQUFZLEdBQUc7SUFDbkIsSUFBSTtJQUNKLEdBQUc7SUFDSCxhQUFhO0lBQ2IsZUFBZTtJQUNmLE9BQU87SUFDUCxVQUFVO0lBQ1YsV0FBVztJQUNYLGdCQUFnQjtJQUNoQixtQkFBbUI7SUFDbkIsVUFBVTtJQUNWLG9CQUFvQjtJQUNwQixtQkFBbUI7SUFDbkIsU0FBUztJQUNULGlCQUFpQjtJQUNqQixrQ0FBa0M7SUFDbEMsdUJBQXVCO0lBQ3ZCLGdDQUFnQztDQUNqQyxDQUFDO0FBRUYsTUFBTSxvQkFBb0IsR0FBMkI7SUFDbkQsWUFBWSxFQUFFLE1BQU07SUFDcEIsZ0JBQWdCLEVBQUUsUUFBUTtJQUMxQiw4QkFBOEIsRUFBRSxNQUFNO0lBQ3RDLGdCQUFnQixFQUFFLE1BQU07SUFDeEIsb0JBQW9CLEVBQUUsVUFBVTtJQUNoQyxnQkFBZ0IsRUFBRSxRQUFRO0lBQzFCLGdDQUFnQyxFQUFFLEtBQUs7Q0FDeEMsQ0FBQztBQUVGLFNBQVMsa0JBQWtCLENBQUMsbUJBQTBCLEVBQUUsWUFBbUI7SUFDekUsT0FBTyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxXQUFnQixFQUFFLEVBQUU7UUFDbEQsTUFBTSxRQUFRLEdBQUcsb0JBQW9CLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQy9ELElBQUksU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNuQixJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFFakIsSUFBSSxRQUFRLEtBQUssS0FBSyxFQUFFLENB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