@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.
- package/.medusa/server/src/admin/index.js +3 -1
- package/.medusa/server/src/admin/index.mjs +3 -1
- package/.medusa/server/src/api/admin/erp-event/query-config.js +8 -1
- package/.medusa/server/src/api/admin/generate-invoice/route.js +158 -0
- package/.medusa/server/src/api/admin/masters/utils.js +29 -1
- package/.medusa/server/src/api/admin/masters/validators.js +2 -2
- package/.medusa/server/src/api/admin/variant-options/recalculate/route.js +446 -0
- package/.medusa/server/src/api/admin/variant-options/sync/route.js +21 -5
- package/.medusa/server/src/api/erp/webhook/config.js +73 -5
- package/.medusa/server/src/api/erp/webhook/route.js +10 -137
- package/.medusa/server/src/api/erp/webhook/utils.js +8 -1
- package/.medusa/server/src/api/pos/customer-ledger/middleware.js +13 -0
- package/.medusa/server/src/api/pos/customer-ledger/route.js +50 -0
- package/.medusa/server/src/api/pos/generate-invoice/route.js +164 -0
- package/.medusa/server/src/api/pos/gold/calculate/route.js +104 -0
- package/.medusa/server/src/api/pos/gold/item-master-purity.js +46 -0
- package/.medusa/server/src/api/pos/gold/middleware.js +18 -0
- package/.medusa/server/src/api/pos/gold/route.js +83 -0
- package/.medusa/server/src/api/pos/gold-rate/route.js +37 -24
- package/.medusa/server/src/api/pos/middleware.js +13 -1
- package/.medusa/server/src/api/pos/old-gold-item/middleware.js +10 -0
- package/.medusa/server/src/api/pos/old-gold-item/route.js +52 -0
- package/.medusa/server/src/api/pos/platinumdata/middleware.js +13 -0
- package/.medusa/server/src/api/pos/platinumdata/route.js +41 -0
- package/.medusa/server/src/api/pos/silverdata/middleware.js +13 -0
- package/.medusa/server/src/api/pos/silverdata/route.js +41 -0
- package/.medusa/server/src/api/pos/wallet-balance/middleware.js +13 -0
- package/.medusa/server/src/api/pos/wallet-balance/route.js +68 -0
- package/.medusa/server/src/api/store/custom-price/validators.js +2 -2
- package/.medusa/server/src/api/store/customer-ledger/middleware.js +13 -0
- package/.medusa/server/src/api/store/customer-ledger/route.js +49 -0
- package/.medusa/server/src/api/store/gold-rate/validators.js +2 -2
- package/.medusa/server/src/api/store/middleware.js +5 -1
- package/.medusa/server/src/api/store/wallet-balance/middleware.js +13 -0
- package/.medusa/server/src/api/store/wallet-balance/route.js +67 -0
- package/.medusa/server/src/jobs/process-erp-events.js +128 -0
- package/.medusa/server/src/jobs/process-variant-option-sync.js +46 -29
- package/.medusa/server/src/jobs/sync-addless-detail.js +68 -0
- package/.medusa/server/src/jobs/sync-book-list-and-applicable-policy.js +97 -0
- package/.medusa/server/src/jobs/sync-customer-advance-payment-erp.js +105 -0
- package/.medusa/server/src/jobs/sync-customer-erp.js +128 -0
- package/.medusa/server/src/jobs/sync-item-master.js +29 -0
- package/.medusa/server/src/jobs/sync-labour-chart-master.js +29 -0
- package/.medusa/server/src/jobs/sync-order-erp.js +46 -20
- package/.medusa/server/src/jobs/sync-order-request-erp.js +64 -0
- package/.medusa/server/src/jobs/sync-payment-book-master.js +78 -0
- package/.medusa/server/src/jobs/sync-rate-chart-master.js +29 -0
- package/.medusa/server/src/jobs/sync-report-master.js +54 -0
- package/.medusa/server/src/jobs/sync-sale-return-policy-master.js +38 -0
- package/.medusa/server/src/jobs/sync-urd-purchase-erp.js +84 -0
- package/.medusa/server/src/lib/api-response.js +2 -1
- package/.medusa/server/src/links/jewel-trans-master.js +13 -0
- package/.medusa/server/src/links/order-master.js +13 -0
- package/.medusa/server/src/links/sale-master.js +13 -0
- package/.medusa/server/src/modules/addless-detail/index.js +13 -0
- package/.medusa/server/src/modules/addless-detail/migrations/Migration20260212101102.js +15 -0
- package/.medusa/server/src/modules/addless-detail/migrations/Migration20260213000000.js +47 -0
- package/.medusa/server/src/modules/addless-detail/migrations/Migration20260226053037.js +15 -0
- package/.medusa/server/src/modules/addless-detail/models/addless-master.js +17 -0
- package/.medusa/server/src/modules/addless-detail/service.js +10 -0
- package/.medusa/server/src/modules/applicable-sale-return-policy/index.js +13 -0
- package/.medusa/server/src/modules/applicable-sale-return-policy/migrations/Migration20260123083526.js +15 -0
- package/.medusa/server/src/modules/applicable-sale-return-policy/models/applicable-sale-return-policy.js +23 -0
- package/.medusa/server/src/modules/applicable-sale-return-policy/service.js +10 -0
- package/.medusa/server/src/modules/book-list/index.js +13 -0
- package/.medusa/server/src/modules/book-list/migrations/Migration20260123083525.js +15 -0
- package/.medusa/server/src/modules/book-list/migrations/Migration20260401051011.js +14 -0
- package/.medusa/server/src/modules/book-list/models/book-list.js +13 -0
- package/.medusa/server/src/modules/book-list/service.js +10 -0
- package/.medusa/server/src/modules/category-group-master/migrations/Migration20250729035221.js +2 -2
- package/.medusa/server/src/modules/category-group-master/migrations/Migration20251031061116.js +2 -2
- package/.medusa/server/src/modules/category-group-master/migrations/Migration20251104045912.js +2 -2
- package/.medusa/server/src/modules/category-master/migrations/Migration20250513122212.js +2 -2
- package/.medusa/server/src/modules/category-master/migrations/Migration20250519180539.js +2 -2
- package/.medusa/server/src/modules/category-master/migrations/Migration20250531004724.js +2 -2
- package/.medusa/server/src/modules/category-master/migrations/Migration20250729040659.js +2 -2
- package/.medusa/server/src/modules/category-master/migrations/Migration20251031061327.js +2 -2
- package/.medusa/server/src/modules/category-master/migrations/Migration20251104045755.js +2 -2
- package/.medusa/server/src/modules/collection-group-master/migrations/Migration20250531022203.js +2 -2
- package/.medusa/server/src/modules/collection-group-master/migrations/Migration20251031061432.js +2 -2
- package/.medusa/server/src/modules/collection-group-master/migrations/Migration20251104050102.js +2 -2
- package/.medusa/server/src/modules/collection-master/migrations/Migration20250513122211.js +2 -2
- package/.medusa/server/src/modules/collection-master/migrations/Migration20250531025048.js +2 -2
- package/.medusa/server/src/modules/collection-master/migrations/Migration20251031060941.js +2 -2
- package/.medusa/server/src/modules/collection-master/migrations/Migration20251104050012.js +2 -2
- package/.medusa/server/src/modules/customer-receive-voucher/index.js +13 -0
- package/.medusa/server/src/modules/customer-receive-voucher/migrations/Migration20250115000000.js +51 -0
- package/.medusa/server/src/modules/customer-receive-voucher/migrations/Migration20260106050934.js +18 -0
- package/.medusa/server/src/modules/customer-receive-voucher/models/customer-receive-voucher.js +35 -0
- package/.medusa/server/src/modules/customer-receive-voucher/service.js +10 -0
- package/.medusa/server/src/modules/discount-master/migrations/Migration20250707232514.js +2 -2
- package/.medusa/server/src/modules/discount-master/migrations/Migration20250708051709.js +2 -2
- package/.medusa/server/src/modules/discount-master/migrations/Migration20250708051737.js +2 -2
- package/.medusa/server/src/modules/discount-master/migrations/Migration20251031061523.js +2 -2
- package/.medusa/server/src/modules/discount-master/migrations/Migration20251104050153.js +2 -2
- package/.medusa/server/src/modules/erp/migrations/Migration20250513121436.js +2 -2
- package/.medusa/server/src/modules/erp/service.js +611 -8
- package/.medusa/server/src/modules/erp-event/migrations/Migration20250908040911.js +2 -2
- package/.medusa/server/src/modules/erp-event/migrations/Migration20250922095956.js +2 -2
- package/.medusa/server/src/modules/erp-event/migrations/Migration20260529052734.js +14 -0
- package/.medusa/server/src/modules/erp-event/models/erp-event.js +6 -1
- package/.medusa/server/src/modules/extended-product/migrations/Migration20250620030100.js +2 -2
- package/.medusa/server/src/modules/extended-product/migrations/Migration20250716041546.js +2 -2
- package/.medusa/server/src/modules/extended-product/migrations/Migration20251103182726.js +2 -2
- package/.medusa/server/src/modules/extended-product/migrations/Migration20251119062526.js +2 -2
- package/.medusa/server/src/modules/extended-product/migrations/Migration20251202055742.js +2 -2
- package/.medusa/server/src/modules/extended-product/migrations/Migration20251202064200.js +2 -2
- package/.medusa/server/src/modules/extended-product/migrations/Migration20260323103543.js +14 -0
- package/.medusa/server/src/modules/extended-product/models/extended-product.js +2 -1
- package/.medusa/server/src/modules/extended-product/service.js +37 -1
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250620030335.js +2 -2
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250620030522.js +2 -2
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250629220100.js +2 -2
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250629223425.js +2 -2
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250704064831.js +2 -2
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250716121609.js +2 -2
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250725104852.js +2 -2
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250726232339.js +2 -2
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250916065103.js +2 -2
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20251119063328.js +2 -2
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20251120045708.js +2 -2
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20251120051832.js +2 -2
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20251120052514.js +2 -2
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20251202055952.js +2 -2
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20251210112341.js +18 -0
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20260616000001.js +14 -0
- package/.medusa/server/src/modules/extended-variant/models/extended-variant.js +4 -2
- package/.medusa/server/src/modules/extended-variant/service.js +37 -1
- package/.medusa/server/src/modules/item-master/index.js +13 -0
- package/.medusa/server/src/modules/item-master/migrations/Migration20260212101055.js +15 -0
- package/.medusa/server/src/modules/item-master/models/item-master.js +20 -0
- package/.medusa/server/src/modules/item-master/service.js +10 -0
- package/.medusa/server/src/modules/item-size-master/migrations/Migration20251031111036.js +2 -2
- package/.medusa/server/src/modules/jewel-trans-master/index.js +13 -0
- package/.medusa/server/src/modules/jewel-trans-master/migrations/Migration20260226053036.js +57 -0
- package/.medusa/server/src/modules/jewel-trans-master/models/jewel-trans-master.js +151 -0
- package/.medusa/server/src/modules/jewel-trans-master/service.js +16 -0
- package/.medusa/server/src/modules/labour-chart-master/index.js +13 -0
- package/.medusa/server/src/modules/labour-chart-master/migrations/Migration20260101081502.js +15 -0
- package/.medusa/server/src/modules/labour-chart-master/models/labour-chart-master.js +16 -0
- package/.medusa/server/src/modules/labour-chart-master/service.js +10 -0
- package/.medusa/server/src/modules/material-purchase-master/index.js +13 -0
- package/.medusa/server/src/modules/material-purchase-master/migrations/Migration20260310090700.js +18 -0
- package/.medusa/server/src/modules/material-purchase-master/models/material-purchase-detail-line.js +24 -0
- package/.medusa/server/src/modules/material-purchase-master/models/material-purchase-master.js +21 -0
- package/.medusa/server/src/modules/material-purchase-master/service.js +12 -0
- package/.medusa/server/src/modules/order-master/index.js +13 -0
- package/.medusa/server/src/modules/order-master/migrations/Migration20260226053036.js +29 -0
- package/.medusa/server/src/modules/order-master/migrations/Migration20260303000001.js +30 -0
- package/.medusa/server/src/modules/order-master/migrations/Migration20260319094758.js +26 -0
- package/.medusa/server/src/modules/order-master/migrations/Migration20260320000001.js +19 -0
- package/.medusa/server/src/modules/order-master/models/order-master.js +112 -0
- package/.medusa/server/src/modules/order-master/service.js +13 -0
- package/.medusa/server/src/modules/order-proceed-master/index.js +13 -0
- package/.medusa/server/src/modules/order-proceed-master/migrations/Migration20260327100226.js +31 -0
- package/.medusa/server/src/modules/order-proceed-master/models/order-proceed-master.js +38 -0
- package/.medusa/server/src/modules/order-proceed-master/service.js +11 -0
- package/.medusa/server/src/modules/party-master/migrations/Migration20250604104235.js +2 -2
- package/.medusa/server/src/modules/party-master/migrations/Migration20250604115453.js +2 -2
- package/.medusa/server/src/modules/party-master/migrations/Migration20250604120348.js +2 -2
- package/.medusa/server/src/modules/party-master/migrations/Migration20250604120701.js +2 -2
- package/.medusa/server/src/modules/party-master/migrations/Migration20250608220924.js +2 -2
- package/.medusa/server/src/modules/party-master/migrations/Migration20250612225738.js +2 -2
- package/.medusa/server/src/modules/party-master/migrations/Migration20250612231031.js +2 -2
- package/.medusa/server/src/modules/party-master/migrations/Migration20250708123734.js +2 -2
- package/.medusa/server/src/modules/party-master/migrations/Migration20251031061657.js +2 -2
- package/.medusa/server/src/modules/party-master/migrations/Migration20251104050242.js +2 -2
- package/.medusa/server/src/modules/payment-book-master/index.js +13 -0
- package/.medusa/server/src/modules/payment-book-master/migrations/Migration20251203105358.js +15 -0
- package/.medusa/server/src/modules/payment-book-master/models/payment-book-master.js +12 -0
- package/.medusa/server/src/modules/payment-book-master/service.js +10 -0
- package/.medusa/server/src/modules/promocode-master/migrations/Migration20250819123821.js +2 -2
- package/.medusa/server/src/modules/promocode-master/migrations/Migration20250918095713.js +2 -2
- package/.medusa/server/src/modules/promocode-master/migrations/Migration20251031061829.js +2 -2
- package/.medusa/server/src/modules/promocode-master/migrations/Migration20251104050332.js +2 -2
- package/.medusa/server/src/modules/quality-master/migrations/Migration20251031095211.js +2 -2
- package/.medusa/server/src/modules/quality-master/migrations/Migration20251105045114.js +2 -2
- package/.medusa/server/src/modules/rate-chart-master/index.js +13 -0
- package/.medusa/server/src/modules/rate-chart-master/migrations/Migration20260101081500.js +15 -0
- package/.medusa/server/src/modules/rate-chart-master/models/rate-chart-master.js +13 -0
- package/.medusa/server/src/modules/rate-chart-master/service.js +10 -0
- package/.medusa/server/src/modules/raw-master/migrations/Migration20250509190057.js +2 -2
- package/.medusa/server/src/modules/raw-master/migrations/Migration20250509190322.js +2 -2
- package/.medusa/server/src/modules/raw-master/migrations/Migration20251031061912.js +2 -2
- package/.medusa/server/src/modules/receive-voucher-master/index.js +13 -0
- package/.medusa/server/src/modules/receive-voucher-master/migrations/Migration20260328053649.js +16 -0
- package/.medusa/server/src/modules/receive-voucher-master/models/receive-voucher-master.js +27 -0
- package/.medusa/server/src/modules/receive-voucher-master/service.js +10 -0
- package/.medusa/server/src/modules/report-master/index.js +13 -0
- package/.medusa/server/src/modules/report-master/migrations/Migration20260121060955.js +15 -0
- package/.medusa/server/src/modules/report-master/migrations/Migration20260121112624.js +15 -0
- package/.medusa/server/src/modules/report-master/models/report-master.js +12 -0
- package/.medusa/server/src/modules/report-master/service.js +10 -0
- package/.medusa/server/src/modules/sale-master/index.js +13 -0
- package/.medusa/server/src/modules/sale-master/migrations/Migration20260205092935.js +15 -0
- package/.medusa/server/src/modules/sale-master/migrations/Migration20260205100000.js +16 -0
- package/.medusa/server/src/modules/sale-master/models/sale-master.js +27 -0
- package/.medusa/server/src/modules/sale-master/service.js +10 -0
- package/.medusa/server/src/modules/sale-return-master/index.js +13 -0
- package/.medusa/server/src/modules/sale-return-master/migrations/Migration20260205093034.js +15 -0
- package/.medusa/server/src/modules/sale-return-master/migrations/Migration20260327084135.js +14 -0
- package/.medusa/server/src/modules/sale-return-master/models/sale-return-master.js +18 -0
- package/.medusa/server/src/modules/sale-return-master/service.js +10 -0
- package/.medusa/server/src/modules/sale-return-policy-master/index.js +13 -0
- package/.medusa/server/src/modules/sale-return-policy-master/migrations/Migration20260105061449.js +21 -0
- package/.medusa/server/src/modules/sale-return-policy-master/migrations/Migration20260129084920.js +14 -0
- package/.medusa/server/src/modules/sale-return-policy-master/migrations/Migration20260129085620.js +20 -0
- package/.medusa/server/src/modules/sale-return-policy-master/models/sale-return-policy-master.js +37 -0
- package/.medusa/server/src/modules/sale-return-policy-master/service.js +12 -0
- package/.medusa/server/src/modules/shape-master/migrations/Migration20250509174455.js +2 -2
- package/.medusa/server/src/modules/shape-master/migrations/Migration20251031062019.js +2 -2
- package/.medusa/server/src/modules/shipping-info-master/migrations/Migration20250713113247.js +2 -2
- package/.medusa/server/src/modules/shipping-info-master/migrations/Migration20250713121440.js +2 -2
- package/.medusa/server/src/modules/shipping-info-master/migrations/Migration20251031062128.js +2 -2
- package/.medusa/server/src/modules/shipping-info-master/migrations/Migration20251104050501.js +2 -2
- package/.medusa/server/src/modules/shipping-info-master/migrations/Migration20251203083315.js +2 -2
- package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250513115356.js +2 -2
- package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250519180538.js +2 -2
- package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250531010409.js +2 -2
- package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250730025135.js +2 -2
- package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250730025307.js +2 -2
- package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250730032130.js +2 -2
- package/.medusa/server/src/modules/sub-category-master/migrations/Migration20251031062303.js +2 -2
- package/.medusa/server/src/modules/sub-category-master/migrations/Migration20251104050743.js +2 -2
- package/.medusa/server/src/modules/tone-master/migrations/Migration20251031104320.js +2 -2
- package/.medusa/server/src/modules/variant-option-sync-queue/migrations/Migration20251101082220.js +2 -2
- package/.medusa/server/src/modules/variant-option-sync-queue/migrations/Migration20251103123857.js +2 -2
- package/.medusa/server/src/subscribers/cutomer-updated.js +3 -1
- package/.medusa/server/src/subscribers/erp-batch-processor.js +147 -0
- package/.medusa/server/src/subscribers/order-item-update.js +11 -0
- package/.medusa/server/src/subscribers/party-master.js +39 -35
- package/.medusa/server/src/subscribers/product-sync.js +1 -1
- package/.medusa/server/src/subscribers/product-variant-deleted.js +27 -0
- package/.medusa/server/src/subscribers/shipping-info-master.js +10 -4
- package/.medusa/server/src/utils/build-redis-key.js +3 -1
- package/.medusa/server/src/utils/erp-health.js +24 -0
- package/.medusa/server/src/utils/state-helper.js +3 -2
- package/.medusa/server/src/workflows/addless-detail/index.js +11 -0
- package/.medusa/server/src/workflows/addless-detail/steps/create-or-update-addless-detail.js +36 -0
- package/.medusa/server/src/workflows/addless-detail/steps/fetch-addless-detail.js +73 -0
- package/.medusa/server/src/workflows/applicable-sale-return-policy/index.js +11 -0
- package/.medusa/server/src/workflows/applicable-sale-return-policy/steps/create-or-update-applicable-sale-return-policy.js +74 -0
- package/.medusa/server/src/workflows/applicable-sale-return-policy/steps/fetch-applicable-sale-return-policy.js +64 -0
- package/.medusa/server/src/workflows/book-list/index.js +11 -0
- package/.medusa/server/src/workflows/book-list/steps/create-or-update-book-list.js +59 -0
- package/.medusa/server/src/workflows/book-list/steps/fetch-book-list.js +64 -0
- package/.medusa/server/src/workflows/create-extended-product-from-product/index.js +9 -8
- package/.medusa/server/src/workflows/create-extended-variant-from-variant/index.js +9 -18
- package/.medusa/server/src/workflows/customer-advance-payment/index.js +18 -0
- package/.medusa/server/src/workflows/customer-advance-payment/steps/create-receive-voucher.js +71 -0
- package/.medusa/server/src/workflows/customer-advance-payment/steps/index.js +18 -0
- package/.medusa/server/src/workflows/customer-advance-payment/workflows/create-receive-voucher-workflow.js +11 -0
- package/.medusa/server/src/workflows/customer-advance-payment/workflows/index.js +18 -0
- package/.medusa/server/src/workflows/daily-rate/index.js +37 -0
- package/.medusa/server/src/workflows/daily-rate/perf.js +89 -0
- package/.medusa/server/src/workflows/daily-rate/steps/fetch-gold-rate-step.js +29 -0
- package/.medusa/server/src/workflows/daily-rate/steps/update-inward-metal-rates-step.js +154 -0
- package/.medusa/server/src/workflows/daily-rate/steps/update-party-style-metal-rates-step.js +224 -0
- package/.medusa/server/src/workflows/daily-rate/steps/update-style-master-metal-rates-step.js +180 -0
- package/.medusa/server/src/workflows/daily-rate/steps/update-unfix-order-items-on-gold-rate.js +308 -0
- package/.medusa/server/src/workflows/erp-batch-processing/index.js +19 -0
- package/.medusa/server/src/workflows/erp-batch-processing/steps/finalize-batch-processing.js +55 -0
- package/.medusa/server/src/workflows/erp-batch-processing/steps/index.js +20 -0
- package/.medusa/server/src/workflows/erp-batch-processing/steps/initialize-batch-processing.js +40 -0
- package/.medusa/server/src/workflows/erp-batch-processing/steps/start-batch-processing.js +22 -0
- package/.medusa/server/src/workflows/erp-batch-processing/workflows/erp-batch-processing.js +25 -0
- package/.medusa/server/src/workflows/erp-batch-processing/workflows/index.js +18 -0
- package/.medusa/server/src/workflows/erp-event/steps/update-erp-event.js +24 -7
- package/.medusa/server/src/workflows/erp-event/workflows/update-erp-event.js +1 -1
- package/.medusa/server/src/workflows/helpers/product-helper.js +212 -21
- package/.medusa/server/src/workflows/helpers/variant-helper.js +165 -162
- package/.medusa/server/src/workflows/hooks/product-updated.js +23 -15
- package/.medusa/server/src/workflows/hooks/variant-updated.js +24 -22
- package/.medusa/server/src/workflows/index.js +4 -1
- package/.medusa/server/src/workflows/inward-master/helper/index.js +28 -13
- package/.medusa/server/src/workflows/inward-master/steps/create-inward-exploration-lines.js +1 -2
- package/.medusa/server/src/workflows/inward-master/steps/create-inward-extra-charges-lines.js +1 -2
- package/.medusa/server/src/workflows/inward-master/steps/create-order-fulfillment-for-inward.js +196 -0
- package/.medusa/server/src/workflows/inward-master/steps/fetch-inward-master.js +17 -25
- package/.medusa/server/src/workflows/inward-master/steps/index.js +3 -1
- package/.medusa/server/src/workflows/inward-master/steps/notify-inward-skipped.js +38 -0
- package/.medusa/server/src/workflows/inward-master/steps/update-order-item-from-inward.js +259 -0
- package/.medusa/server/src/workflows/inward-master/workflows/create-inward.js +89 -75
- package/.medusa/server/src/workflows/inward-master/workflows/delete-inward.js +6 -9
- package/.medusa/server/src/workflows/inward-master/workflows/update-instock.js +2 -1
- package/.medusa/server/src/workflows/inward-master/workflows/update-inward.js +49 -7
- package/.medusa/server/src/workflows/item-master/index.js +11 -0
- package/.medusa/server/src/workflows/item-master/steps/create-or-update-item-master.js +50 -0
- package/.medusa/server/src/workflows/item-master/steps/fetch-item-master.js +29 -0
- package/.medusa/server/src/workflows/jewel-trans-master/index.js +18 -0
- package/.medusa/server/src/workflows/jewel-trans-master/steps/create-or-update-jewel-trans-master.js +370 -0
- package/.medusa/server/src/workflows/jewel-trans-master/steps/index.js +18 -0
- package/.medusa/server/src/workflows/labour-chart-master/index.js +11 -0
- package/.medusa/server/src/workflows/labour-chart-master/steps/create-or-update-labour-chart-master.js +38 -0
- package/.medusa/server/src/workflows/labour-chart-master/steps/fetch-labour-chart.js +31 -0
- package/.medusa/server/src/workflows/material-purchase-master/index.js +24 -0
- package/.medusa/server/src/workflows/material-purchase-master/steps/create-material-purchase-master.js +119 -0
- package/.medusa/server/src/workflows/material-purchase-master/steps/delete-material-purchase-master.js +102 -0
- package/.medusa/server/src/workflows/material-purchase-master/steps/fetch-material-purchase-master.js +60 -0
- package/.medusa/server/src/workflows/material-purchase-master/steps/update-material-purchase-master.js +149 -0
- package/.medusa/server/src/workflows/order-master/index.js +3 -0
- package/.medusa/server/src/workflows/order-master/order-master-webhook.js +24 -0
- package/.medusa/server/src/workflows/order-master/steps/create-or-update-order-master.js +275 -0
- package/.medusa/server/src/workflows/order-master/steps/delete-order-master-by-erp-ids.js +61 -0
- package/.medusa/server/src/workflows/order-master/steps/process-order-master-from-webhook.js +1038 -0
- package/.medusa/server/src/workflows/order-proceed-master/index.js +6 -0
- package/.medusa/server/src/workflows/order-proceed-master/order-proceed-master-webhook.js +26 -0
- package/.medusa/server/src/workflows/order-proceed-master/steps/create-or-update-order-proceed-master.js +186 -0
- package/.medusa/server/src/workflows/order-proceed-master/steps/delete-order-proceed-master-by-erp-ids.js +28 -0
- package/.medusa/server/src/workflows/orders/steps/create-sale-for-order-step.js +218 -0
- package/.medusa/server/src/workflows/orders/steps/find-nearest-pincodes-step.js +336 -0
- package/.medusa/server/src/workflows/orders/steps/get-today-gold-rate-step.js +83 -0
- package/.medusa/server/src/workflows/orders/steps/index.js +16 -1
- package/.medusa/server/src/workflows/orders/steps/revert-to-wallet-step.js +165 -0
- package/.medusa/server/src/workflows/orders/steps/sync-advance-payment-to-erp-step.js +191 -0
- package/.medusa/server/src/workflows/orders/steps/sync-buyback-to-erp-step.js +99 -0
- package/.medusa/server/src/workflows/orders/steps/sync-cancel-to-erp-step.js +120 -0
- package/.medusa/server/src/workflows/orders/steps/sync-exchange-to-erp-step.js +101 -0
- package/.medusa/server/src/workflows/orders/steps/sync-old-gold-to-erp-step.js +161 -0
- package/.medusa/server/src/workflows/orders/steps/sync-order-to-erp.js +756 -20
- package/.medusa/server/src/workflows/orders/steps/sync-sale-return-to-erp-step.js +277 -0
- package/.medusa/server/src/workflows/orders/steps/update-old-gold-sync-status-step.js +64 -0
- package/.medusa/server/src/workflows/orders/utils/apply-order-item-price-change.js +79 -0
- package/.medusa/server/src/workflows/orders/utils/order-helper.js +182 -37
- package/.medusa/server/src/workflows/orders/utils/order-request-helper.js +235 -0
- package/.medusa/server/src/workflows/orders/workflows/create-sale-for-order.js +10 -0
- package/.medusa/server/src/workflows/orders/workflows/get-today-gold-rate.js +10 -0
- package/.medusa/server/src/workflows/orders/workflows/index.js +4 -1
- package/.medusa/server/src/workflows/orders/workflows/sync-advanve-payment-to-erp.js +21 -0
- package/.medusa/server/src/workflows/orders/workflows/sync-old-gold-to-erp.js +24 -0
- package/.medusa/server/src/workflows/orders/workflows/sync-order-to-erp.js +54 -5
- package/.medusa/server/src/workflows/orders/workflows/sync-sale-return-to-erp.js +11 -0
- package/.medusa/server/src/workflows/party-master/steps/create-customer-erp.js +66 -33
- package/.medusa/server/src/workflows/party-master/steps/create-user-erp.js +115 -0
- package/.medusa/server/src/workflows/party-master/steps/fetch-party-master.js +2 -1
- package/.medusa/server/src/workflows/party-master/steps/index.js +2 -1
- package/.medusa/server/src/workflows/party-master/workflows/create-or-update-party-master.js +2 -2
- package/.medusa/server/src/workflows/party-master/workflows/create-user-erp.js +11 -0
- package/.medusa/server/src/workflows/party-master/workflows/index.js +2 -1
- package/.medusa/server/src/workflows/party-style-master/steps/update-product-options-after-deletion.js +16 -249
- package/.medusa/server/src/workflows/party-style-master/steps/update-product-options-after-variant-update.js +103 -22
- package/.medusa/server/src/workflows/party-style-master/workflows/create-or-update-party-style-master.js +49 -18
- package/.medusa/server/src/workflows/party-style-master/workflows/delete-party-style-master.js +4 -15
- package/.medusa/server/src/workflows/payment-book-master/index.js +11 -0
- package/.medusa/server/src/workflows/payment-book-master/steps/create-or-update-payment-book-master.js +37 -0
- package/.medusa/server/src/workflows/payment-book-master/steps/fetch-payment-book.js +64 -0
- package/.medusa/server/src/workflows/rate-chart-master/index.js +11 -0
- package/.medusa/server/src/workflows/rate-chart-master/steps/create-or-update-rate-chart-master.js +25 -0
- package/.medusa/server/src/workflows/rate-chart-master/steps/fetch-rate-chart.js +31 -0
- package/.medusa/server/src/workflows/receive-voucher-master/index.js +24 -0
- package/.medusa/server/src/workflows/receive-voucher-master/steps/create-receive-voucher-master.js +125 -0
- package/.medusa/server/src/workflows/receive-voucher-master/steps/delete-receive-voucher-master.js +45 -0
- package/.medusa/server/src/workflows/receive-voucher-master/steps/fetch-receive-voucher-master.js +22 -0
- package/.medusa/server/src/workflows/receive-voucher-master/steps/update-receive-voucher-master.js +44 -0
- package/.medusa/server/src/workflows/report-master/index.js +11 -0
- package/.medusa/server/src/workflows/report-master/steps/create-or-update-report-master.js +53 -0
- package/.medusa/server/src/workflows/report-master/steps/fetch-report.js +71 -0
- package/.medusa/server/src/workflows/sale-master/index.js +35 -0
- package/.medusa/server/src/workflows/sale-master/steps/create-sale-master.js +72 -0
- package/.medusa/server/src/workflows/sale-master/steps/delete-sale-master.js +59 -0
- package/.medusa/server/src/workflows/sale-master/steps/sync-extended-order-from-sale.js +40 -0
- package/.medusa/server/src/workflows/sale-master/steps/update-sale-master.js +95 -0
- package/.medusa/server/src/workflows/sale-return-master/index.js +6 -0
- package/.medusa/server/src/workflows/sale-return-master/sale-return-master-webhook.js +28 -0
- package/.medusa/server/src/workflows/sale-return-master/steps/create-or-update-sale-return-master.js +109 -0
- package/.medusa/server/src/workflows/sale-return-master/steps/create-sale-return-master.js +45 -0
- package/.medusa/server/src/workflows/sale-return-master/steps/delete-sale-return-master-by-erp-ids.js +36 -0
- package/.medusa/server/src/workflows/sale-return-master/steps/delete-sale-return-master.js +36 -0
- package/.medusa/server/src/workflows/sale-return-master/steps/process-sale-return-from-webhook.js +234 -0
- package/.medusa/server/src/workflows/sale-return-master/steps/update-sale-return-master.js +53 -0
- package/.medusa/server/src/workflows/sale-return-policy-master/index.js +11 -0
- package/.medusa/server/src/workflows/sale-return-policy-master/steps/create-or-update-sale-return-policy-master.js +91 -0
- package/.medusa/server/src/workflows/sale-return-policy-master/steps/fetch-sale-return-policy.js +31 -0
- package/.medusa/server/src/workflows/shipping-info-master/workflows/create-or-update-shipping-info.js +59 -0
- package/.medusa/server/src/workflows/shipping-info-master/workflows/index.js +2 -1
- package/.medusa/server/src/workflows/style-master/workflows/create-or-update-style-master.js +116 -10
- package/.medusa/server/src/workflows/style-master/workflows/delete-style-master.js +9 -1
- package/.medusa/server/src/workflows/update-extended-product-from-product/index.js +6 -16
- package/.medusa/server/src/workflows/update-extended-variant-from-variant/workflows/update-extended-variant-status-from-variant.js +5 -17
- package/package.json +18 -33
|
@@ -92,6 +92,16 @@ const transformInwardMaster = (input) => {
|
|
|
92
92
|
total_stone_weight: input.TotStoneWt,
|
|
93
93
|
total_cz_pcs: input.TotCzPcs,
|
|
94
94
|
total_cz_weight: input.TotCzWt,
|
|
95
|
+
erp_order_id: (input.OrderId ?? 0) > 0 ? input.OrderId : null,
|
|
96
|
+
erp_order_no: input.OrderNo || null,
|
|
97
|
+
// If status is "On Hold" with status_id "A", clear inward marking fields
|
|
98
|
+
...(input.Status?.toLowerCase() === "on hold" && input.StatusId === "A"
|
|
99
|
+
? {
|
|
100
|
+
is_inward_marked: false,
|
|
101
|
+
inward_marked_at: null,
|
|
102
|
+
inward_order_id: null,
|
|
103
|
+
}
|
|
104
|
+
: {}),
|
|
95
105
|
};
|
|
96
106
|
};
|
|
97
107
|
exports.transformInwardMaster = transformInwardMaster;
|
|
@@ -362,16 +372,21 @@ const groupByLocationNo = (inwards) => {
|
|
|
362
372
|
return groupedData;
|
|
363
373
|
};
|
|
364
374
|
exports.groupByLocationNo = groupByLocationNo;
|
|
365
|
-
const prepareUpdateInStockInput = ({ allInventoryItems, inwards, stockLocations, }) => {
|
|
375
|
+
const prepareUpdateInStockInput = ({ allInventoryItems, inwards, stockLocations, inventoryLevels, }) => {
|
|
366
376
|
const adjustments = [];
|
|
367
377
|
// Group inwards by location_id
|
|
368
378
|
const inwardsByLocationNo = (0, exports.groupByLocationNo)(inwards);
|
|
379
|
+
// Build a lookup map for current stocked quantities
|
|
380
|
+
const stockedQtyMap = new Map();
|
|
381
|
+
(inventoryLevels || []).forEach((lvl) => {
|
|
382
|
+
stockedQtyMap.set(`${lvl.inventory_item_id}:${lvl.location_id}`, lvl.stocked_quantity ?? 0);
|
|
383
|
+
});
|
|
369
384
|
// For each inventory item, find matching inwards and calculate adjustment per branch
|
|
370
385
|
allInventoryItems.forEach((inventoryItem) => {
|
|
371
386
|
const itemSku = inventoryItem.sku;
|
|
372
387
|
// Skip if SKU is null or undefined
|
|
373
388
|
if (!itemSku) {
|
|
374
|
-
console.warn(`
|
|
389
|
+
console.warn(`inward-helper: skipping inventory item ${inventoryItem.id} - no SKU found`);
|
|
375
390
|
return;
|
|
376
391
|
}
|
|
377
392
|
// Process each location separately
|
|
@@ -406,21 +421,21 @@ const prepareUpdateInStockInput = ({ allInventoryItems, inwards, stockLocations,
|
|
|
406
421
|
});
|
|
407
422
|
}
|
|
408
423
|
else if (deletedCount > 0) {
|
|
409
|
-
//
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
424
|
+
// Cap negative adjustment at current stocked quantity to prevent going below 0
|
|
425
|
+
const currentStocked = stockedQtyMap.get(`${inventoryItem.id}:${stockLocation.mapping_id}`) ?? 0;
|
|
426
|
+
const safeAdjustment = -Math.min(deletedCount, Math.max(currentStocked, 0));
|
|
427
|
+
if (safeAdjustment < 0) {
|
|
428
|
+
adjustments.push({
|
|
429
|
+
inventory_item_id: inventoryItem.id,
|
|
430
|
+
location_id: stockLocation.mapping_id,
|
|
431
|
+
adjustment: safeAdjustment,
|
|
432
|
+
});
|
|
433
|
+
}
|
|
415
434
|
}
|
|
416
435
|
}
|
|
417
|
-
else if (onHandCount > 0 || deletedCount > 0) {
|
|
418
|
-
console.warn(`Found ${onHandCount} matching inwards and ${deletedCount} deletions for location ${locationNo} but no stock location found`);
|
|
419
|
-
}
|
|
420
436
|
});
|
|
421
437
|
});
|
|
422
|
-
console.log("adjustments", JSON.stringify(adjustments, null, 2));
|
|
423
438
|
return adjustments;
|
|
424
439
|
};
|
|
425
440
|
exports.prepareUpdateInStockInput = prepareUpdateInStockInput;
|
|
426
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL2lud2FyZC1tYXN0ZXIvaGVscGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdBLCtDQUFrRDtBQWEzQyxNQUFNLHFCQUFxQixHQUFHLENBQUMsS0FBZ0MsRUFBRSxFQUFFO0lBQ3hFLE9BQU87UUFDTCxRQUFRLEVBQUUsS0FBSyxDQUFDLE9BQU87UUFDdkIsVUFBVSxFQUFFLEtBQUssQ0FBQyxTQUFTO1FBQzNCLFNBQVMsRUFBRSxLQUFLLENBQUMsUUFBUTtRQUN6QixXQUFXLEVBQUUsS0FBSyxDQUFDLFVBQVU7UUFDN0IsYUFBYSxFQUFFLEtBQUssQ0FBQyxXQUFXO1FBQ2hDLFdBQVcsRUFBRSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDO1FBQ3ZDLFFBQVEsRUFBRSxLQUFLLENBQUMsT0FBTztRQUN2QixVQUFVLEVBQUUsS0FBSyxDQUFDLFNBQVM7UUFDM0IsV0FBVyxFQUFFLEtBQUssQ0FBQyxVQUFVO1FBQzdCLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtRQUN4QixTQUFTLEVBQUUsS0FBSyxDQUFDLFFBQVE7UUFDekIsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO1FBQ3BCLFlBQVksRUFBRSxLQUFLLENBQUMsVUFBVTtRQUM5QixtQkFBbUIsRUFBRSxLQUFLLENBQUMsaUJBQWlCO1FBQzVDLG1CQUFtQixFQUFFLEtBQUssQ0FBQyxpQkFBaUI7UUFDNUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxLQUFLO1FBQ25CLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtRQUN4QixhQUFhLEVBQUUsS0FBSyxDQUFDLFlBQVk7UUFDakMsVUFBVSxFQUFFLEtBQUssQ0FBQyxRQUFRO1FBQzFCLFlBQVksRUFBRSxLQUFLLENBQUMsV0FBVztRQUMvQixpQkFBaUIsRUFBRSxLQUFLLENBQUMsZUFBZTtRQUN4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
|
|
441
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL2lud2FyZC1tYXN0ZXIvaGVscGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtDQUFrRDtBQWEzQyxNQUFNLHFCQUFxQixHQUFHLENBQUMsS0FBZ0MsRUFBRSxFQUFFO0lBQ3hFLE9BQU87UUFDTCxRQUFRLEVBQUUsS0FBSyxDQUFDLE9BQU87UUFDdkIsVUFBVSxFQUFFLEtBQUssQ0FBQyxTQUFTO1FBQzNCLFNBQVMsRUFBRSxLQUFLLENBQUMsUUFBUTtRQUN6QixXQUFXLEVBQUUsS0FBSyxDQUFDLFVBQVU7UUFDN0IsYUFBYSxFQUFFLEtBQUssQ0FBQyxXQUFXO1FBQ2hDLFdBQVcsRUFBRSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDO1FBQ3ZDLFFBQVEsRUFBRSxLQUFLLENBQUMsT0FBTztRQUN2QixVQUFVLEVBQUUsS0FBSyxDQUFDLFNBQVM7UUFDM0IsV0FBVyxFQUFFLEtBQUssQ0FBQyxVQUFVO1FBQzdCLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtRQUN4QixTQUFTLEVBQUUsS0FBSyxDQUFDLFFBQVE7UUFDekIsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO1FBQ3BCLFlBQVksRUFBRSxLQUFLLENBQUMsVUFBVTtRQUM5QixtQkFBbUIsRUFBRSxLQUFLLENBQUMsaUJBQWlCO1FBQzVDLG1CQUFtQixFQUFFLEtBQUssQ0FBQyxpQkFBaUI7UUFDNUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxLQUFLO1FBQ25CLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtRQUN4QixhQUFhLEVBQUUsS0FBSyxDQUFDLFlBQVk7UUFDakMsVUFBVSxFQUFFLEtBQUssQ0FBQyxRQUFRO1FBQzFCLFlBQVksRUFBRSxLQUFLLENBQUMsV0FBVztRQUMvQixpQkFBaUIsRUFBRSxLQUFLLENBQUMsZUFBZTtRQUN4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
|
|
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.createInwardExplorationLinesStep = void 0;
|
|
4
4
|
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
5
|
exports.createInwardExplorationLinesStep = (0, workflows_sdk_1.createStep)("create-inward-exploration-lines", async (input, { container }) => {
|
|
6
|
-
console.log("createInwardExplorationLinesStep", input);
|
|
7
6
|
const service = container.resolve("extended_variant");
|
|
8
7
|
const inwardExplorationLines = await service.createInwardExplorationLines(input);
|
|
9
8
|
return new workflows_sdk_1.StepResponse(inwardExplorationLines, inwardExplorationLines);
|
|
@@ -17,4 +16,4 @@ exports.createInwardExplorationLinesStep = (0, workflows_sdk_1.createStep)("crea
|
|
|
17
16
|
// Delete the created inward exploration lines to roll back changes
|
|
18
17
|
await service.deleteInwardExplorationLines(inwardExplorationLineIds);
|
|
19
18
|
});
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWlud2FyZC1leHBsb3JhdGlvbi1saW5lcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvaW53YXJkLW1hc3Rlci9zdGVwcy9jcmVhdGUtaW53YXJkLWV4cGxvcmF0aW9uLWxpbmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUtoRSxRQUFBLGdDQUFnQyxHQUFHLElBQUEsMEJBQVUsRUFDeEQsaUNBQWlDLEVBQ2pDLEtBQUssRUFDSCxLQUEyRSxFQUMzRSxFQUFFLFNBQVMsRUFBRSxFQUNiLEVBQUU7SUFDRixNQUFNLE9BQU8sR0FDWCxTQUFTLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFFeEMsTUFBTSxzQkFBc0IsR0FDMUIsTUFBTSxPQUFPLENBQUMsNEJBQTRCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFcEQsT0FBTyxJQUFJLDRCQUFZLENBQUMsc0JBQXNCLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztBQUMxRSxDQUFDLEVBQ0QsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDOUIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ1osT0FBTztJQUNULENBQUM7SUFDRCxNQUFNLE9BQU8sR0FDWCxTQUFTLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDeEMsOENBQThDO0lBQzlDLE1BQU0sd0JBQXdCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQy9ELG1FQUFtRTtJQUNuRSxNQUFNLE9BQU8sQ0FBQyw0QkFBNEIsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0FBQ3ZFLENBQUMsQ0FDRixDQUFDIn0=
|
package/.medusa/server/src/workflows/inward-master/steps/create-inward-extra-charges-lines.js
CHANGED
|
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.createInwardExtraChargesLinesStep = void 0;
|
|
4
4
|
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
5
|
exports.createInwardExtraChargesLinesStep = (0, workflows_sdk_1.createStep)("create-inward-extra-charges-lines", async (input, { container }) => {
|
|
6
|
-
console.log("input createInwardExtraChargesLinesStep", input);
|
|
7
6
|
const service = container.resolve("extended_variant");
|
|
8
7
|
const inwardExtraChargesLines = await service.createInwardExtraChargesLines(input);
|
|
9
8
|
return new workflows_sdk_1.StepResponse(inwardExtraChargesLines, inwardExtraChargesLines);
|
|
@@ -17,4 +16,4 @@ exports.createInwardExtraChargesLinesStep = (0, workflows_sdk_1.createStep)("cre
|
|
|
17
16
|
// Delete the created inward extra charges lines to roll back changes
|
|
18
17
|
await service.deleteInwardExtraChargesLines(inwardExtraChargesLineIds);
|
|
19
18
|
});
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWlud2FyZC1leHRyYS1jaGFyZ2VzLWxpbmVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9pbndhcmQtbWFzdGVyL3N0ZXBzL2NyZWF0ZS1pbndhcmQtZXh0cmEtY2hhcmdlcy1saW5lcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxRUFBNkU7QUFLaEUsUUFBQSxpQ0FBaUMsR0FBRyxJQUFBLDBCQUFVLEVBQ3pELG1DQUFtQyxFQUNuQyxLQUFLLEVBQ0gsS0FFSSxFQUNKLEVBQUUsU0FBUyxFQUFFLEVBQ2IsRUFBRTtJQUNGLE1BQU0sT0FBTyxHQUNYLFNBQVMsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUV4QyxNQUFNLHVCQUF1QixHQUMzQixNQUFNLE9BQU8sQ0FBQyw2QkFBNkIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUVyRCxPQUFPLElBQUksNEJBQVksQ0FBQyx1QkFBdUIsRUFBRSx1QkFBdUIsQ0FBQyxDQUFDO0FBQzVFLENBQUMsRUFDRCxLQUFLLEVBQUUsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtJQUM5QixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDWixPQUFPO0lBQ1QsQ0FBQztJQUNELE1BQU0sT0FBTyxHQUNYLFNBQVMsQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUN4QyxnREFBZ0Q7SUFDaEQsTUFBTSx5QkFBeUIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDaEUscUVBQXFFO0lBQ3JFLE1BQU0sT0FBTyxDQUFDLDZCQUE2QixDQUFDLHlCQUF5QixDQUFDLENBQUM7QUFDekUsQ0FBQyxDQUNGLENBQUMifQ==
|
package/.medusa/server/src/workflows/inward-master/steps/create-order-fulfillment-for-inward.js
ADDED
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createOrderFulfillmentForInwardStep = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
6
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
7
|
+
exports.createOrderFulfillmentForInwardStep = (0, workflows_sdk_1.createStep)("create-order-fulfillment-for-inward", async (inwards, { container }) => {
|
|
8
|
+
const logger = container.resolve("logger");
|
|
9
|
+
const query = container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
|
|
10
|
+
const orderService = container.resolve(utils_1.Modules.ORDER);
|
|
11
|
+
const inventoryModule = container.resolve(utils_1.ModuleRegistrationName.INVENTORY);
|
|
12
|
+
logger.info(`inward-fulfillment: Processing ${inwards.length} inward(s)`);
|
|
13
|
+
for (const inward of inwards) {
|
|
14
|
+
logger.info(`inward-fulfillment: START jewel_id=${inward.jewel_id} sku=${inward.inward_sku_no} erp_order_id=${inward.erp_order_id} branch_no=${inward.branch_no}`);
|
|
15
|
+
let medusaOrderId;
|
|
16
|
+
try {
|
|
17
|
+
const { data: orderMasters } = await query.graph({
|
|
18
|
+
entity: "order_master",
|
|
19
|
+
fields: [
|
|
20
|
+
"id",
|
|
21
|
+
"branch_no",
|
|
22
|
+
"order.*",
|
|
23
|
+
"order.items.*",
|
|
24
|
+
"order.shipping_methods.*",
|
|
25
|
+
],
|
|
26
|
+
filters: { erp_order_id: inward.erp_order_id },
|
|
27
|
+
});
|
|
28
|
+
if (!orderMasters.length) {
|
|
29
|
+
logger.warn(`inward-fulfillment: SKIP jewel_id=${inward.jewel_id}: no order_master for erp_order_id=${inward.erp_order_id}`);
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
const orderMaster = orderMasters[0];
|
|
33
|
+
const medusaOrder = orderMaster?.order;
|
|
34
|
+
medusaOrderId = medusaOrder?.id;
|
|
35
|
+
if (!medusaOrder?.id) {
|
|
36
|
+
logger.warn(`inward-fulfillment: SKIP jewel_id=${inward.jewel_id}: order_master found but no linked Medusa order (erp_order_id=${inward.erp_order_id})`);
|
|
37
|
+
continue;
|
|
38
|
+
}
|
|
39
|
+
// Gate on branch match before fulfilling.
|
|
40
|
+
// POS order (branch_no set): inward must be at the same branch.
|
|
41
|
+
// Online order (branch_no null): inward must be at a Self branch.
|
|
42
|
+
const orderBranchNo = orderMaster.branch_no || null;
|
|
43
|
+
if (orderBranchNo !== null) {
|
|
44
|
+
if (inward.branch_no !== orderBranchNo) {
|
|
45
|
+
logger.info(`inward-fulfillment: SKIP jewel_id=${inward.jewel_id}: inward branch=${inward.branch_no} != order branch=${orderBranchNo} — waiting for branch transfer`);
|
|
46
|
+
continue;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
if (inward.branch_name !== "Self") {
|
|
51
|
+
logger.info(`inward-fulfillment: SKIP jewel_id=${inward.jewel_id}: online order but inward branch_name=${inward.branch_name} is not Self`);
|
|
52
|
+
continue;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
logger.info(`inward-fulfillment: Found Medusa order=${medusaOrder.id} status=${medusaOrder.status} items=${medusaOrder.items?.length ?? 0} order_branch=${orderBranchNo ?? "Self(online)"} inward_branch=${inward.branch_no}`);
|
|
56
|
+
const matchingItem = medusaOrder.items?.find((item) => item.variant_sku === inward.inward_sku_no);
|
|
57
|
+
if (!matchingItem) {
|
|
58
|
+
logger.warn(`inward-fulfillment: SKIP jewel_id=${inward.jewel_id}: no item with sku=${inward.inward_sku_no} in order=${medusaOrder.id} -available skus: ${medusaOrder.items?.map((i) => i.variant_sku).join(", ")}`);
|
|
59
|
+
continue;
|
|
60
|
+
}
|
|
61
|
+
// Assign jewel_code / jewel_id to the order item if not already set
|
|
62
|
+
if (!matchingItem.variant_barcode) {
|
|
63
|
+
await orderService.updateOrderLineItems([
|
|
64
|
+
{
|
|
65
|
+
selector: { id: matchingItem.id },
|
|
66
|
+
data: {
|
|
67
|
+
variant_barcode: inward.jewel_code,
|
|
68
|
+
metadata: {
|
|
69
|
+
...(matchingItem.metadata || {}),
|
|
70
|
+
jewel_id: inward.jewel_id,
|
|
71
|
+
},
|
|
72
|
+
},
|
|
73
|
+
},
|
|
74
|
+
]);
|
|
75
|
+
logger.info(`[inward-fulfillment] Assigned jewel_code=${inward.jewel_code} (jewel_id=${inward.jewel_id}) to item ${matchingItem.id}`);
|
|
76
|
+
}
|
|
77
|
+
logger.info(`inward-fulfillment: Matched item=${matchingItem.id} sku=${inward.inward_sku_no} qty=${matchingItem.quantity} fulfilled=${matchingItem.fulfilled_quantity ?? 0}`);
|
|
78
|
+
// Resolve the stock location for this branch
|
|
79
|
+
const { data: partyMasters } = await query.graph({
|
|
80
|
+
entity: "party_master",
|
|
81
|
+
fields: ["party_no", "mapping_id"],
|
|
82
|
+
filters: { party_no: inward.branch_no },
|
|
83
|
+
});
|
|
84
|
+
const locationId = partyMasters[0]?.mapping_id ?? null;
|
|
85
|
+
// If mapping_id is an outlet_ ID, resolve to sloc_ via
|
|
86
|
+
// outlet→store link, then store.default_location_id
|
|
87
|
+
let resolvedLocationId = locationId;
|
|
88
|
+
if (locationId?.startsWith("outlet_")) {
|
|
89
|
+
// Hop 1: outlet → store via the outlet_store link entry point.
|
|
90
|
+
// (link.list({ outlet: {...} }) throws here — a single-key filter
|
|
91
|
+
// can't resolve the link module — so query the link directly.)
|
|
92
|
+
const { data: outletStoreLinks } = await query.graph({
|
|
93
|
+
entity: "outlet_store",
|
|
94
|
+
fields: ["outlet_id", "store_id"],
|
|
95
|
+
filters: { outlet_id: locationId },
|
|
96
|
+
});
|
|
97
|
+
const storeId = outletStoreLinks?.[0]?.store_id;
|
|
98
|
+
if (storeId) {
|
|
99
|
+
// Hop 2: store.default_location_id
|
|
100
|
+
const storeModule = container.resolve(utils_1.Modules.STORE);
|
|
101
|
+
const store = await storeModule.retrieveStore(storeId);
|
|
102
|
+
const slocId = store?.default_location_id ?? null;
|
|
103
|
+
resolvedLocationId = slocId;
|
|
104
|
+
logger.info(`inward-fulfillment: Resolved outlet=${locationId} → store=${storeId} → default_location=${slocId ?? "none"}`);
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
logger.warn(`inward-fulfillment: No store linked to outlet=${locationId} — cannot resolve stock_location`);
|
|
108
|
+
resolvedLocationId = null;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
logger.info(`inward-fulfillment: Location lookup branch_no=${inward.branch_no} mapping_id=${locationId ?? "null"} resolved=${resolvedLocationId ?? "null"}`);
|
|
112
|
+
let invItemId;
|
|
113
|
+
if (resolvedLocationId) {
|
|
114
|
+
const invItems = await inventoryModule.listInventoryItems({
|
|
115
|
+
sku: inward.inward_sku_no,
|
|
116
|
+
});
|
|
117
|
+
invItemId = invItems[0]?.id;
|
|
118
|
+
if (!invItemId) {
|
|
119
|
+
logger.warn(`inward-fulfillment: No inventory_item found for sku=${inward.inward_sku_no} -skipping inventory ensure`);
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
const levels = await inventoryModule.listInventoryLevels({
|
|
123
|
+
inventory_item_id: invItemId,
|
|
124
|
+
location_id: resolvedLocationId,
|
|
125
|
+
});
|
|
126
|
+
if (!levels.length) {
|
|
127
|
+
await inventoryModule.createInventoryLevels([
|
|
128
|
+
{
|
|
129
|
+
inventory_item_id: invItemId,
|
|
130
|
+
location_id: resolvedLocationId,
|
|
131
|
+
stocked_quantity: 1,
|
|
132
|
+
},
|
|
133
|
+
]);
|
|
134
|
+
logger.info(`inward-fulfillment: Created inventory level inv=${invItemId} loc=${resolvedLocationId}`);
|
|
135
|
+
}
|
|
136
|
+
else if (levels[0].available_quantity < 1) {
|
|
137
|
+
await inventoryModule.adjustInventory(invItemId, resolvedLocationId, 1);
|
|
138
|
+
logger.info(`inward-fulfillment: Adjusted inventory +1 inv=${invItemId} loc=${resolvedLocationId} (was available=${levels[0].available_quantity})`);
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
logger.info(`inward-fulfillment: Inventory OK inv=${invItemId} loc=${resolvedLocationId} available=${levels[0].available_quantity}`);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
// MTO items sell before inventory exists, so the order has no stock
|
|
146
|
+
// reservation. Medusa's createOrderFulfillment requires one — create it
|
|
147
|
+
// now (idempotently) at the resolved location before fulfilling.
|
|
148
|
+
if (resolvedLocationId && invItemId) {
|
|
149
|
+
const existingReservations = await inventoryModule.listReservationItems({
|
|
150
|
+
line_item_id: matchingItem.id,
|
|
151
|
+
});
|
|
152
|
+
if (!existingReservations.length) {
|
|
153
|
+
await inventoryModule.createReservationItems([
|
|
154
|
+
{
|
|
155
|
+
line_item_id: matchingItem.id,
|
|
156
|
+
inventory_item_id: invItemId,
|
|
157
|
+
location_id: resolvedLocationId,
|
|
158
|
+
quantity: 1,
|
|
159
|
+
allow_backorder: true,
|
|
160
|
+
},
|
|
161
|
+
]);
|
|
162
|
+
logger.info(`inward-fulfillment: Created reservation line_item=${matchingItem.id} inv=${invItemId} loc=${resolvedLocationId}`);
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
// fulfilled_quantity on the order item is the source of truth -no extra query needed
|
|
166
|
+
if ((matchingItem.fulfilled_quantity ?? 0) >= matchingItem.quantity) {
|
|
167
|
+
logger.warn(`inward-fulfillment: SKIP jewel_id=${inward.jewel_id}: item=${matchingItem.id} already fully fulfilled (${matchingItem.fulfilled_quantity}/${matchingItem.quantity})`);
|
|
168
|
+
continue;
|
|
169
|
+
}
|
|
170
|
+
logger.info(`inward-fulfillment: Creating fulfillment order=${medusaOrder.id} item=${matchingItem.id} location=${resolvedLocationId ?? "none"} jewel_id=${inward.jewel_id}`);
|
|
171
|
+
await (0, core_flows_1.createOrderFulfillmentWorkflow)(container).run({
|
|
172
|
+
input: {
|
|
173
|
+
order_id: medusaOrder.id,
|
|
174
|
+
items: [{ id: matchingItem.id, quantity: 1 }],
|
|
175
|
+
...(resolvedLocationId ? { location_id: resolvedLocationId } : {}),
|
|
176
|
+
metadata: {
|
|
177
|
+
erp_order_id: inward.erp_order_id,
|
|
178
|
+
jewel_id: inward.jewel_id,
|
|
179
|
+
},
|
|
180
|
+
},
|
|
181
|
+
});
|
|
182
|
+
logger.info(`inward-fulfillment: SUCCESS jewel_id=${inward.jewel_id} order=${medusaOrder.id} item=${matchingItem.id}`);
|
|
183
|
+
}
|
|
184
|
+
catch (err) {
|
|
185
|
+
// Medusa throws this when the item is already fully fulfilled -treat as a skip
|
|
186
|
+
if (err?.message?.includes("Cannot fulfill more items than what was ordered")) {
|
|
187
|
+
logger.warn(`inward-fulfillment: SKIP jewel_id=${inward.jewel_id}: item already fully fulfilled in order ${medusaOrderId}`);
|
|
188
|
+
}
|
|
189
|
+
else {
|
|
190
|
+
logger.error(`inward-fulfillment: ERROR jewel_id=${inward.jewel_id} erp_order_id=${inward.erp_order_id}: ${err?.message}\n${err?.stack}`);
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
return new workflows_sdk_1.StepResponse(null);
|
|
195
|
+
});
|
|
196
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW9yZGVyLWZ1bGZpbGxtZW50LWZvci1pbndhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL2lud2FyZC1tYXN0ZXIvc3RlcHMvY3JlYXRlLW9yZGVyLWZ1bGZpbGxtZW50LWZvci1pbndhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUVBQTZFO0FBQzdFLHFEQUltQztBQUNuQyw0REFBNkU7QUFXaEUsUUFBQSxtQ0FBbUMsR0FBRyxJQUFBLDBCQUFVLEVBQzNELHFDQUFxQyxFQUNyQyxLQUFLLEVBQUUsT0FBK0MsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDdkUsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMzQyxNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLGlDQUF5QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pFLE1BQU0sWUFBWSxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsZUFBTyxDQUFDLEtBQUssQ0FBUSxDQUFDO0lBQzdELE1BQU0sZUFBZSxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsOEJBQXNCLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFNUUsTUFBTSxDQUFDLElBQUksQ0FBQyxrQ0FBa0MsT0FBTyxDQUFDLE1BQU0sWUFBWSxDQUFDLENBQUM7SUFFMUUsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUM3QixNQUFNLENBQUMsSUFBSSxDQUNULHNDQUFzQyxNQUFNLENBQUMsUUFBUSxRQUFRLE1BQU0sQ0FBQyxhQUFhLGlCQUFpQixNQUFNLENBQUMsWUFBWSxjQUFjLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FDdEosQ0FBQztRQUNGLElBQUksYUFBaUMsQ0FBQztRQUN0QyxJQUFJLENBQUM7WUFDSCxNQUFNLEVBQUUsSUFBSSxFQUFFLFlBQVks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
|
|
@@ -2,69 +2,61 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.fetchInwardMaster = void 0;
|
|
4
4
|
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
-
const BATCH_SIZE = 50;
|
|
5
|
+
const BATCH_SIZE = 50;
|
|
6
6
|
const MAX_RETRIES = 3;
|
|
7
|
-
const RETRY_DELAY = 1000;
|
|
7
|
+
const RETRY_DELAY = 1000;
|
|
8
8
|
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
9
|
-
const processBatch = async (erpService, datafor, batch, retryCount = 0) => {
|
|
9
|
+
const processBatch = async (erpService, datafor, batch, logger, retryCount = 0) => {
|
|
10
10
|
try {
|
|
11
11
|
const results = await Promise.all(batch.map(async (transactionId) => {
|
|
12
12
|
try {
|
|
13
13
|
return await erpService.getMasterData(datafor, transactionId);
|
|
14
14
|
}
|
|
15
15
|
catch (error) {
|
|
16
|
-
|
|
16
|
+
logger.error(`fetch-inward-master: error fetching ID ${transactionId}: ${error?.message}`);
|
|
17
17
|
return null;
|
|
18
18
|
}
|
|
19
19
|
}));
|
|
20
|
-
// Filter out failed requests
|
|
21
20
|
const successfulResults = results.filter((result) => result !== null);
|
|
22
|
-
// If we have failed requests and haven't exceeded max retries, retry them
|
|
23
21
|
if (results.length !== successfulResults.length &&
|
|
24
22
|
retryCount < MAX_RETRIES) {
|
|
25
23
|
const failedIds = batch.filter((_, index) => results[index] === null);
|
|
26
|
-
|
|
24
|
+
logger.warn(`fetch-inward-master: retrying ${failedIds.length} failed requests (attempt ${retryCount + 1})`);
|
|
27
25
|
await sleep(RETRY_DELAY);
|
|
28
|
-
const retryResults = await processBatch(erpService, datafor, failedIds, retryCount + 1);
|
|
26
|
+
const retryResults = await processBatch(erpService, datafor, failedIds, logger, retryCount + 1);
|
|
29
27
|
return [...successfulResults, ...retryResults];
|
|
30
28
|
}
|
|
31
29
|
return successfulResults.filter(Boolean);
|
|
32
30
|
}
|
|
33
31
|
catch (error) {
|
|
34
|
-
|
|
32
|
+
logger.error(`fetch-inward-master: batch processing error: ${error?.message}`);
|
|
35
33
|
if (retryCount < MAX_RETRIES) {
|
|
36
|
-
|
|
34
|
+
logger.warn(`fetch-inward-master: retrying entire batch (attempt ${retryCount + 1})`);
|
|
37
35
|
await sleep(RETRY_DELAY);
|
|
38
|
-
return processBatch(erpService, datafor, batch, retryCount + 1);
|
|
36
|
+
return processBatch(erpService, datafor, batch, logger, retryCount + 1);
|
|
39
37
|
}
|
|
40
38
|
throw error;
|
|
41
39
|
}
|
|
42
40
|
};
|
|
43
|
-
/**
|
|
44
|
-
* Step to fetch style data from ERP system
|
|
45
|
-
* This step processes data in batches to avoid timeouts and handle large datasets
|
|
46
|
-
* @param input - Contains datafor type and array of transaction IDs
|
|
47
|
-
* @param container - Dependency injection container to resolve services
|
|
48
|
-
*/
|
|
49
41
|
exports.fetchInwardMaster = (0, workflows_sdk_1.createStep)("fetch-inward-master", async (input, { container }) => {
|
|
50
42
|
const erpService = container.resolve("erp");
|
|
43
|
+
const logger = container.resolve("logger");
|
|
51
44
|
const { datafor, data } = input;
|
|
52
|
-
// Split data into batches
|
|
53
45
|
const batches = [];
|
|
54
46
|
for (let i = 0; i < data.length; i += BATCH_SIZE) {
|
|
55
47
|
batches.push(data.slice(i, i + BATCH_SIZE));
|
|
56
48
|
}
|
|
57
|
-
|
|
58
|
-
// Process each batch sequentially
|
|
49
|
+
logger.info(`fetch-inward-master: processing ${data.length} items in ${batches.length} batches`);
|
|
59
50
|
const allResults = [];
|
|
60
51
|
for (let i = 0; i < batches.length; i++) {
|
|
61
|
-
|
|
62
|
-
const batchResults = await processBatch(erpService, datafor, batches[i]);
|
|
52
|
+
logger.info(`fetch-inward-master: batch ${i + 1}/${batches.length}`);
|
|
53
|
+
const batchResults = await processBatch(erpService, datafor, batches[i], logger);
|
|
63
54
|
allResults.push(...batchResults);
|
|
64
55
|
}
|
|
65
|
-
|
|
56
|
+
logger.info(`fetch-inward-master: processed ${allResults.length} items`);
|
|
66
57
|
return new workflows_sdk_1.StepResponse(allResults.flatMap((innerArray) => innerArray));
|
|
67
58
|
}, async (result, { container }) => {
|
|
68
|
-
|
|
59
|
+
const logger = container.resolve("logger");
|
|
60
|
+
logger.error("fetch-inward-master: compensation triggered");
|
|
69
61
|
});
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2gtaW53YXJkLW1hc3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvaW53YXJkLW1hc3Rlci9zdGVwcy9mZXRjaC1pbndhcmQtbWFzdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUs3RSxNQUFNLFVBQVUsR0FBRyxFQUFFLENBQUM7QUFDdEIsTUFBTSxXQUFXLEdBQUcsQ0FBQyxDQUFDO0FBQ3RCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQztBQUV6QixNQUFNLEtBQUssR0FBRyxDQUFDLEVBQVUsRUFBRSxFQUFFLENBQUMsSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUVoRixNQUFNLFlBQVksR0FBRyxLQUFLLEVBQ3hCLFVBQTRCLEVBQzVCLE9BQWUsRUFDZixLQUFlLEVBQ2YsTUFBVyxFQUNYLFVBQVUsR0FBRyxDQUFDLEVBQ0UsRUFBRTtJQUNsQixJQUFJLENBQUM7UUFDSCxNQUFNLE9BQU8sR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQy9CLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLGFBQWEsRUFBRSxFQUFFO1lBQ2hDLElBQUksQ0FBQztnQkFDSCxPQUFPLE1BQU0sVUFBVSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsYUFBYSxDQUFDLENBQUM7WUFDaEUsQ0FBQztZQUFDLE9BQU8sS0FBVSxFQUFFLENBQUM7Z0JBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQ1YsMENBQTBDLGFBQWEsS0FBSyxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQzdFLENBQUM7Z0JBQ0YsT0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUVGLE1BQU0saUJBQWlCLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxD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
|
|
@@ -26,4 +26,6 @@ __exportStar(require("./fetch-inward-master"), exports);
|
|
|
26
26
|
__exportStar(require("./update-instock"), exports);
|
|
27
27
|
__exportStar(require("./update-inward"), exports);
|
|
28
28
|
__exportStar(require("./update-variant-manage-inventory"), exports);
|
|
29
|
-
|
|
29
|
+
__exportStar(require("./create-order-fulfillment-for-inward"), exports);
|
|
30
|
+
__exportStar(require("./notify-inward-skipped"), exports);
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL2lud2FyZC1tYXN0ZXIvc3RlcHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGtEQUFnQztBQUNoQywrREFBNkM7QUFDN0Msb0VBQWtEO0FBQ2xELHNFQUFvRDtBQUNwRCxrREFBZ0M7QUFDaEMsK0RBQTZDO0FBQzdDLG9FQUFrRDtBQUNsRCxzRUFBb0Q7QUFDcEQsd0RBQXNDO0FBQ3RDLG1EQUFpQztBQUNqQyxrREFBZ0M7QUFDaEMsb0VBQWtEO0FBQ2xELHdFQUFzRDtBQUN0RCwwREFBd0MifQ==
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.notifyInwardSkippedStep = exports.notifyInwardSkippedStepId = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
6
|
+
exports.notifyInwardSkippedStepId = "notify-inward-skipped";
|
|
7
|
+
exports.notifyInwardSkippedStep = (0, workflows_sdk_1.createStep)(exports.notifyInwardSkippedStepId, async (input, { container }) => {
|
|
8
|
+
const { skippedSkus, inwardNos } = input;
|
|
9
|
+
if (!skippedSkus.length)
|
|
10
|
+
return new workflows_sdk_1.StepResponse(null);
|
|
11
|
+
try {
|
|
12
|
+
const notificationService = container.resolve(utils_1.Modules.NOTIFICATION);
|
|
13
|
+
await notificationService.createNotifications([
|
|
14
|
+
{
|
|
15
|
+
to: "slack",
|
|
16
|
+
channel: "slack",
|
|
17
|
+
template: "slack-alert",
|
|
18
|
+
data: {
|
|
19
|
+
alertType: "gati_inward_skipped",
|
|
20
|
+
message: `Inward skipped — no matching extended variants found for SKUs: ${skippedSkus.join(", ")}`,
|
|
21
|
+
error: "party_style_sku_no not found in extended_variant table",
|
|
22
|
+
severity: "medium",
|
|
23
|
+
metadata: {
|
|
24
|
+
skipped_skus: skippedSkus,
|
|
25
|
+
jewel_codes: inwardNos,
|
|
26
|
+
},
|
|
27
|
+
timestamp: new Date(),
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
]);
|
|
31
|
+
}
|
|
32
|
+
catch (slackError) {
|
|
33
|
+
const logger = container.resolve("logger");
|
|
34
|
+
logger.error(`inward-skipped: failed to send Slack notification: ${slackError?.message}`);
|
|
35
|
+
}
|
|
36
|
+
return new workflows_sdk_1.StepResponse(null);
|
|
37
|
+
});
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZ5LWlud2FyZC1za2lwcGVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9pbndhcmQtbWFzdGVyL3N0ZXBzL25vdGlmeS1pbndhcmQtc2tpcHBlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxRUFBNkU7QUFDN0UscURBQW9EO0FBRXZDLFFBQUEseUJBQXlCLEdBQUcsdUJBQXVCLENBQUM7QUFPcEQsUUFBQSx1QkFBdUIsR0FBRyxJQUFBLDBCQUFVLEVBQy9DLGlDQUF5QixFQUN6QixLQUFLLEVBQUUsS0FBWSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtJQUNwQyxNQUFNLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxHQUFHLEtBQUssQ0FBQztJQUN6QyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU07UUFBRSxPQUFPLElBQUksNEJBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUV2RCxJQUFJLENBQUM7UUFDSCxNQUFNLG1CQUFtQixHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsZUFBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3BFLE1BQU0sbUJBQW1CLENBQUMsbUJBQW1CLENBQUM7WUFDNUM7Z0JBQ0UsRUFBRSxFQUFFLE9BQU87Z0JBQ1gsT0FBTyxFQUFFLE9BQU87Z0JBQ2hCLFFBQVEsRUFBRSxhQUFhO2dCQUN2QixJQUFJLEVBQUU7b0JBQ0osU0FBUyxFQUFFLHFCQUFxQjtvQkFDaEMsT0FBTyxFQUFFLGtFQUFrRSxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO29CQUNuRyxLQUFLLEVBQUUsd0RBQXdEO29CQUMvRCxRQUFRLEVBQUUsUUFBUTtvQkFDbEIsUUFBUSxFQUFFO3dCQUNSLFlBQVksRUFBRSxXQUFXO3dCQUN6QixXQUFXLEVBQUUsU0FBUztxQkFDdkI7b0JBQ0QsU0FBUyxFQUFFLElBQUksSUFBSSxFQUFFO2lCQUN0QjthQUNGO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUFDLE9BQU8sVUFBVSxFQUFFLENBQUM7UUFDcEIsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMzQyxNQUFNLENBQUMsS0FBSyxDQUNWLHNEQUFzRCxVQUFVLEVBQUUsT0FBTyxFQUFFLENBQzVFLENBQUM7SUFDSixDQUFDO0lBRUQsT0FBTyxJQUFJLDRCQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDaEMsQ0FBQyxDQUNGLENBQUMifQ==
|