@devx-commerce/plugin-gati 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.medusa/server/src/api/erp/webhook/route.js +99 -14
- package/.medusa/server/src/links/extended-product.js +10 -0
- package/.medusa/server/src/links/extended-variant.js +10 -0
- package/.medusa/server/src/modules/category-group-master/index.js +13 -0
- package/.medusa/server/src/modules/category-group-master/migrations/Migration20250531004725.js +15 -0
- package/.medusa/server/src/modules/category-group-master/models/category-group-master.js +12 -0
- package/.medusa/server/src/modules/category-group-master/service.js +10 -0
- package/.medusa/server/src/modules/category-master/index.js +13 -0
- package/.medusa/server/src/modules/category-master/migrations/Migration20250513122212.js +15 -0
- package/.medusa/server/src/modules/category-master/migrations/Migration20250519180539.js +14 -0
- package/.medusa/server/src/modules/category-master/migrations/Migration20250531004724.js +14 -0
- package/.medusa/server/src/modules/category-master/models/category-master.js +15 -0
- package/.medusa/server/src/modules/category-master/service.js +10 -0
- package/.medusa/server/src/modules/collection-group-master/index.js +13 -0
- package/.medusa/server/src/modules/collection-group-master/migrations/Migration20250531022203.js +15 -0
- package/.medusa/server/src/modules/collection-group-master/models/collection-group-master.js +12 -0
- package/.medusa/server/src/modules/collection-group-master/service.js +10 -0
- package/.medusa/server/src/modules/collection-master/index.js +13 -0
- package/.medusa/server/src/modules/collection-master/migrations/Migration20250513122211.js +16 -0
- package/.medusa/server/src/modules/collection-master/migrations/Migration20250531025048.js +14 -0
- package/.medusa/server/src/modules/collection-master/models/collection-master.js +15 -0
- package/.medusa/server/src/modules/collection-master/service.js +10 -0
- package/.medusa/server/src/modules/erp/migrations/Migration20250513121436.js +16 -0
- package/.medusa/server/src/modules/erp/models/erp.js +10 -0
- package/.medusa/server/src/modules/erp/service.js +1 -1
- package/.medusa/server/src/modules/erp-event/index.js +13 -0
- package/.medusa/server/src/modules/erp-event/migrations/Migration20250608221239.js +15 -0
- package/.medusa/server/src/modules/erp-event/models/erp-event.js +11 -0
- package/.medusa/server/src/modules/erp-event/service.js +10 -0
- package/.medusa/server/src/modules/extended-product/index.js +13 -0
- package/.medusa/server/src/modules/extended-product/migrations/Migration20250519043358.js +27 -0
- package/.medusa/server/src/modules/extended-product/migrations/Migration20250601030519.js +23 -0
- package/.medusa/server/src/modules/extended-product/models/extended-product.js +173 -0
- package/.medusa/server/src/modules/extended-product/service.js +13 -0
- package/.medusa/server/src/modules/extended-variant/index.js +13 -0
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250507055941.js +27 -0
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250508025507.js +14 -0
- package/.medusa/server/src/modules/extended-variant/migrations/Migration20250601045242.js +18 -0
- package/.medusa/server/src/modules/extended-variant/models/extended-variant.js +162 -0
- package/.medusa/server/src/modules/extended-variant/service.js +12 -0
- package/.medusa/server/src/modules/party-master/index.js +13 -0
- package/.medusa/server/src/modules/party-master/migrations/Migration20250604104235.js +16 -0
- package/.medusa/server/src/modules/party-master/migrations/Migration20250604115453.js +16 -0
- package/.medusa/server/src/modules/party-master/migrations/Migration20250604120348.js +16 -0
- package/.medusa/server/src/modules/party-master/migrations/Migration20250604120701.js +14 -0
- package/.medusa/server/src/modules/party-master/migrations/Migration20250608220924.js +16 -0
- package/.medusa/server/src/modules/party-master/migrations/Migration20250612225738.js +20 -0
- package/.medusa/server/src/modules/party-master/migrations/Migration20250612231031.js +16 -0
- package/.medusa/server/src/modules/party-master/models/party-master.js +60 -0
- package/.medusa/server/src/modules/party-master/service.js +10 -0
- package/.medusa/server/src/modules/raw-master/index.js +13 -0
- package/.medusa/server/src/modules/raw-master/migrations/Migration20250509190057.js +16 -0
- package/.medusa/server/src/modules/raw-master/migrations/Migration20250509190322.js +14 -0
- package/.medusa/server/src/modules/raw-master/models/raw-master.js +17 -0
- package/.medusa/server/src/modules/raw-master/service.js +10 -0
- package/.medusa/server/src/modules/shape-master/index.js +13 -0
- package/.medusa/server/src/modules/shape-master/migrations/Migration20250509174455.js +16 -0
- package/.medusa/server/src/modules/shape-master/models/shape-master.js +13 -0
- package/.medusa/server/src/modules/shape-master/service.js +10 -0
- package/.medusa/server/src/modules/sub-category-master/index.js +13 -0
- package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250513115356.js +15 -0
- package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250519180538.js +14 -0
- package/.medusa/server/src/modules/sub-category-master/migrations/Migration20250531010409.js +14 -0
- package/.medusa/server/src/modules/sub-category-master/models/sub-category-master.js +15 -0
- package/.medusa/server/src/modules/sub-category-master/service.js +10 -0
- package/.medusa/server/src/subscribers/category-group-master.js +117 -0
- package/.medusa/server/src/subscribers/category-master.js +130 -0
- package/.medusa/server/src/subscribers/collection-master.js +115 -0
- package/.medusa/server/src/subscribers/party-master-location.js +128 -0
- package/.medusa/server/src/subscribers/party-master.js +226 -0
- package/.medusa/server/src/subscribers/sub-category-master.js +130 -0
- package/.medusa/server/src/utils/address-formatter.js +60 -0
- package/.medusa/server/src/utils/phone-mapper.js +28 -0
- package/.medusa/server/src/workflows/category-group-master/index.js +58 -0
- package/.medusa/server/src/workflows/category-group-master/steps/create-category-group.js +18 -0
- package/.medusa/server/src/workflows/category-group-master/steps/delete-category-group.js +23 -0
- package/.medusa/server/src/workflows/category-group-master/steps/fetch-category-master.js +70 -0
- package/.medusa/server/src/workflows/category-group-master/steps/update-category-group.js +26 -0
- package/.medusa/server/src/workflows/category-master/index.js +58 -0
- package/.medusa/server/src/workflows/category-master/steps/create-category.js +21 -0
- package/.medusa/server/src/workflows/category-master/steps/delete-category.js +23 -0
- package/.medusa/server/src/workflows/category-master/steps/fetch-category-master.js +70 -0
- package/.medusa/server/src/workflows/category-master/steps/update-category.js +29 -0
- package/.medusa/server/src/workflows/collection-group-master/index.js +37 -0
- package/.medusa/server/src/workflows/collection-group-master/steps/create-category.js +50 -0
- package/.medusa/server/src/workflows/collection-group-master/steps/create-collection-group.js +18 -0
- package/.medusa/server/src/workflows/collection-group-master/steps/delete-collection-group.js +23 -0
- package/.medusa/server/src/workflows/collection-group-master/steps/fetch-collection-grp-master.js +70 -0
- package/.medusa/server/src/workflows/collection-group-master/steps/update-collection-group.js +26 -0
- package/.medusa/server/src/workflows/collection-master/index.js +68 -0
- package/.medusa/server/src/workflows/collection-master/steps/create-category.js +60 -0
- package/.medusa/server/src/workflows/collection-master/steps/create-collection.js +22 -0
- package/.medusa/server/src/workflows/collection-master/steps/delete-collection.js +22 -0
- package/.medusa/server/src/workflows/collection-master/steps/fetch-collection-master.js +70 -0
- package/.medusa/server/src/workflows/collection-master/steps/update-collection.js +32 -0
- package/.medusa/server/src/workflows/create-extended-product-from-product/index.js +86 -0
- package/.medusa/server/src/workflows/create-extended-product-from-product/steps/create-extended-product.js +18 -0
- package/.medusa/server/src/workflows/create-extended-product-from-product/steps/create-style-collection-lines.js +25 -0
- package/.medusa/server/src/workflows/create-extended-product-from-product/steps/create-style-detail-lines.js +25 -0
- package/.medusa/server/src/workflows/create-extended-product-from-product/steps/create-style-exploration-lines.js +26 -0
- package/.medusa/server/src/workflows/create-extended-variant-from-variant/index.js +74 -0
- package/.medusa/server/src/workflows/create-extended-variant-from-variant/steps/create-extended-variant.js +18 -0
- package/.medusa/server/src/workflows/create-extended-variant-from-variant/steps/create-style-detail-lines.js +25 -0
- package/.medusa/server/src/workflows/create-or-update-party-style-master/index.js +191 -0
- package/.medusa/server/src/workflows/create-or-update-party-style-master/steps/fetch-party-styles.js +70 -0
- package/.medusa/server/src/workflows/create-or-update-product-options/index.js +25 -0
- package/.medusa/server/src/workflows/create-or-update-product-options/steps/create-update-product-options.js +28 -0
- package/.medusa/server/src/workflows/create-or-update-style-master/index.js +203 -105
- package/.medusa/server/src/workflows/create-or-update-style-master/steps/fetch-styles.js +70 -0
- package/.medusa/server/src/workflows/erp-event/index.js +10 -0
- package/.medusa/server/src/workflows/erp-event/steps/create-erp-event.js +18 -0
- package/.medusa/server/src/workflows/helpers/product-helper.js +585 -8
- package/.medusa/server/src/workflows/hooks/product-created.js +16 -0
- package/.medusa/server/src/workflows/hooks/product-updated.js +16 -0
- package/.medusa/server/src/workflows/hooks/variant-created.js +16 -0
- package/.medusa/server/src/workflows/index.js +18 -0
- package/.medusa/server/src/workflows/party-master/helpers/index.js +9 -0
- package/.medusa/server/src/workflows/party-master/index.js +139 -0
- package/.medusa/server/src/workflows/party-master/steps/create-party.js +71 -0
- package/.medusa/server/src/workflows/party-master/steps/delete-party.js +23 -0
- package/.medusa/server/src/workflows/party-master/steps/fetch-party-master.js +70 -0
- package/.medusa/server/src/workflows/party-master/steps/update-party-master-with-field.js +15 -0
- package/.medusa/server/src/workflows/party-master/steps/update-party.js +79 -0
- package/.medusa/server/src/workflows/party-master/workflows/update-party-master-with-field.js +11 -0
- package/.medusa/server/src/workflows/raw-master/index.js +30 -0
- package/.medusa/server/src/workflows/raw-master/steps/create-raw.js +25 -0
- package/.medusa/server/src/workflows/raw-master/steps/delete-raw.js +23 -0
- package/.medusa/server/src/workflows/raw-master/steps/fetch-raw-master.js +70 -0
- package/.medusa/server/src/workflows/raw-master/steps/update-raw.js +34 -0
- package/.medusa/server/src/workflows/shape-master/index.js +30 -0
- package/.medusa/server/src/workflows/shape-master/steps/create-shape.js +20 -0
- package/.medusa/server/src/workflows/shape-master/steps/delete-shape.js +23 -0
- package/.medusa/server/src/workflows/shape-master/steps/fetch-shape-master.js +70 -0
- package/.medusa/server/src/workflows/shape-master/steps/update-shape.js +30 -0
- package/.medusa/server/src/workflows/sub-category-master/index.js +58 -0
- package/.medusa/server/src/workflows/sub-category-master/steps/create-sub-category.js +21 -0
- package/.medusa/server/src/workflows/sub-category-master/steps/delete-sub-category.js +23 -0
- package/.medusa/server/src/workflows/sub-category-master/steps/fetch-category-master.js +70 -0
- package/.medusa/server/src/workflows/sub-category-master/steps/update-sub-category.js +31 -0
- package/.medusa/server/src/workflows/types/index.js +9 -1
- package/.medusa/server/src/workflows/update-extended-product-from-product/index.js +48 -0
- package/.medusa/server/src/workflows/update-extended-product-from-product/steps/update-extended-product-from-product.js +56 -0
- package/.medusa/server/src/workflows/update-extended-product-from-product/steps/update-extended-product-with-field.js +15 -0
- package/.medusa/server/src/workflows/update-extended-variant-from-variant/index.js +43 -0
- package/.medusa/server/src/workflows/update-extended-variant-from-variant/steps/update-extended-product-from-product.js +54 -0
- package/.medusa/server/src/workflows/update-extended-variant-from-variant/steps/update-extended-variant-with-field.js +15 -0
- package/package.json +6 -2
- package/.medusa/server/src/workflows/create-or-update-style-master/steps/index.js +0 -18
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.fetchRawData = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const BATCH_SIZE = 50; // Process 50 items at a time
|
|
6
|
+
const MAX_RETRIES = 3;
|
|
7
|
+
const RETRY_DELAY = 1000; // 1 second delay between retries
|
|
8
|
+
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
9
|
+
const processBatch = async (erpService, datafor, batch, retryCount = 0) => {
|
|
10
|
+
try {
|
|
11
|
+
const results = await Promise.all(batch.map(async (transactionId) => {
|
|
12
|
+
try {
|
|
13
|
+
return await erpService.getMasterData(datafor, transactionId);
|
|
14
|
+
}
|
|
15
|
+
catch (error) {
|
|
16
|
+
console.error(`Error fetching data for ID ${transactionId}:`, error);
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
}));
|
|
20
|
+
// Filter out failed requests
|
|
21
|
+
const successfulResults = results.filter((result) => result !== null);
|
|
22
|
+
// If we have failed requests and haven't exceeded max retries, retry them
|
|
23
|
+
if (results.length !== successfulResults.length &&
|
|
24
|
+
retryCount < MAX_RETRIES) {
|
|
25
|
+
const failedIds = batch.filter((_, index) => results[index] === null);
|
|
26
|
+
console.log(`Retrying ${failedIds.length} failed requests (attempt ${retryCount + 1})`);
|
|
27
|
+
await sleep(RETRY_DELAY);
|
|
28
|
+
const retryResults = await processBatch(erpService, datafor, failedIds, retryCount + 1);
|
|
29
|
+
return [...successfulResults, ...retryResults];
|
|
30
|
+
}
|
|
31
|
+
return successfulResults;
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
console.error("Batch processing error:", error);
|
|
35
|
+
if (retryCount < MAX_RETRIES) {
|
|
36
|
+
console.log(`Retrying entire batch (attempt ${retryCount + 1})`);
|
|
37
|
+
await sleep(RETRY_DELAY);
|
|
38
|
+
return processBatch(erpService, datafor, batch, retryCount + 1);
|
|
39
|
+
}
|
|
40
|
+
throw error;
|
|
41
|
+
}
|
|
42
|
+
};
|
|
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
|
+
exports.fetchRawData = (0, workflows_sdk_1.createStep)("fetch-raw-data", async (input, { container }) => {
|
|
50
|
+
const erpService = container.resolve("erp");
|
|
51
|
+
const { datafor, data } = input;
|
|
52
|
+
// Split data into batches
|
|
53
|
+
const batches = [];
|
|
54
|
+
for (let i = 0; i < data.length; i += BATCH_SIZE) {
|
|
55
|
+
batches.push(data.slice(i, i + BATCH_SIZE));
|
|
56
|
+
}
|
|
57
|
+
console.log(`Processing ${data.length} items in ${batches.length} batches`);
|
|
58
|
+
// Process each batch sequentially
|
|
59
|
+
const allResults = [];
|
|
60
|
+
for (let i = 0; i < batches.length; i++) {
|
|
61
|
+
console.log(`Processing batch ${i + 1}/${batches.length}`);
|
|
62
|
+
const batchResults = await processBatch(erpService, datafor, batches[i]);
|
|
63
|
+
allResults.push(...batchResults);
|
|
64
|
+
}
|
|
65
|
+
console.log(`Successfully processed ${allResults.length} items`);
|
|
66
|
+
return new workflows_sdk_1.StepResponse(allResults.flatMap((innerArray) => innerArray));
|
|
67
|
+
}, async (result, { container }) => {
|
|
68
|
+
console.log("Something went wrong in fetch-raw-data");
|
|
69
|
+
});
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2gtcmF3LW1hc3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvcmF3LW1hc3Rlci9zdGVwcy9mZXRjaC1yYXctbWFzdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUk3RSxNQUFNLFVBQVUsR0FBRyxFQUFFLENBQUMsQ0FBQyw2QkFBNkI7QUFDcEQsTUFBTSxXQUFXLEdBQUcsQ0FBQyxDQUFDO0FBQ3RCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxDQUFDLGlDQUFpQztBQUUzRCxNQUFNLEtBQUssR0FBRyxDQUFDLEVBQVUsRUFBRSxFQUFFLENBQUMsSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUVoRixNQUFNLFlBQVksR0FBRyxLQUFLLEVBQ3hCLFVBQTRCLEVBQzVCLE9BQWUsRUFDZixLQUFlLEVBQ2YsVUFBVSxHQUFHLENBQUMsRUFDRSxFQUFFO0lBQ2xCLElBQUksQ0FBQztRQUNILE1BQU0sT0FBTyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDL0IsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsYUFBYSxFQUFFLEVBQUU7WUFDaEMsSUFBSSxDQUFDO2dCQUNILE9BQU8sTUFBTSxVQUFVLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxhQUFhLENBQUMsQ0FBQztZQUNoRSxDQUFDO1lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztnQkFDZixPQUFPLENBQUMsS0FBSyxDQUFDLDhCQUE4QixhQUFhLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDckUsT0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUVGLDZCQUE2QjtRQUM3QixNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxNQUFN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
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateRawStep = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const raw_master_1 = require("../../../modules/raw-master");
|
|
6
|
+
exports.updateRawStep = (0, workflows_sdk_1.createStep)("update-raw-step", async (input, { container }) => {
|
|
7
|
+
const rawMasterModuleService = container.resolve(raw_master_1.RAW_MASTER_MODULE);
|
|
8
|
+
const prevRaw = await rawMasterModuleService.listRawMasters({
|
|
9
|
+
filters: {
|
|
10
|
+
id: {
|
|
11
|
+
in: input.map((item) => item.id),
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
});
|
|
15
|
+
const raw = await rawMasterModuleService.updateRawMasters(input.map((item) => ({
|
|
16
|
+
id: item.id,
|
|
17
|
+
raw_no: item.raw_no,
|
|
18
|
+
raw_code: item.raw_code,
|
|
19
|
+
raw_name: item.raw_name,
|
|
20
|
+
raw_alias_name: item.raw_alias_name,
|
|
21
|
+
raw_mit_no: item.raw_mit_no,
|
|
22
|
+
raw_mit_name: item.raw_mit_name,
|
|
23
|
+
material_group_id: item.material_group_id,
|
|
24
|
+
material_group: item.material_group,
|
|
25
|
+
material_group_name: item.material_group_name,
|
|
26
|
+
})));
|
|
27
|
+
return new workflows_sdk_1.StepResponse(raw, prevRaw);
|
|
28
|
+
}, async (prevRaw, { container }) => {
|
|
29
|
+
if (!prevRaw)
|
|
30
|
+
return;
|
|
31
|
+
const rawMasterModuleService = container.resolve(raw_master_1.RAW_MASTER_MODULE);
|
|
32
|
+
await rawMasterModuleService.createRawMasters(prevRaw);
|
|
33
|
+
});
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLXJhdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvcmF3LW1hc3Rlci9zdGVwcy91cGRhdGUtcmF3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUU3RSw0REFBZ0U7QUFnQm5ELFFBQUEsYUFBYSxHQUFHLElBQUEsMEJBQVUsRUFDckMsaUJBQWlCLEVBQ2pCLEtBQUssRUFBRSxLQUEyQixFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtJQUNuRCxNQUFNLHNCQUFzQixHQUMxQixTQUFTLENBQUMsT0FBTyxDQUFDLDhCQUFpQixDQUFDLENBQUM7SUFFdkMsTUFBTSxPQUFPLEdBQUcsTUFBTSxzQkFBc0IsQ0FBQyxjQUFjLENBQUM7UUFDMUQsT0FBTyxFQUFFO1lBQ1AsRUFBRSxFQUFFO2dCQUNGLEVBQUUsRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO2FBQ2pDO1NBQ0Y7S0FDRixDQUFDLENBQUM7SUFFSCxNQUFNLEdBQUcsR0FBRyxNQUFNLHNCQUFzQixDQUFDLGdCQUFnQixDQUN2RCxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ25CLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtRQUNYLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtRQUNuQixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7UUFDdkIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1FBQ3ZCLGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBYztRQUNuQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7UUFDM0IsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1FBQy9CLGlCQUFpQixFQUFFLElBQUksQ0FBQyxpQkFBaUI7UUFDekMsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO1FBQ25DLG1CQUFtQixFQUFFLElBQUksQ0FBQyxtQkFBbUI7S0FDOUMsQ0FBQyxDQUFDLENBQ0osQ0FBQztJQUVGLE9BQU8sSUFBSSw0QkFBWSxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztBQUN4QyxDQUFDLEVBQ0QsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDL0IsSUFBSSxDQUFDLE9BQU87UUFBRSxPQUFPO0lBQ3JCLE1BQU0sc0JBQXNCLEdBQzFCLFNBQVMsQ0FBQyxPQUFPLENBQUMsOEJBQWlCLENBQUMsQ0FBQztJQUV2QyxNQUFNLHNCQUFzQixDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQ3pELENBQUMsQ0FDRixDQUFDIn0=
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.shapeMasterWorkflow = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const create_shape_1 = require("./steps/create-shape");
|
|
6
|
+
const delete_shape_1 = require("./steps/delete-shape");
|
|
7
|
+
const fetch_shape_master_1 = require("./steps/fetch-shape-master");
|
|
8
|
+
const update_shape_1 = require("./steps/update-shape");
|
|
9
|
+
exports.shapeMasterWorkflow = (0, workflows_sdk_1.createWorkflow)("shape-master", (input) => {
|
|
10
|
+
const shapeData = (0, fetch_shape_master_1.fetchShapeData)(input);
|
|
11
|
+
(0, workflows_sdk_1.when)("create-shape", input, (input) => {
|
|
12
|
+
return input.operation === "add";
|
|
13
|
+
}).then(() => {
|
|
14
|
+
const shape = (0, create_shape_1.createShapeStep)(shapeData);
|
|
15
|
+
return new workflows_sdk_1.WorkflowResponse(shape);
|
|
16
|
+
});
|
|
17
|
+
(0, workflows_sdk_1.when)("update-shape", input, (input) => {
|
|
18
|
+
return input.operation === "update";
|
|
19
|
+
}).then(() => {
|
|
20
|
+
const shape = (0, update_shape_1.updateShapeStep)(shapeData);
|
|
21
|
+
return new workflows_sdk_1.WorkflowResponse(shape);
|
|
22
|
+
});
|
|
23
|
+
(0, workflows_sdk_1.when)("delete-shape", input, (input) => {
|
|
24
|
+
return input.operation === "delete";
|
|
25
|
+
}).then(() => {
|
|
26
|
+
const shape = (0, delete_shape_1.deleteShapeStep)(shapeData);
|
|
27
|
+
return new workflows_sdk_1.WorkflowResponse(shape);
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3NoYXBlLW1hc3Rlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxRUFJMkM7QUFHM0MsdURBQXVEO0FBQ3ZELHVEQUF1RDtBQUN2RCxtRUFBNEQ7QUFDNUQsdURBQXVEO0FBRTFDLFFBQUEsbUJBQW1CLEdBQUcsSUFBQSw4QkFBYyxFQUMvQyxjQUFjLEVBQ2QsQ0FBQyxLQUFrQixFQUFFLEVBQUU7SUFDckIsTUFBTSxTQUFTLEdBQUcsSUFBQSxtQ0FBYyxFQUFDLEtBQUssQ0FBQyxDQUFDO0lBRXhDLElBQUEsb0JBQUksRUFBQyxjQUFjLEVBQUUsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7UUFDcEMsT0FBTyxLQUFLLENBQUMsU0FBUyxLQUFLLEtBQUssQ0FBQztJQUNuQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1FBQ1gsTUFBTSxLQUFLLEdBQUcsSUFBQSw4QkFBZSxFQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXpDLE9BQU8sSUFBSSxnQ0FBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDLENBQUMsQ0FBQztJQUVILElBQUEsb0JBQUksRUFBQyxjQUFjLEVBQUUsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7UUFDcEMsT0FBTyxLQUFLLENBQUMsU0FBUyxLQUFLLFFBQVEsQ0FBQztJQUN0QyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1FBQ1gsTUFBTSxLQUFLLEdBQUcsSUFBQSw4QkFBZSxFQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXpDLE9BQU8sSUFBSSxnQ0FBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDLENBQUMsQ0FBQztJQUVILElBQUEsb0JBQUksRUFBQyxjQUFjLEVBQUUsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7UUFDcEMsT0FBTyxLQUFLLENBQUMsU0FBUyxLQUFLLFFBQVEsQ0FBQztJQUN0QyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1FBQ1gsTUFBTSxLQUFLLEdBQUcsSUFBQSw4QkFBZSxFQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXpDLE9BQU8sSUFBSSxnQ0FBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FDRixDQUFDIn0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createShapeStep = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const shape_master_1 = require("../../../modules/shape-master");
|
|
6
|
+
exports.createShapeStep = (0, workflows_sdk_1.createStep)("create-shape-step", async (input, { container }) => {
|
|
7
|
+
const shapeMasterModuleService = container.resolve(shape_master_1.SHAPE_MASTER_MODULE);
|
|
8
|
+
const shape = await shapeMasterModuleService.createShapeMasters(input.map((item) => ({
|
|
9
|
+
shape_no: item.ShapeNo,
|
|
10
|
+
shape_for: item.ShapeFor,
|
|
11
|
+
shape_code: item.ShapeCode,
|
|
12
|
+
shape_name: item.ShapeName,
|
|
13
|
+
shape_alias_name: item.ShapeAliasName,
|
|
14
|
+
})));
|
|
15
|
+
return new workflows_sdk_1.StepResponse(shape, shape.map((item) => item.id));
|
|
16
|
+
}, async (id, { container }) => {
|
|
17
|
+
const shapeMasterModuleService = container.resolve(shape_master_1.SHAPE_MASTER_MODULE);
|
|
18
|
+
await shapeMasterModuleService.deleteShapeMasters(id);
|
|
19
|
+
});
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXNoYXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9zaGFwZS1tYXN0ZXIvc3RlcHMvY3JlYXRlLXNoYXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUM3RSxnRUFBb0U7QUFXdkQsUUFBQSxlQUFlLEdBQUcsSUFBQSwwQkFBVSxFQUN2QyxtQkFBbUIsRUFDbkIsS0FBSyxFQUFFLEtBQTZCLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFO0lBQ3JELE1BQU0sd0JBQXdCLEdBQzVCLFNBQVMsQ0FBQyxPQUFPLENBQUMsa0NBQW1CLENBQUMsQ0FBQztJQUV6QyxNQUFNLEtBQUssR0FBRyxNQUFNLHdCQUF3QixDQUFDLGtCQUFrQixDQUM3RCxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ25CLFFBQVEsRUFBRSxJQUFJLENBQUMsT0FBTztRQUN0QixTQUFTLEVBQUUsSUFBSSxDQUFDLFFBQVE7UUFDeEIsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTO1FBQzFCLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUztRQUMxQixnQkFBZ0IsRUFBRSxJQUFJLENBQUMsY0FBYztLQUN0QyxDQUFDLENBQUMsQ0FDSixDQUFDO0lBRUYsT0FBTyxJQUFJLDRCQUFZLENBQ3JCLEtBQUssRUFDTCxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQzdCLENBQUM7QUFDSixDQUFDLEVBQ0QsS0FBSyxFQUFFLEVBQVksRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDcEMsTUFBTSx3QkFBd0IsR0FDNUIsU0FBUyxDQUFDLE9BQU8sQ0FBQyxrQ0FBbUIsQ0FBQyxDQUFDO0lBRXpDLE1BQU0sd0JBQXdCLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDeEQsQ0FBQyxDQUNGLENBQUMifQ==
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.deleteShapeStep = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const shape_master_1 = require("../../../modules/shape-master");
|
|
6
|
+
exports.deleteShapeStep = (0, workflows_sdk_1.createStep)("delete-shape-step", async (input, { container }) => {
|
|
7
|
+
const shapeMasterModuleService = container.resolve(shape_master_1.SHAPE_MASTER_MODULE);
|
|
8
|
+
const prevShape = await shapeMasterModuleService.listShapeMasters({
|
|
9
|
+
filters: {
|
|
10
|
+
id: {
|
|
11
|
+
in: input.map((item) => item.id),
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
});
|
|
15
|
+
const shape = await shapeMasterModuleService.deleteShapeMasters(input.map((item) => item.id));
|
|
16
|
+
return new workflows_sdk_1.StepResponse(shape, prevShape);
|
|
17
|
+
}, async (prevShape, { container }) => {
|
|
18
|
+
if (!prevShape)
|
|
19
|
+
return;
|
|
20
|
+
const shapeMasterModuleService = container.resolve(shape_master_1.SHAPE_MASTER_MODULE);
|
|
21
|
+
await shapeMasterModuleService.createShapeMasters(prevShape);
|
|
22
|
+
});
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLXNoYXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9zaGFwZS1tYXN0ZXIvc3RlcHMvZGVsZXRlLXNoYXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUU3RSxnRUFBb0U7QUFPdkQsUUFBQSxlQUFlLEdBQUcsSUFBQSwwQkFBVSxFQUN2QyxtQkFBbUIsRUFDbkIsS0FBSyxFQUFFLEtBQTZCLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFO0lBQ3JELE1BQU0sd0JBQXdCLEdBQzVCLFNBQVMsQ0FBQyxPQUFPLENBQUMsa0NBQW1CLENBQUMsQ0FBQztJQUV6QyxNQUFNLFNBQVMsR0FBRyxNQUFNLHdCQUF3QixDQUFDLGdCQUFnQixDQUFDO1FBQ2hFLE9BQU8sRUFBRTtZQUNQLEVBQUUsRUFBRTtnQkFDRixFQUFFLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQzthQUNqQztTQUNGO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsTUFBTSxLQUFLLEdBQUcsTUFBTSx3QkFBd0IsQ0FBQyxrQkFBa0IsQ0FDN0QsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUM3QixDQUFDO0lBRUYsT0FBTyxJQUFJLDRCQUFZLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQzVDLENBQUMsRUFDRCxLQUFLLEVBQUUsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtJQUNqQyxJQUFJLENBQUMsU0FBUztRQUFFLE9BQU87SUFDdkIsTUFBTSx3QkFBd0IsR0FDNUIsU0FBUyxDQUFDLE9BQU8sQ0FBQyxrQ0FBbUIsQ0FBQyxDQUFDO0lBRXpDLE1BQU0sd0JBQXdCLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDL0QsQ0FBQyxDQUNGLENBQUMifQ==
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.fetchShapeData = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const BATCH_SIZE = 50; // Process 50 items at a time
|
|
6
|
+
const MAX_RETRIES = 3;
|
|
7
|
+
const RETRY_DELAY = 1000; // 1 second delay between retries
|
|
8
|
+
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
9
|
+
const processBatch = async (erpService, datafor, batch, retryCount = 0) => {
|
|
10
|
+
try {
|
|
11
|
+
const results = await Promise.all(batch.map(async (transactionId) => {
|
|
12
|
+
try {
|
|
13
|
+
return await erpService.getMasterData(datafor, transactionId);
|
|
14
|
+
}
|
|
15
|
+
catch (error) {
|
|
16
|
+
console.error(`Error fetching data for ID ${transactionId}:`, error);
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
}));
|
|
20
|
+
// Filter out failed requests
|
|
21
|
+
const successfulResults = results.filter((result) => result !== null);
|
|
22
|
+
// If we have failed requests and haven't exceeded max retries, retry them
|
|
23
|
+
if (results.length !== successfulResults.length &&
|
|
24
|
+
retryCount < MAX_RETRIES) {
|
|
25
|
+
const failedIds = batch.filter((_, index) => results[index] === null);
|
|
26
|
+
console.log(`Retrying ${failedIds.length} failed requests (attempt ${retryCount + 1})`);
|
|
27
|
+
await sleep(RETRY_DELAY);
|
|
28
|
+
const retryResults = await processBatch(erpService, datafor, failedIds, retryCount + 1);
|
|
29
|
+
return [...successfulResults, ...retryResults];
|
|
30
|
+
}
|
|
31
|
+
return successfulResults;
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
console.error("Batch processing error:", error);
|
|
35
|
+
if (retryCount < MAX_RETRIES) {
|
|
36
|
+
console.log(`Retrying entire batch (attempt ${retryCount + 1})`);
|
|
37
|
+
await sleep(RETRY_DELAY);
|
|
38
|
+
return processBatch(erpService, datafor, batch, retryCount + 1);
|
|
39
|
+
}
|
|
40
|
+
throw error;
|
|
41
|
+
}
|
|
42
|
+
};
|
|
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
|
+
exports.fetchShapeData = (0, workflows_sdk_1.createStep)("fetch-shape-data", async (input, { container }) => {
|
|
50
|
+
const erpService = container.resolve("erp");
|
|
51
|
+
const { datafor, data } = input;
|
|
52
|
+
// Split data into batches
|
|
53
|
+
const batches = [];
|
|
54
|
+
for (let i = 0; i < data.length; i += BATCH_SIZE) {
|
|
55
|
+
batches.push(data.slice(i, i + BATCH_SIZE));
|
|
56
|
+
}
|
|
57
|
+
console.log(`Processing ${data.length} items in ${batches.length} batches`);
|
|
58
|
+
// Process each batch sequentially
|
|
59
|
+
const allResults = [];
|
|
60
|
+
for (let i = 0; i < batches.length; i++) {
|
|
61
|
+
console.log(`Processing batch ${i + 1}/${batches.length}`);
|
|
62
|
+
const batchResults = await processBatch(erpService, datafor, batches[i]);
|
|
63
|
+
allResults.push(...batchResults);
|
|
64
|
+
}
|
|
65
|
+
console.log(`Successfully processed ${allResults.length} items`);
|
|
66
|
+
return new workflows_sdk_1.StepResponse(allResults.flatMap((innerArray) => innerArray));
|
|
67
|
+
}, async (result, { container }) => {
|
|
68
|
+
console.log("Something went wrong in fetch-shape-data");
|
|
69
|
+
});
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2gtc2hhcGUtbWFzdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9zaGFwZS1tYXN0ZXIvc3RlcHMvZmV0Y2gtc2hhcGUtbWFzdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUk3RSxNQUFNLFVBQVUsR0FBRyxFQUFFLENBQUMsQ0FBQyw2QkFBNkI7QUFDcEQsTUFBTSxXQUFXLEdBQUcsQ0FBQyxDQUFDO0FBQ3RCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxDQUFDLGlDQUFpQztBQUUzRCxNQUFNLEtBQUssR0FBRyxDQUFDLEVBQVUsRUFBRSxFQUFFLENBQUMsSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUVoRixNQUFNLFlBQVksR0FBRyxLQUFLLEVBQ3hCLFVBQTRCLEVBQzVCLE9BQWUsRUFDZixLQUFlLEVBQ2YsVUFBVSxHQUFHLENBQUMsRUFDRSxFQUFFO0lBQ2xCLElBQUksQ0FBQztRQUNILE1BQU0sT0FBTyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDL0IsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsYUFBYSxFQUFFLEVBQUU7WUFDaEMsSUFBSSxDQUFDO2dCQUNILE9BQU8sTUFBTSxVQUFVLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxhQUFhLENBQUMsQ0FBQztZQUNoRSxDQUFDO1lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztnQkFDZixPQUFPLENBQUMsS0FBSyxDQUFDLDhCQUE4QixhQUFhLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDckUsT0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUVGLDZCQUE2QjtRQUM3QixNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FB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
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateShapeStep = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const shape_master_1 = require("../../../modules/shape-master");
|
|
6
|
+
exports.updateShapeStep = (0, workflows_sdk_1.createStep)("update-shape-step", async (input, { container }) => {
|
|
7
|
+
const shapeMasterModuleService = container.resolve(shape_master_1.SHAPE_MASTER_MODULE);
|
|
8
|
+
const prevShape = await shapeMasterModuleService.listShapeMasters({
|
|
9
|
+
filters: {
|
|
10
|
+
id: {
|
|
11
|
+
in: input.map((item) => item.id),
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
});
|
|
15
|
+
const shape = await shapeMasterModuleService.updateShapeMasters(input.map((item) => ({
|
|
16
|
+
id: item.id,
|
|
17
|
+
shape_no: item.shape_no,
|
|
18
|
+
shape_for: item.shape_for,
|
|
19
|
+
shape_code: item.shape_code,
|
|
20
|
+
shape_name: item.shape_name,
|
|
21
|
+
shape_alias_name: item.shape_alias_name,
|
|
22
|
+
})));
|
|
23
|
+
return new workflows_sdk_1.StepResponse(shape, prevShape);
|
|
24
|
+
}, async (prevShape, { container }) => {
|
|
25
|
+
if (!prevShape)
|
|
26
|
+
return;
|
|
27
|
+
const shapeMasterModuleService = container.resolve(shape_master_1.SHAPE_MASTER_MODULE);
|
|
28
|
+
await shapeMasterModuleService.updateShapeMasters(prevShape);
|
|
29
|
+
});
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLXNoYXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9zaGFwZS1tYXN0ZXIvc3RlcHMvdXBkYXRlLXNoYXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUU3RSxnRUFBb0U7QUFZdkQsUUFBQSxlQUFlLEdBQUcsSUFBQSwwQkFBVSxFQUN2QyxtQkFBbUIsRUFDbkIsS0FBSyxFQUFFLEtBQTZCLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFO0lBQ3JELE1BQU0sd0JBQXdCLEdBQzVCLFNBQVMsQ0FBQyxPQUFPLENBQUMsa0NBQW1CLENBQUMsQ0FBQztJQUV6QyxNQUFNLFNBQVMsR0FBRyxNQUFNLHdCQUF3QixDQUFDLGdCQUFnQixDQUFDO1FBQ2hFLE9BQU8sRUFBRTtZQUNQLEVBQUUsRUFBRTtnQkFDRixFQUFFLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQzthQUNqQztTQUNGO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsTUFBTSxLQUFLLEdBQUcsTUFBTSx3QkFBd0IsQ0FBQyxrQkFBa0IsQ0FDN0QsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNuQixFQUFFLEVBQUUsSUFBSSxDQUFDLEVBQUU7UUFDWCxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7UUFDdkIsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1FBQ3pCLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtRQUMzQixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7UUFDM0IsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLGdCQUFnQjtLQUN4QyxDQUFDLENBQUMsQ0FDSixDQUFDO0lBRUYsT0FBTyxJQUFJLDRCQUFZLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQzVDLENBQUMsRUFDRCxLQUFLLEVBQUUsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtJQUNqQyxJQUFJLENBQUMsU0FBUztRQUFFLE9BQU87SUFDdkIsTUFBTSx3QkFBd0IsR0FDNUIsU0FBUyxDQUFDLE9BQU8sQ0FBQyxrQ0FBbUIsQ0FBQyxDQUFDO0lBRXpDLE1BQU0sd0JBQXdCLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDL0QsQ0FBQyxDQUNGLENBQUMifQ==
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.subCategoryMasterWorkflow = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
6
|
+
const create_sub_category_1 = require("./steps/create-sub-category");
|
|
7
|
+
const delete_sub_category_1 = require("./steps/delete-sub-category");
|
|
8
|
+
const fetch_category_master_1 = require("./steps/fetch-category-master");
|
|
9
|
+
const update_sub_category_1 = require("./steps/update-sub-category");
|
|
10
|
+
exports.subCategoryMasterWorkflow = (0, workflows_sdk_1.createWorkflow)("sub-category-master", (input) => {
|
|
11
|
+
const subCategoryData = (0, fetch_category_master_1.fetchSubCategoryData)(input);
|
|
12
|
+
(0, workflows_sdk_1.when)("create-sub-category", input, (input) => {
|
|
13
|
+
return input.operation === "add";
|
|
14
|
+
}).then(() => {
|
|
15
|
+
const subCategory = (0, create_sub_category_1.createSubCategoryStep)(subCategoryData);
|
|
16
|
+
(0, core_flows_1.emitEventStep)({
|
|
17
|
+
eventName: "sub_category_master",
|
|
18
|
+
data: {
|
|
19
|
+
operation: "create",
|
|
20
|
+
data: subCategory,
|
|
21
|
+
},
|
|
22
|
+
}).config({
|
|
23
|
+
name: "create-sub-category-event",
|
|
24
|
+
});
|
|
25
|
+
return new workflows_sdk_1.WorkflowResponse(subCategory);
|
|
26
|
+
});
|
|
27
|
+
(0, workflows_sdk_1.when)("update-sub-category", input, (input) => {
|
|
28
|
+
return input.operation === "update";
|
|
29
|
+
}).then(() => {
|
|
30
|
+
const subCategory = (0, update_sub_category_1.updateSubCategoryStep)(subCategoryData);
|
|
31
|
+
(0, core_flows_1.emitEventStep)({
|
|
32
|
+
eventName: "sub_category_master",
|
|
33
|
+
data: {
|
|
34
|
+
operation: "update",
|
|
35
|
+
data: subCategory,
|
|
36
|
+
},
|
|
37
|
+
}).config({
|
|
38
|
+
name: "update-sub-category-event",
|
|
39
|
+
});
|
|
40
|
+
return new workflows_sdk_1.WorkflowResponse(subCategory);
|
|
41
|
+
});
|
|
42
|
+
(0, workflows_sdk_1.when)("delete-sub-category", input, (input) => {
|
|
43
|
+
return input.operation === "delete";
|
|
44
|
+
}).then(() => {
|
|
45
|
+
const subCategory = (0, delete_sub_category_1.deleteSubCategoryStep)(subCategoryData);
|
|
46
|
+
(0, core_flows_1.emitEventStep)({
|
|
47
|
+
eventName: "sub_category_master",
|
|
48
|
+
data: {
|
|
49
|
+
operation: "delete",
|
|
50
|
+
data: subCategory,
|
|
51
|
+
},
|
|
52
|
+
}).config({
|
|
53
|
+
name: "delete-sub-category-event",
|
|
54
|
+
});
|
|
55
|
+
return new workflows_sdk_1.WorkflowResponse(subCategory);
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3N1Yi1jYXRlZ29yeS1tYXN0ZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUVBSTJDO0FBQzNDLDREQUE0RDtBQUc1RCxxRUFBb0U7QUFDcEUscUVBQW9FO0FBQ3BFLHlFQUFxRTtBQUNyRSxxRUFBb0U7QUFFdkQsUUFBQSx5QkFBeUIsR0FBRyxJQUFBLDhCQUFjLEVBQ3JELHFCQUFxQixFQUNyQixDQUFDLEtBQWtCLEVBQUUsRUFBRTtJQUNyQixNQUFNLGVBQWUsR0FBRyxJQUFBLDRDQUFvQixFQUFDLEtBQUssQ0FBQyxDQUFDO0lBRXBELElBQUEsb0JBQUksRUFBQyxxQkFBcUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRTtRQUMzQyxPQUFPLEtBQUssQ0FBQyxTQUFTLEtBQUssS0FBSyxDQUFDO0lBQ25DLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7UUFDWCxNQUFNLFdBQVcsR0FBRyxJQUFBLDJDQUFxQixFQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzNELElBQUEsMEJBQWEsRUFBQztZQUNaLFNBQVMsRUFBRSxxQkFBcUI7WUFDaEMsSUFBSSxFQUFFO2dCQUNKLFNBQVMsRUFBRSxRQUFRO2dCQUNuQixJQUFJLEVBQUUsV0FBVzthQUNsQjtTQUNGLENBQUMsQ0FBQyxNQUFNLENBQUM7WUFDUixJQUFJLEVBQUUsMkJBQTJCO1NBQ2xDLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxnQ0FBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUMzQyxDQUFDLENBQUMsQ0FBQztJQUVILElBQUEsb0JBQUksRUFBQyxxQkFBcUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRTtRQUMzQyxPQUFPLEtBQUssQ0FBQyxTQUFTLEtBQUssUUFBUSxDQUFDO0lBQ3RDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7UUFDWCxNQUFNLFdBQVcsR0FBRyxJQUFBLDJDQUFxQixFQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzNELElBQUEsMEJBQWEsRUFBQztZQUNaLFNBQVMsRUFBRSxxQkFBcUI7WUFDaEMsSUFBSSxFQUFFO2dCQUNKLFNBQVMsRUFBRSxRQUFRO2dCQUNuQixJQUFJLEVBQUUsV0FBVzthQUNsQjtTQUNGLENBQUMsQ0FBQyxNQUFNLENBQUM7WUFDUixJQUFJLEVBQUUsMkJBQTJCO1NBQ2xDLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxnQ0FBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUMzQyxDQUFDLENBQUMsQ0FBQztJQUVILElBQUEsb0JBQUksRUFBQyxxQkFBcUIsRUFBRSxLQUFLLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRTtRQUMzQyxPQUFPLEtBQUssQ0FBQyxTQUFTLEtBQUssUUFBUSxDQUFDO0lBQ3RDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7UUFDWCxNQUFNLFdBQVcsR0FBRyxJQUFBLDJDQUFxQixFQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzNELElBQUEsMEJBQWEsRUFBQztZQUNaLFNBQVMsRUFBRSxxQkFBcUI7WUFDaEMsSUFBSSxFQUFFO2dCQUNKLFNBQVMsRUFBRSxRQUFRO2dCQUNuQixJQUFJLEVBQUUsV0FBVzthQUNsQjtTQUNGLENBQUMsQ0FBQyxNQUFNLENBQUM7WUFDUixJQUFJLEVBQUUsMkJBQTJCO1NBQ2xDLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxnQ0FBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUMzQyxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FDRixDQUFDIn0=
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createSubCategoryStep = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const sub_category_master_1 = require("../../../modules/sub-category-master");
|
|
6
|
+
exports.createSubCategoryStep = (0, workflows_sdk_1.createStep)("create-sub-category-step", async (input, { container }) => {
|
|
7
|
+
const subCategoryMasterModuleService = container.resolve(sub_category_master_1.SUB_CATEGORY_MASTER_MODULE);
|
|
8
|
+
const subCategory = await subCategoryMasterModuleService.createSubCategoryMasters(input.map((item) => ({
|
|
9
|
+
sub_item_no: item.SubItmNo,
|
|
10
|
+
sub_category_code: item.SubCategoryCode,
|
|
11
|
+
sub_category_name: item.SubCategoryName,
|
|
12
|
+
grp_no: item.GrpNo,
|
|
13
|
+
category_code: item.CategoryCode,
|
|
14
|
+
category_name: item.CategoryName,
|
|
15
|
+
})));
|
|
16
|
+
return new workflows_sdk_1.StepResponse(subCategory, subCategory.map((item) => item.id));
|
|
17
|
+
}, async (id, { container }) => {
|
|
18
|
+
const subCategoryMasterModuleService = container.resolve(sub_category_master_1.SUB_CATEGORY_MASTER_MODULE);
|
|
19
|
+
await subCategoryMasterModuleService.deleteSubCategoryMasters(id);
|
|
20
|
+
});
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXN1Yi1jYXRlZ29yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3Mvc3ViLWNhdGVnb3J5LW1hc3Rlci9zdGVwcy9jcmVhdGUtc3ViLWNhdGVnb3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUM3RSw4RUFBa0Y7QUFZckUsUUFBQSxxQkFBcUIsR0FBRyxJQUFBLDBCQUFVLEVBQzdDLDBCQUEwQixFQUMxQixLQUFLLEVBQUUsS0FBbUMsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDM0QsTUFBTSw4QkFBOEIsR0FDbEMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxnREFBMEIsQ0FBQyxDQUFDO0lBRWhELE1BQU0sV0FBVyxHQUNmLE1BQU0sOEJBQThCLENBQUMsd0JBQXdCLENBQzNELEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDbkIsV0FBVyxFQUFFLElBQUksQ0FBQyxRQUFRO1FBQzFCLGlCQUFpQixFQUFFLElBQUksQ0FBQyxlQUFlO1FBQ3ZDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxlQUFlO1FBQ3ZDLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSztRQUNsQixhQUFhLEVBQUUsSUFBSSxDQUFDLFlBQVk7UUFDaEMsYUFBYSxFQUFFLElBQUksQ0FBQyxZQUFZO0tBQ2pDLENBQUMsQ0FBQyxDQUNKLENBQUM7SUFFSixPQUFPLElBQUksNEJBQVksQ0FDckIsV0FBVyxFQUNYLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FDbkMsQ0FBQztBQUNKLENBQUMsRUFDRCxLQUFLLEVBQUUsRUFBWSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtJQUNwQyxNQUFNLDhCQUE4QixHQUNsQyxTQUFTLENBQUMsT0FBTyxDQUFDLGdEQUEwQixDQUFDLENBQUM7SUFFaEQsTUFBTSw4QkFBOEIsQ0FBQyx3QkFBd0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUNwRSxDQUFDLENBQ0YsQ0FBQyJ9
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.deleteSubCategoryStep = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const sub_category_master_1 = require("../../../modules/sub-category-master");
|
|
6
|
+
exports.deleteSubCategoryStep = (0, workflows_sdk_1.createStep)("delete-sub-category-step", async (input, { container }) => {
|
|
7
|
+
const subCategoryMasterModuleService = container.resolve(sub_category_master_1.SUB_CATEGORY_MASTER_MODULE);
|
|
8
|
+
const prevSubCategory = await subCategoryMasterModuleService.listSubCategoryMasters({
|
|
9
|
+
filters: {
|
|
10
|
+
id: {
|
|
11
|
+
in: input.map((item) => item.id),
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
});
|
|
15
|
+
const subCategory = await subCategoryMasterModuleService.deleteSubCategoryMasters(input.map((item) => item.id));
|
|
16
|
+
return new workflows_sdk_1.StepResponse(subCategory, prevSubCategory);
|
|
17
|
+
}, async (prevSubCategory, { container }) => {
|
|
18
|
+
if (!prevSubCategory)
|
|
19
|
+
return;
|
|
20
|
+
const subCategoryMasterModuleService = container.resolve(sub_category_master_1.SUB_CATEGORY_MASTER_MODULE);
|
|
21
|
+
await subCategoryMasterModuleService.restoreSubCategoryMasters(prevSubCategory.map((item) => item.id));
|
|
22
|
+
});
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLXN1Yi1jYXRlZ29yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3Mvc3ViLWNhdGVnb3J5LW1hc3Rlci9zdGVwcy9kZWxldGUtc3ViLWNhdGVnb3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUU3RSw4RUFBa0Y7QUFPckUsUUFBQSxxQkFBcUIsR0FBRyxJQUFBLDBCQUFVLEVBQzdDLDBCQUEwQixFQUMxQixLQUFLLEVBQUUsS0FBbUMsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDM0QsTUFBTSw4QkFBOEIsR0FDbEMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxnREFBMEIsQ0FBQyxDQUFDO0lBRWhELE1BQU0sZUFBZSxHQUNuQixNQUFNLDhCQUE4QixDQUFDLHNCQUFzQixDQUFDO1FBQzFELE9BQU8sRUFBRTtZQUNQLEVBQUUsRUFBRTtnQkFDRixFQUFFLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQzthQUNqQztTQUNGO0tBQ0YsQ0FBQyxDQUFDO0lBRUwsTUFBTSxXQUFXLEdBQ2YsTUFBTSw4QkFBOEIsQ0FBQyx3QkFBd0IsQ0FDM0QsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUM3QixDQUFDO0lBRUosT0FBTyxJQUFJLDRCQUFZLENBQUMsV0FBVyxFQUFFLGVBQWUsQ0FBQyxDQUFDO0FBQ3hELENBQUMsRUFDRCxLQUFLLEVBQUUsZUFBZSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtJQUN2QyxJQUFJLENBQUMsZUFBZTtRQUFFLE9BQU87SUFDN0IsTUFBTSw4QkFBOEIsR0FDbEMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxnREFBMEIsQ0FBQyxDQUFDO0lBRWhELE1BQU0sOEJBQThCLENBQUMseUJBQXlCLENBQzVELGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FDdkMsQ0FBQztBQUNKLENBQUMsQ0FDRixDQUFDIn0=
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.fetchSubCategoryData = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const BATCH_SIZE = 50; // Process 50 items at a time
|
|
6
|
+
const MAX_RETRIES = 3;
|
|
7
|
+
const RETRY_DELAY = 1000; // 1 second delay between retries
|
|
8
|
+
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
9
|
+
const processBatch = async (erpService, datafor, batch, retryCount = 0) => {
|
|
10
|
+
try {
|
|
11
|
+
const results = await Promise.all(batch.map(async (transactionId) => {
|
|
12
|
+
try {
|
|
13
|
+
return await erpService.getMasterData(datafor, transactionId);
|
|
14
|
+
}
|
|
15
|
+
catch (error) {
|
|
16
|
+
console.error(`Error fetching data for ID ${transactionId}:`, error);
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
}));
|
|
20
|
+
// Filter out failed requests
|
|
21
|
+
const successfulResults = results.filter((result) => result !== null);
|
|
22
|
+
// If we have failed requests and haven't exceeded max retries, retry them
|
|
23
|
+
if (results.length !== successfulResults.length &&
|
|
24
|
+
retryCount < MAX_RETRIES) {
|
|
25
|
+
const failedIds = batch.filter((_, index) => results[index] === null);
|
|
26
|
+
console.log(`Retrying ${failedIds.length} failed requests (attempt ${retryCount + 1})`);
|
|
27
|
+
await sleep(RETRY_DELAY);
|
|
28
|
+
const retryResults = await processBatch(erpService, datafor, failedIds, retryCount + 1);
|
|
29
|
+
return [...successfulResults, ...retryResults];
|
|
30
|
+
}
|
|
31
|
+
return successfulResults;
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
console.error("Batch processing error:", error);
|
|
35
|
+
if (retryCount < MAX_RETRIES) {
|
|
36
|
+
console.log(`Retrying entire batch (attempt ${retryCount + 1})`);
|
|
37
|
+
await sleep(RETRY_DELAY);
|
|
38
|
+
return processBatch(erpService, datafor, batch, retryCount + 1);
|
|
39
|
+
}
|
|
40
|
+
throw error;
|
|
41
|
+
}
|
|
42
|
+
};
|
|
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
|
+
exports.fetchSubCategoryData = (0, workflows_sdk_1.createStep)("fetch-sub-category-data", async (input, { container }) => {
|
|
50
|
+
const erpService = container.resolve("erp");
|
|
51
|
+
const { datafor, data } = input;
|
|
52
|
+
// Split data into batches
|
|
53
|
+
const batches = [];
|
|
54
|
+
for (let i = 0; i < data.length; i += BATCH_SIZE) {
|
|
55
|
+
batches.push(data.slice(i, i + BATCH_SIZE));
|
|
56
|
+
}
|
|
57
|
+
console.log(`Processing ${data.length} items in ${batches.length} batches`);
|
|
58
|
+
// Process each batch sequentially
|
|
59
|
+
const allResults = [];
|
|
60
|
+
for (let i = 0; i < batches.length; i++) {
|
|
61
|
+
console.log(`Processing batch ${i + 1}/${batches.length}`);
|
|
62
|
+
const batchResults = await processBatch(erpService, datafor, batches[i]);
|
|
63
|
+
allResults.push(...batchResults);
|
|
64
|
+
}
|
|
65
|
+
console.log(`Successfully processed ${allResults.length} items`);
|
|
66
|
+
return new workflows_sdk_1.StepResponse(allResults.flatMap((innerArray) => innerArray));
|
|
67
|
+
}, async (result, { container }) => {
|
|
68
|
+
console.log("Something went wrong in fetch-sub-category-data");
|
|
69
|
+
});
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2gtY2F0ZWdvcnktbWFzdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9zdWItY2F0ZWdvcnktbWFzdGVyL3N0ZXBzL2ZldGNoLWNhdGVnb3J5LW1hc3Rlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxRUFBNkU7QUFJN0UsTUFBTSxVQUFVLEdBQUcsRUFBRSxDQUFDLENBQUMsNkJBQTZCO0FBQ3BELE1BQU0sV0FBVyxHQUFHLENBQUMsQ0FBQztBQUN0QixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsQ0FBQyxpQ0FBaUM7QUFFM0QsTUFBTSxLQUFLLEdBQUcsQ0FBQyxFQUFVLEVBQUUsRUFBRSxDQUFDLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFFaEYsTUFBTSxZQUFZLEdBQUcsS0FBSyxFQUN4QixVQUE0QixFQUM1QixPQUFlLEVBQ2YsS0FBZSxFQUNmLFVBQVUsR0FBRyxDQUFDLEVBQ0UsRUFBRTtJQUNsQixJQUFJLENBQUM7UUFDSCxNQUFNLE9BQU8sR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQy9CLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLGFBQWEsRUFBRSxFQUFFO1lBQ2hDLElBQUksQ0FBQztnQkFDSCxPQUFPLE1BQU0sVUFBVSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsYUFBYSxDQUFDLENBQUM7WUFDaEUsQ0FBQztZQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7Z0JBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyw4QkFBOEIsYUFBYSxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQ3JFLE9BQU8sSUFBSSxDQUFDO1lBQ2QsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUNILENBQUM7UUFFRiw2QkFBNkI7UUFDN0IsTUFBTSxpQkFBaUIs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
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateSubCategoryStep = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const sub_category_master_1 = require("../../../modules/sub-category-master");
|
|
6
|
+
exports.updateSubCategoryStep = (0, workflows_sdk_1.createStep)("update-sub-category-step", async (input, { container }) => {
|
|
7
|
+
const subCategoryMasterModuleService = container.resolve(sub_category_master_1.SUB_CATEGORY_MASTER_MODULE);
|
|
8
|
+
const prevSubCategory = await subCategoryMasterModuleService.listSubCategoryMasters({
|
|
9
|
+
filters: {
|
|
10
|
+
sub_item_no: {
|
|
11
|
+
$in: input.map((item) => item.SubItmNo),
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
});
|
|
15
|
+
const subCategory = await subCategoryMasterModuleService.updateSubCategoryMasters(input.map((item) => ({
|
|
16
|
+
id: prevSubCategory.find((c) => c.sub_item_no === item.SubItmNo)?.id,
|
|
17
|
+
sub_item_no: item.SubItmNo,
|
|
18
|
+
sub_category_code: item.SubCategoryCode,
|
|
19
|
+
sub_category_name: item.SubCategoryName,
|
|
20
|
+
grp_no: item.GrpNo,
|
|
21
|
+
category_code: item.CategoryCode,
|
|
22
|
+
category_name: item.CategoryName,
|
|
23
|
+
})));
|
|
24
|
+
return new workflows_sdk_1.StepResponse(subCategory, prevSubCategory);
|
|
25
|
+
}, async (prevSubCategory, { container }) => {
|
|
26
|
+
if (!prevSubCategory)
|
|
27
|
+
return;
|
|
28
|
+
const subCategoryMasterModuleService = container.resolve(sub_category_master_1.SUB_CATEGORY_MASTER_MODULE);
|
|
29
|
+
await subCategoryMasterModuleService.createSubCategoryMasters(prevSubCategory);
|
|
30
|
+
});
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLXN1Yi1jYXRlZ29yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3Mvc3ViLWNhdGVnb3J5LW1hc3Rlci9zdGVwcy91cGRhdGUtc3ViLWNhdGVnb3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUU3RSw4RUFBa0Y7QUFZckUsUUFBQSxxQkFBcUIsR0FBRyxJQUFBLDBCQUFVLEVBQzdDLDBCQUEwQixFQUMxQixLQUFLLEVBQUUsS0FBbUMsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDM0QsTUFBTSw4QkFBOEIsR0FDbEMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxnREFBMEIsQ0FBQyxDQUFDO0lBRWhELE1BQU0sZUFBZSxHQUNuQixNQUFNLDhCQUE4QixDQUFDLHNCQUFzQixDQUFDO1FBQzFELE9BQU8sRUFBRTtZQUNQLFdBQVcsRUFBRTtnQkFDWCxHQUFHLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQzthQUN4QztTQUNGO0tBQ0YsQ0FBQyxDQUFDO0lBRUwsTUFBTSxXQUFXLEdBQ2YsTUFBTSw4QkFBOEIsQ0FBQyx3QkFBd0IsQ0FDM0QsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNuQixFQUFFLEVBQUUsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsS0FBSyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRTtRQUNwRSxXQUFXLEVBQUUsSUFBSSxDQUFDLFFBQVE7UUFDMUIsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGVBQWU7UUFDdkMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGVBQWU7UUFDdkMsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLO1FBQ2xCLGFBQWEsRUFBRSxJQUFJLENBQUMsWUFBWTtRQUNoQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFlBQVk7S0FDakMsQ0FBQyxDQUFDLENBQ0osQ0FBQztJQUVKLE9BQU8sSUFBSSw0QkFBWSxDQUFDLFdBQVcsRUFBRSxlQUFlLENBQUMsQ0FBQztBQUN4RCxDQUFDLEVBQ0QsS0FBSyxFQUFFLGVBQWUsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDdkMsSUFBSSxDQUFDLGVBQWU7UUFBRSxPQUFPO0lBQzdCLE1BQU0sOEJBQThCLEdBQ2xDLFNBQVMsQ0FBQyxPQUFPLENBQUMsZ0RBQTBCLENBQUMsQ0FBQztJQUVoRCxNQUFNLDhCQUE4QixDQUFDLHdCQUF3QixDQUMzRCxlQUFlLENBQ2hCLENBQUM7QUFDSixDQUFDLENBQ0YsQ0FBQyJ9
|
|
@@ -1,3 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
3
|
+
exports.Gender = void 0;
|
|
4
|
+
var Gender;
|
|
5
|
+
(function (Gender) {
|
|
6
|
+
Gender["MN"] = "Men";
|
|
7
|
+
Gender["WN"] = "Women";
|
|
8
|
+
Gender["UN"] = "Unisex";
|
|
9
|
+
Gender["KD"] = "Kids";
|
|
10
|
+
})(Gender || (exports.Gender = Gender = {}));
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3R5cGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWdEQSxJQUFZLE1BS1g7QUFMRCxXQUFZLE1BQU07SUFDaEIsb0JBQVUsQ0FBQTtJQUNWLHNCQUFZLENBQUE7SUFDWix1QkFBYSxDQUFBO0lBQ2IscUJBQVcsQ0FBQTtBQUNiLENBQUMsRUFMVyxNQUFNLHNCQUFOLE1BQU0sUUFLakIifQ==
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateExtendedProductFromProductWorkflow = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
6
|
+
const update_extended_product_from_product_1 = require("./steps/update-extended-product-from-product");
|
|
7
|
+
exports.updateExtendedProductFromProductWorkflow = (0, workflows_sdk_1.createWorkflow)("update-extended-product-from-product", (input) => {
|
|
8
|
+
const { data: products } = (0, core_flows_1.useQueryGraphStep)({
|
|
9
|
+
entity: "product",
|
|
10
|
+
fields: [
|
|
11
|
+
"extended_product.*",
|
|
12
|
+
"extended_product.style_details.*",
|
|
13
|
+
"extended_product.style_explorations.*",
|
|
14
|
+
"extended_product.style_collections.*",
|
|
15
|
+
],
|
|
16
|
+
filters: {
|
|
17
|
+
id: input.product.id,
|
|
18
|
+
},
|
|
19
|
+
});
|
|
20
|
+
const updated = (0, workflows_sdk_1.when)({
|
|
21
|
+
input,
|
|
22
|
+
products,
|
|
23
|
+
}, (data) => data.products[0].extended_product !== undefined &&
|
|
24
|
+
data.input.additional_data?.extendedProductData !== undefined).then(() => {
|
|
25
|
+
return (0, update_extended_product_from_product_1.updateExtendedProductStep)({
|
|
26
|
+
existingProduct: products[0],
|
|
27
|
+
extendedProduct: input.additional_data
|
|
28
|
+
?.extendedProductData,
|
|
29
|
+
styleDetails: input.additional_data?.styleDetails,
|
|
30
|
+
styleExplorations: input.additional_data
|
|
31
|
+
?.styleExplorations,
|
|
32
|
+
styleCollections: input.additional_data
|
|
33
|
+
?.styleCollections,
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
(0, core_flows_1.emitEventStep)({
|
|
37
|
+
eventName: "sync-to-os",
|
|
38
|
+
data: {
|
|
39
|
+
type: "product",
|
|
40
|
+
operation: "update",
|
|
41
|
+
id: input.product.id,
|
|
42
|
+
},
|
|
43
|
+
});
|
|
44
|
+
return new workflows_sdk_1.WorkflowResponse({
|
|
45
|
+
updated,
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3VwZGF0ZS1leHRlbmRlZC1wcm9kdWN0LWZyb20tcHJvZHVjdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxxRUFJMkM7QUFDM0MsNERBQStFO0FBUS9FLHVHQUF5RjtBQVk1RSxRQUFBLHdDQUF3QyxHQUFHLElBQUEsOEJBQWMsRUFDcEUsc0NBQXNDLEVBQ3RDLENBQUMsS0FBZ0QsRUFBRSxFQUFFO0lBQ25ELE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEdBQUcsSUFBQSw4QkFBaUIsRUFBQztRQUMzQyxNQUFNLEVBQUUsU0FBUztRQUNqQixNQUFNLEVBQUU7WUFDTixvQkFBb0I7WUFDcEIsa0NBQWtDO1lBQ2xDLHVDQUF1QztZQUN2QyxzQ0FBc0M7U0FDdkM7UUFDRCxPQUFPLEVBQUU7WUFDUCxFQUFFLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1NBQ3JCO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsTUFBTSxPQUFPLEdBQUcsSUFBQSxvQkFBSSxFQUNsQjtRQUNFLEtBQUs7UUFDTCxRQUFRO0tBQ1QsRUFDRCxDQUFDLElBQUksRUFBRSxFQUFFLENBQ1AsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsS0FBSyxTQUFTO1FBQy9DLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxFQUFFLG1CQUFtQixLQUFLLFNBQVMsQ0FDaEUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1FBQ1YsT0FBTyxJQUFBLGdFQUF5QixFQUFDO1lBQy9CLGVBQWUsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQzVCLGVBQWUsRUFBRSxLQUFLLENBQUMsZUFBZTtnQkFDcEMsRUFBRSxtQkFBa0M7WUFDdEMsWUFBWSxFQUFFLEtBQUssQ0FBQyxlQUFlLEVBQUUsWUFBaUM7WUFDdEUsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLGVBQWU7Z0JBQ3RDLEVBQUUsaUJBQTJDO1lBQy9DLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxlQUFlO2dCQUNyQyxFQUFFLGdCQUF5QztTQUM5QyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILElBQUEsMEJBQWEsRUFBQztRQUNaLFNBQVMsRUFBRSxZQUFZO1FBQ3ZCLElBQUksRUFBRTtZQUNKLElBQUksRUFBRSxTQUFTO1lBQ2YsU0FBUyxFQUFFLFFBQVE7WUFDbkIsRUFBRSxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsRUFBRTtTQUNyQjtLQUNGLENBQUMsQ0FBQztJQUVILE9BQU8sSUFBSSxnQ0FBZ0IsQ0FBQztRQUMxQixPQUFPO0tBQ1IsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUNGLENBQUMifQ==
|