@devx-commerce/plugin-gati 0.0.2-beta.1 → 0.0.2-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (20) hide show
  1. package/.medusa/server/src/links/extended-product.js +10 -0
  2. package/.medusa/server/src/modules/erp/service.js +1 -1
  3. package/.medusa/server/src/modules/extended-product/index.js +13 -0
  4. package/.medusa/server/src/modules/extended-product/migrations/Migration20250426103546.js +21 -0
  5. package/.medusa/server/src/modules/extended-product/models/extended-product.js +116 -0
  6. package/.medusa/server/src/modules/extended-product/service.js +11 -0
  7. package/.medusa/server/src/workflows/create-extended-product-from-product/index.js +56 -0
  8. package/.medusa/server/src/workflows/create-extended-product-from-product/steps/create-extended-product.js +18 -0
  9. package/.medusa/server/src/workflows/create-extended-product-from-product/steps/create-style-detail-lines.js +25 -0
  10. package/.medusa/server/src/workflows/create-or-update-style-master/index.js +24 -97
  11. package/.medusa/server/src/workflows/create-or-update-style-master/steps/fetch-styles.js +70 -0
  12. package/.medusa/server/src/workflows/helpers/product-helper.js +165 -7
  13. package/.medusa/server/src/workflows/hooks/product-created.js +16 -0
  14. package/.medusa/server/src/workflows/hooks/product-updated.js +16 -0
  15. package/.medusa/server/src/workflows/types/index.js +9 -1
  16. package/.medusa/server/src/workflows/update-extended-product-from-product/index.js +31 -0
  17. package/.medusa/server/src/workflows/update-extended-product-from-product/steps/update-extended-product-from-product.js +36 -0
  18. package/.medusa/server/src/workflows/update-extended-product-from-product/steps/update-extended-product-with-field.js +15 -0
  19. package/package.json +1 -1
  20. package/.medusa/server/src/workflows/create-or-update-style-master/steps/index.js +0 -68
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const utils_1 = require("@medusajs/framework/utils");
7
+ const product_1 = __importDefault(require("@medusajs/medusa/product"));
8
+ const extended_product_1 = __importDefault(require("../modules/extended-product"));
9
+ exports.default = (0, utils_1.defineLink)(product_1.default.linkable.product, extended_product_1.default.linkable.extendedProduct);
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5kZWQtcHJvZHVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saW5rcy9leHRlbmRlZC1wcm9kdWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEscURBQXVEO0FBQ3ZELHVFQUFxRDtBQUNyRCxtRkFBZ0U7QUFFaEUsa0JBQWUsSUFBQSxrQkFBVSxFQUN2QixpQkFBYSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQzlCLDBCQUFxQixDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQy9DLENBQUMifQ==
@@ -27,4 +27,4 @@ class ErpService {
27
27
  }
28
28
  ErpService.identifier = types_1.ErpKeys.ERP;
29
29
  exports.default = ErpService;
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL2VycC9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsbUNBQTREO0FBRTVELE1BQXFCLFVBQVU7SUFJN0IsWUFBWSxFQUFFLEVBQUUsT0FBbUI7UUFDakMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsS0FBSyxDQUFDLGFBQWEsQ0FDakIsT0FBZSxFQUNmLGFBQXFCO1FBRXJCLE1BQU0sUUFBUSxHQUFHLE1BQU0sS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLGdCQUFnQixFQUFFO1lBQ3JFLE1BQU0sRUFBRSxLQUFLO1lBQ2IsT0FBTyxFQUFFO2dCQUNQLGtCQUFrQixFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUztnQkFDM0MsT0FBTyxFQUFFLE9BQU87Z0JBQ2hCLGFBQWEsRUFBRSxhQUFhO2FBQzdCO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNqQixNQUFNLElBQUksS0FBSyxDQUNiLDRDQUE0QyxhQUFhLEVBQUUsQ0FDNUQsQ0FBQztRQUNKLENBQUM7UUFFRCxPQUFPLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztBQWpDTSxxQkFBVSxHQUFHLGVBQU8sQ0FBQyxHQUFHLENBQUM7a0JBRGIsVUFBVSJ9
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL2VycC9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsbUNBQStEO0FBRS9ELE1BQXFCLFVBQVU7SUFJN0IsWUFBWSxFQUFFLEVBQUUsT0FBbUI7UUFDakMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsS0FBSyxDQUFDLGFBQWEsQ0FDakIsT0FBZSxFQUNmLGFBQXFCO1FBRXJCLE1BQU0sUUFBUSxHQUFHLE1BQU0sS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLGdCQUFnQixFQUFFO1lBQ3JFLE1BQU0sRUFBRSxLQUFLO1lBQ2IsT0FBTyxFQUFFO2dCQUNQLGtCQUFrQixFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUztnQkFDM0MsT0FBTyxFQUFFLE9BQU87Z0JBQ2hCLGFBQWEsRUFBRSxhQUFhO2FBQzdCO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNqQixNQUFNLElBQUksS0FBSyxDQUNiLDRDQUE0QyxhQUFhLEVBQUUsQ0FDNUQsQ0FBQztRQUNKLENBQUM7UUFFRCxPQUFPLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNuQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztBQWpDTSxxQkFBVSxHQUFHLGVBQU8sQ0FBQyxHQUFHLENBQUM7a0JBRGIsVUFBVSJ9
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.EXTENDED_PRODUCT_MODULE = void 0;
7
+ const utils_1 = require("@medusajs/framework/utils");
8
+ const service_1 = __importDefault(require("./service"));
9
+ exports.EXTENDED_PRODUCT_MODULE = "extended_product";
10
+ exports.default = (0, utils_1.Module)(exports.EXTENDED_PRODUCT_MODULE, {
11
+ service: service_1.default,
12
+ });
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9leHRlbmRlZC1wcm9kdWN0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHFEQUFtRDtBQUVuRCx3REFBK0M7QUFFbEMsUUFBQSx1QkFBdUIsR0FBRyxrQkFBa0IsQ0FBQztBQUUxRCxrQkFBZSxJQUFBLGNBQU0sRUFBQywrQkFBdUIsRUFBRTtJQUM3QyxPQUFPLEVBQUUsaUJBQXNCO0NBQ2hDLENBQUMsQ0FBQyJ9
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Migration20250426103546 = void 0;
4
+ const migrations_1 = require("@mikro-orm/migrations");
5
+ class Migration20250426103546 extends migrations_1.Migration {
6
+ async up() {
7
+ this.addSql(`create table if not exists "extended_product" ("id" text not null, "style_id" integer not null, "style_date" timestamptz not null, "style_code" text not null, "style_alias_no" text not null, "category" text not null, "sub_category" text not null, "manufacturer" text not null, "manufacturer_no" text not null, "make_type" text not null, "stock_type" text not null, "item_size" text not null, "brand" text not null, "gender" text check ("gender" in ('Men', 'Women', 'Unisex', 'Kids')) not null, "shape_code" text not null, "is_complete" boolean not null, "restricted" boolean not null, "currency" text not null, "rate_chart" text not null, "discount_markup" text not null, "cost" real not null, "mrp" real not null, "hsn_code" text not null, "gross_weight" real not null, "net_weight" real not null, "wax_weight" real not null, "model_weight" real not null, "metal" text not null, "metal_purity" text not null, "metal_color" text not null, "total_diamond_pcs" integer not null, "total_diamond_weight" real not null, "total_client_diamond_pcs" integer not null, "total_client_diamond_weight" real not null, "total_stone_pcs" integer not null, "total_stone_weight" real not null, "total_cz_pcs" integer not null, "total_cz_weight" real not null, "web_description" text not null, "remarks" text not null, "customer_remarks" text not null, "special_remarks" text not null, "metal_total_cost" real not null, "diamond_total_cost" real not null, "stone_total_cost" real not null, "cpf_total_cost" real not null, "metal_total_amount" real not null, "diamond_total_amount" real not null, "stone_total_amount" real not null, "cpf_total_amount" real not null, "created_at" timestamptz not null default now(), "updated_at" timestamptz not null default now(), "deleted_at" timestamptz null, constraint "extended_product_pkey" primary key ("id"));`);
8
+ this.addSql(`CREATE INDEX IF NOT EXISTS "IDX_extended_product_deleted_at" ON "extended_product" (deleted_at) WHERE deleted_at IS NULL;`);
9
+ this.addSql(`create table if not exists "style_details_line" ("id" text not null, "style_id" integer not null, "style_mst_detail_id" integer not null, "item_code" text not null, "raw_type" text not null, "material_group" text not null, "raw_code" text not null, "shape_code" text not null, "qly_code" text not null, "tone_code" text not null, "description" text not null, "size" text not null, "accessories" text not null, "setting" text not null, "is_base" boolean not null, "is_center_stone" boolean not null, "pieces" integer not null, "weight" real not null, "min_weight" real not null, "max_weight" real not null, "stone_wt" real not null, "default_wt" real not null, "raw_formula" text not null, "cost_rate" real not null, "cost_amount" real not null, "hand_cost_rate" real not null, "hand_cost_amount" real not null, "set_cost_rate" real not null, "set_cost_amount" real not null, "loss_cost_per" real not null, "loss_cost_per_is_fix" boolean not null, "loss_cost_weight" real not null, "loss_cost_amt" real not null, "cpf_cost_rate" real not null, "cpf_cost_is_fix" boolean not null, "cpf_cost_amt" real not null, "rate" real not null, "amount" real not null, "hand_rate" real not null, "hand_amount" real not null, "set_rate" real not null, "set_amount" real not null, "loss_per" real not null, "loss_per_is_fix" boolean not null, "loss_weight" real not null, "loss_amt" real not null, "cpf_rate" real not null, "cpf_is_fix" boolean not null, "cpf_amt" real not null, "extended_product_id" text not null, "created_at" timestamptz not null default now(), "updated_at" timestamptz not null default now(), "deleted_at" timestamptz null, constraint "style_details_line_pkey" primary key ("id"));`);
10
+ this.addSql(`CREATE INDEX IF NOT EXISTS "IDX_style_details_line_extended_product_id" ON "style_details_line" (extended_product_id) WHERE deleted_at IS NULL;`);
11
+ this.addSql(`CREATE INDEX IF NOT EXISTS "IDX_style_details_line_deleted_at" ON "style_details_line" (deleted_at) WHERE deleted_at IS NULL;`);
12
+ this.addSql(`alter table if exists "style_details_line" add constraint "style_details_line_extended_product_id_foreign" foreign key ("extended_product_id") references "extended_product" ("id") on update cascade;`);
13
+ }
14
+ async down() {
15
+ this.addSql(`alter table if exists "style_details_line" drop constraint if exists "style_details_line_extended_product_id_foreign";`);
16
+ this.addSql(`drop table if exists "extended_product" cascade;`);
17
+ this.addSql(`drop table if exists "style_details_line" cascade;`);
18
+ }
19
+ }
20
+ exports.Migration20250426103546 = Migration20250426103546;
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWlncmF0aW9uMjAyNTA0MjYxMDM1NDYuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9leHRlbmRlZC1wcm9kdWN0L21pZ3JhdGlvbnMvTWlncmF0aW9uMjAyNTA0MjYxMDM1NDYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsc0RBQWtEO0FBRWxELE1BQWEsdUJBQXdCLFNBQVEsc0JBQVM7SUFFM0MsS0FBSyxDQUFDLEVBQUU7UUFDZixJQUFJLENBQUMsTUFBTSxDQUFDLDB5REFBMHlELENBQUMsQ0FBQztRQUN4ekQsSUFBSSxDQUFDLE1BQU0sQ0FBQywySEFBMkgsQ0FBQyxDQUFDO1FBRXpJLElBQUksQ0FBQyxNQUFNLENBQUMseXBEQUF5cEQsQ0FBQyxDQUFDO1FBQ3ZxRCxJQUFJLENBQUMsTUFBTSxDQUFDLGlKQUFpSixDQUFDLENBQUM7UUFDL0osSUFBSSxDQUFDLE1BQU0sQ0FBQywrSEFBK0gsQ0FBQyxDQUFDO1FBRTdJLElBQUksQ0FBQyxNQUFNLENBQUMsd01BQXdNLENBQUMsQ0FBQztJQUN4TixDQUFDO0lBRVEsS0FBSyxDQUFDLElBQUk7UUFDakIsSUFBSSxDQUFDLE1BQU0sQ0FBQyx3SEFBd0gsQ0FBQyxDQUFDO1FBRXRJLElBQUksQ0FBQyxNQUFNLENBQUMsa0RBQWtELENBQUMsQ0FBQztRQUVoRSxJQUFJLENBQUMsTUFBTSxDQUFDLG9EQUFvRCxDQUFDLENBQUM7SUFDcEUsQ0FBQztDQUVGO0FBckJELDBEQXFCQyJ9
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StyleDetailsLine = exports.ExtendedProduct = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ exports.ExtendedProduct = utils_1.model
6
+ .define("extended_product", {
7
+ id: utils_1.model.id().primaryKey(),
8
+ style_id: utils_1.model.number(),
9
+ style_date: utils_1.model.dateTime(),
10
+ style_code: utils_1.model.text(),
11
+ style_alias_no: utils_1.model.text(),
12
+ category: utils_1.model.text(),
13
+ sub_category: utils_1.model.text(),
14
+ manufacturer: utils_1.model.text(),
15
+ manufacturer_no: utils_1.model.text(),
16
+ make_type: utils_1.model.text(),
17
+ stock_type: utils_1.model.text(),
18
+ item_size: utils_1.model.text(),
19
+ brand: utils_1.model.text(),
20
+ gender: utils_1.model.enum(["Men", "Women", "Unisex", "Kids"]),
21
+ shape_code: utils_1.model.text(), //determine from center stone
22
+ is_complete: utils_1.model.boolean(),
23
+ restricted: utils_1.model.boolean(),
24
+ currency: utils_1.model.text(),
25
+ rate_chart: utils_1.model.text(),
26
+ discount_markup: utils_1.model.text(),
27
+ cost: utils_1.model.float(),
28
+ mrp: utils_1.model.float(),
29
+ hsn_code: utils_1.model.text(),
30
+ gross_weight: utils_1.model.float(),
31
+ net_weight: utils_1.model.float(),
32
+ wax_weight: utils_1.model.float(),
33
+ model_weight: utils_1.model.float(),
34
+ metal: utils_1.model.text(), //determine from base metal
35
+ metal_purity: utils_1.model.text(), //determine from base metal
36
+ metal_color: utils_1.model.text(), //determine from base metal
37
+ total_diamond_pcs: utils_1.model.number(),
38
+ total_diamond_weight: utils_1.model.float(),
39
+ total_client_diamond_pcs: utils_1.model.number(),
40
+ total_client_diamond_weight: utils_1.model.float(),
41
+ total_stone_pcs: utils_1.model.number(),
42
+ total_stone_weight: utils_1.model.float(),
43
+ total_cz_pcs: utils_1.model.number(),
44
+ total_cz_weight: utils_1.model.float(),
45
+ web_description: utils_1.model.text(),
46
+ remarks: utils_1.model.text(),
47
+ customer_remarks: utils_1.model.text(),
48
+ special_remarks: utils_1.model.text(),
49
+ metal_total_cost: utils_1.model.float(),
50
+ diamond_total_cost: utils_1.model.float(),
51
+ stone_total_cost: utils_1.model.float(),
52
+ cpf_total_cost: utils_1.model.float(),
53
+ metal_total_amount: utils_1.model.float(),
54
+ diamond_total_amount: utils_1.model.float(),
55
+ stone_total_amount: utils_1.model.float(),
56
+ cpf_total_amount: utils_1.model.float(),
57
+ style_details: utils_1.model.hasMany(() => exports.StyleDetailsLine),
58
+ })
59
+ .cascades({
60
+ delete: ["style_details"],
61
+ });
62
+ exports.StyleDetailsLine = utils_1.model.define("style_details_line", {
63
+ id: utils_1.model.id().primaryKey(),
64
+ style_id: utils_1.model.number(),
65
+ style_mst_detail_id: utils_1.model.number(),
66
+ item_code: utils_1.model.text(),
67
+ raw_type: utils_1.model.text(),
68
+ material_group: utils_1.model.text(),
69
+ raw_code: utils_1.model.text(),
70
+ shape_code: utils_1.model.text(),
71
+ qly_code: utils_1.model.text(),
72
+ tone_code: utils_1.model.text(),
73
+ description: utils_1.model.text(),
74
+ size: utils_1.model.text(),
75
+ accessories: utils_1.model.text(),
76
+ setting: utils_1.model.text(),
77
+ is_base: utils_1.model.boolean(),
78
+ is_center_stone: utils_1.model.boolean(),
79
+ pieces: utils_1.model.number(),
80
+ weight: utils_1.model.float(),
81
+ min_weight: utils_1.model.float(),
82
+ max_weight: utils_1.model.float(),
83
+ stone_wt: utils_1.model.float(),
84
+ default_wt: utils_1.model.float(),
85
+ raw_formula: utils_1.model.text(),
86
+ cost_rate: utils_1.model.float(),
87
+ cost_amount: utils_1.model.float(),
88
+ hand_cost_rate: utils_1.model.float(),
89
+ hand_cost_amount: utils_1.model.float(),
90
+ set_cost_rate: utils_1.model.float(),
91
+ set_cost_amount: utils_1.model.float(),
92
+ loss_cost_per: utils_1.model.float(),
93
+ loss_cost_per_is_fix: utils_1.model.boolean(),
94
+ loss_cost_weight: utils_1.model.float(),
95
+ loss_cost_amt: utils_1.model.float(),
96
+ cpf_cost_rate: utils_1.model.float(),
97
+ cpf_cost_is_fix: utils_1.model.boolean(),
98
+ cpf_cost_amt: utils_1.model.float(),
99
+ rate: utils_1.model.float(),
100
+ amount: utils_1.model.float(),
101
+ hand_rate: utils_1.model.float(),
102
+ hand_amount: utils_1.model.float(),
103
+ set_rate: utils_1.model.float(),
104
+ set_amount: utils_1.model.float(),
105
+ loss_per: utils_1.model.float(),
106
+ loss_per_is_fix: utils_1.model.boolean(),
107
+ loss_weight: utils_1.model.float(),
108
+ loss_amt: utils_1.model.float(),
109
+ cpf_rate: utils_1.model.float(),
110
+ cpf_is_fix: utils_1.model.boolean(),
111
+ cpf_amt: utils_1.model.float(),
112
+ extended_product: utils_1.model.belongsTo(() => exports.ExtendedProduct, {
113
+ mappedBy: "style_details_line",
114
+ }),
115
+ });
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5kZWQtcHJvZHVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL2V4dGVuZGVkLXByb2R1Y3QvbW9kZWxzL2V4dGVuZGVkLXByb2R1Y3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscURBQWtEO0FBRXJDLFFBQUEsZUFBZSxHQUFHLGFBQUs7S0FDakMsTUFBTSxDQUFDLGtCQUFrQixFQUFFO0lBQzFCLEVBQUUsRUFBRSxhQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxFQUFFO0lBQzNCLFFBQVEsRUFBRSxhQUFLLENBQUMsTUFBTSxFQUFFO0lBQ3hCLFVBQVUsRUFBRSxhQUFLLENBQUMsUUFBUSxFQUFFO0lBQzVCLFVBQVUsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQ3hCLGNBQWMsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQzVCLFFBQVEsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQ3RCLFlBQVksRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQzFCLFlBQVksRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQzFCLGVBQWUsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQzdCLFNBQVMsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQ3ZCLFVBQVUsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQ3hCLFNBQVMsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQ3ZCLEtBQUssRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQ25CLE1BQU0sRUFBRSxhQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDdEQsVUFBVSxFQUFFLGFBQUssQ0FBQyxJQUFJLEVBQUUsRUFBRSw2QkFBNkI7SUFDdkQsV0FBVyxFQUFFLGFBQUssQ0FBQyxPQUFPLEVBQUU7SUFDNUIsVUFB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
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const utils_1 = require("@medusajs/framework/utils");
4
+ const extended_product_1 = require("./models/extended-product");
5
+ class ExtendedProductService extends (0, utils_1.MedusaService)({
6
+ StyleDetailsLine: extended_product_1.StyleDetailsLine,
7
+ ExtendedProduct: extended_product_1.ExtendedProduct,
8
+ }) {
9
+ }
10
+ exports.default = ExtendedProductService;
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL2V4dGVuZGVkLXByb2R1Y3Qvc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHFEQUEwRDtBQUMxRCxnRUFBOEU7QUFFOUUsTUFBTSxzQkFBdUIsU0FBUSxJQUFBLHFCQUFhLEVBQUM7SUFDakQsZ0JBQWdCLEVBQWhCLG1DQUFnQjtJQUNoQixlQUFlLEVBQWYsa0NBQWU7Q0FDaEIsQ0FBQztDQUFHO0FBRUwsa0JBQWUsc0JBQXNCLENBQUMifQ==
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createExtendedProductFromProductWorkflow = void 0;
7
+ const utils_1 = require("@medusajs/framework/utils");
8
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
9
+ const core_flows_1 = require("@medusajs/medusa/core-flows");
10
+ const extended_product_1 = require("../../modules/extended-product");
11
+ const update_extended_product_with_field_1 = require("../update-extended-product-from-product/steps/update-extended-product-with-field");
12
+ const create_extended_product_1 = __importDefault(require("./steps/create-extended-product"));
13
+ const create_style_detail_lines_1 = __importDefault(require("./steps/create-style-detail-lines"));
14
+ exports.createExtendedProductFromProductWorkflow = (0, workflows_sdk_1.createWorkflow)("create-extended-product-from-product", (input) => {
15
+ const data = (0, workflows_sdk_1.transform)({
16
+ input,
17
+ }, (data) => data.input.additional_data);
18
+ const extendedProduct = (0, create_extended_product_1.default)({
19
+ ...data.extendedProductData,
20
+ });
21
+ const styleDetailsLines = (0, workflows_sdk_1.when)({ extendedProduct }, ({ extendedProduct }) => extendedProduct !== undefined).then(() => {
22
+ return (0, create_style_detail_lines_1.default)({
23
+ lines: data.styleDetails,
24
+ detailId: extendedProduct.id,
25
+ });
26
+ });
27
+ //update extended product with style_detail id
28
+ const styleDetailsIds = (0, workflows_sdk_1.transform)({
29
+ styleDetailsLines,
30
+ }, (data) => data?.styleDetailsLines?.map((line) => line.id));
31
+ (0, workflows_sdk_1.when)({ styleDetailsLines }, ({ styleDetailsLines }) => styleDetailsLines !== undefined).then(() => {
32
+ (0, update_extended_product_with_field_1.updateExtendedProductWithFieldStep)({
33
+ id: extendedProduct.id,
34
+ data: {
35
+ style_details: styleDetailsIds,
36
+ },
37
+ });
38
+ });
39
+ (0, workflows_sdk_1.when)({ extendedProduct }, ({ extendedProduct }) => extendedProduct !== undefined).then(() => {
40
+ (0, core_flows_1.createRemoteLinkStep)([
41
+ {
42
+ [utils_1.Modules.PRODUCT]: {
43
+ product_id: input.product.id,
44
+ },
45
+ [extended_product_1.EXTENDED_PRODUCT_MODULE]: {
46
+ extended_product_id: extendedProduct.id,
47
+ },
48
+ },
49
+ ]);
50
+ });
51
+ return new workflows_sdk_1.WorkflowResponse({
52
+ extendedProduct,
53
+ styleDetailsLines,
54
+ });
55
+ });
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL2NyZWF0ZS1leHRlbmRlZC1wcm9kdWN0LWZyb20tcHJvZHVjdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSxxREFBb0Q7QUFDcEQscUVBSzJDO0FBQzNDLDREQUFtRTtBQUVuRSxxRUFBeUU7QUFFekUseUlBQXNJO0FBQ3RJLDhGQUF3RTtBQUN4RSxrR0FBMkU7QUFVOUQsUUFBQSx3Q0FBd0MsR0FBRyxJQUFBLDhCQUFjLEVBQ3BFLHNDQUFzQyxFQUN0QyxDQUFDLEtBQW9ELEVBQUUsRUFBRTtJQUN2RCxNQUFNLElBQUksR0FBRyxJQUFBLHlCQUFTLEVBQ3BCO1FBQ0UsS0FBSztLQUNOLEVBQ0QsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUNyQyxDQUFDO0lBRUYsTUFBTSxlQUFlLEdBQUcsSUFBQSxpQ0FBeUIsRUFBQztRQUNoRCxHQUFHLElBQUksQ0FBQyxtQkFBbUI7S0FDNUIsQ0FBQyxDQUFDO0lBRUgsTUFBTSxpQkFBaUIsR0FBRyxJQUFBLG9CQUFJLEVBQzVCLEVBQUUsZUFBZSxFQUFFLEVBQ25CLENBQUMsRUFBRSxlQUFlLEVBQUUsRUFBRSxFQUFFLENBQUMsZUFBZSxLQUFLLFNBQVMsQ0FDdkQsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1FBQ1YsT0FBTyxJQUFBLG1DQUEwQixFQUFDO1lBQ2hDLEtBQUssRUFBRSxJQUFJLENBQUMsWUFBWTtZQUN4QixRQUFRLEVBQUUsZUFBZSxDQUFDLEVBQUU7U0FDN0IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFFSCw4Q0FBOEM7SUFDOUMsTUFBTSxlQUFlLEdBQUcsSUFBQSx5QkFBUyxFQUMvQjtRQUNFLGlCQUFpQjtLQUNsQixFQUNELENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQzFELENBQUM7SUFFRixJQUFBLG9CQUFJLEVBQ0YsRUFBRSxpQkFBaUIsRUFBRSxFQUNyQixDQUFDLEVBQUUsaUJBQWlCLEVBQUUsRUFBRSxFQUFFLENBQUMsaUJBQWlCLEtBQUssU0FBUyxDQUMzRCxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7UUFDVixJQUFBLHVFQUFrQyxFQUFDO1lBQ2pDLEVBQUUsRUFBRSxlQUFlLENBQUMsRUFBRTtZQUN0QixJQUFJLEVBQUU7Z0JBQ0osYUFBYSxFQUFFLGVBQWU7YUFDL0I7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILElBQUEsb0JBQUksRUFDRixFQUFFLGVBQWUsRUFBRSxFQUNuQixDQUFDLEVBQUUsZUFBZSxFQUFFLEVBQUUsRUFBRSxDQUFDLGVBQWUsS0FBSyxTQUFTLENBQ3ZELENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtRQUNWLElBQUEsaUNBQW9CLEVBQUM7WUFDbkI7Z0JBQ0UsQ0FBQyxlQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQ2pCLFVBQVUsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUU7aUJBQzdCO2dCQUNELENBQUMsMENBQXVCLENBQUMsRUFBRTtvQkFDekIsbUJBQW1CLEVBQUUsZUFBZSxDQUFDLEVBQUU7aUJBQ3hDO2FBQ0Y7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sSUFBSSxnQ0FBZ0IsQ0FBQztRQUMxQixlQUFlO1FBQ2YsaUJBQWlCO0tBQ2xCLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FDRixDQUFDIn0=
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
4
+ const createExtendedProductStep = (0, workflows_sdk_1.createStep)("create-extended-product", async (input, { container }) => {
5
+ const extendedProductModuleService = container.resolve("extended_product");
6
+ const extendedProduct = await extendedProductModuleService.createExtendedProducts({
7
+ ...input,
8
+ style_date: new Date(input.style_date),
9
+ });
10
+ return new workflows_sdk_1.StepResponse(extendedProduct, extendedProduct);
11
+ }, async (result, { container }) => {
12
+ if (result && result.id) {
13
+ const extendedProductModuleService = container.resolve("extended_product");
14
+ await extendedProductModuleService.deleteExtendedProducts(result.id);
15
+ }
16
+ });
17
+ exports.default = createExtendedProductStep;
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWV4dGVuZGVkLXByb2R1Y3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL2NyZWF0ZS1leHRlbmRlZC1wcm9kdWN0LWZyb20tcHJvZHVjdC9zdGVwcy9jcmVhdGUtZXh0ZW5kZWQtcHJvZHVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHFFQUE2RTtBQUk3RSxNQUFNLHlCQUF5QixHQUFHLElBQUEsMEJBQVUsRUFDMUMseUJBQXlCLEVBQ3pCLEtBQUssRUFBRSxLQUFrQixFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtJQUMxQyxNQUFNLDRCQUE0QixHQUNoQyxTQUFTLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFFeEMsTUFBTSxlQUFlLEdBQ25CLE1BQU0sNEJBQTRCLENBQUMsc0JBQXNCLENBQUM7UUFDeEQsR0FBRyxLQUFLO1FBQ1IsVUFBVSxFQUFFLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUM7S0FDdkMsQ0FBQyxDQUFDO0lBRUwsT0FBTyxJQUFJLDRCQUFZLENBQUMsZUFBZSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0FBQzVELENBQUMsRUFDRCxLQUFLLEVBQUUsTUFBTSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtJQUM5QixJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDeEIsTUFBTSw0QkFBNEIsR0FDaEMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ3hDLE1BQU0sNEJBQTRCLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7QUFDSCxDQUFDLENBQ0YsQ0FBQztBQUVGLGtCQUFlLHlCQUF5QixDQUFDIn0=
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
4
+ const createStyleDetailLinesStep = (0, workflows_sdk_1.createStep)("create-style-detail-lines", async (input, { container }) => {
5
+ const extendedProductModuleService = container.resolve("extended_product");
6
+ const formattedLines = input.lines.map((line) => ({
7
+ ...line,
8
+ extended_product: input.detailId,
9
+ }));
10
+ const styleDetailsLines = await extendedProductModuleService.createStyleDetailsLines([
11
+ ...formattedLines,
12
+ ]);
13
+ return new workflows_sdk_1.StepResponse(styleDetailsLines, styleDetailsLines);
14
+ }, async (result, { container }) => {
15
+ if (!result) {
16
+ return;
17
+ }
18
+ const extendedProductModuleService = container.resolve("extended_product");
19
+ // Get IDs of created style detail lines
20
+ const styleDetailLineIds = result.map((line) => line.id);
21
+ // Delete the created style detail lines to roll back changes
22
+ await extendedProductModuleService.deleteStyleDetailsLines(styleDetailLineIds);
23
+ });
24
+ exports.default = createStyleDetailLinesStep;
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXN0eWxlLWRldGFpbC1saW5lcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvY3JlYXRlLWV4dGVuZGVkLXByb2R1Y3QtZnJvbS1wcm9kdWN0L3N0ZXBzL2NyZWF0ZS1zdHlsZS1kZXRhaWwtbGluZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxxRUFBNkU7QUFJN0UsTUFBTSwwQkFBMEIsR0FBRyxJQUFBLDBCQUFVLEVBQzNDLDJCQUEyQixFQUMzQixLQUFLLEVBQ0gsS0FBcUQsRUFDckQsRUFBRSxTQUFTLEVBQUUsRUFDYixFQUFFO0lBQ0YsTUFBTSw0QkFBNEIsR0FDaEMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBRXhDLE1BQU0sY0FBYyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2hELEdBQUcsSUFBSTtRQUNQLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxRQUFRO0tBQ2pDLENBQUMsQ0FBQyxDQUFDO0lBRUosTUFBTSxpQkFBaUIsR0FDckIsTUFBTSw0QkFBNEIsQ0FBQyx1QkFBdUIsQ0FBQztRQUN6RCxHQUFHLGNBQWM7S0FDbEIsQ0FBQyxDQUFDO0lBRUwsT0FBTyxJQUFJLDRCQUFZLENBQUMsaUJBQWlCLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztBQUNoRSxDQUFDLEVBQ0QsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDOUIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ1osT0FBTztJQUNULENBQUM7SUFFRCxNQUFNLDRCQUE0QixHQUNoQyxTQUFTLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFFeEMsd0NBQXdDO0lBQ3hDLE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRXpELDZEQUE2RDtJQUM3RCxNQUFNLDRCQUE0QixDQUFDLHVCQUF1QixDQUN4RCxrQkFBa0IsQ0FDbkIsQ0FBQztBQUNKLENBQUMsQ0FDRixDQUFDO0FBRUYsa0JBQWUsMEJBQTBCLENBQUMifQ==
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
4
4
  const core_flows_1 = require("@medusajs/medusa/core-flows");
5
5
  const product_helper_1 = require("../helpers/product-helper");
6
- const steps_1 = require("./steps");
6
+ const fetch_styles_1 = require("./steps/fetch-styles");
7
7
  /**
8
8
  * Main workflow for handling StyleMst operations
9
9
  * This workflow:
@@ -15,7 +15,7 @@ const steps_1 = require("./steps");
15
15
  */
16
16
  const styleMstWorkflow = (0, workflows_sdk_1.createWorkflow)("style-mst", (input) => {
17
17
  // Step 1: Fetch style data from ERP system
18
- const styleData = (0, steps_1.fetchStyleData)(input);
18
+ const styleData = (0, fetch_styles_1.fetchStyleData)(input);
19
19
  // Step 2: Get all sales channels for product creation
20
20
  const { data: stores } = (0, core_flows_1.useQueryGraphStep)({
21
21
  entity: "store",
@@ -43,9 +43,8 @@ const styleMstWorkflow = (0, workflows_sdk_1.createWorkflow)("style-mst", (input
43
43
  external_id: externalIdsFilters,
44
44
  },
45
45
  }).config({ name: "existing-products" });
46
- // Conditional step: Only create products if operation is "add"
47
46
  (0, workflows_sdk_1.when)(input, (input) => {
48
- return input.operation === "add";
47
+ return input.operation === "add" || input.operation === "update";
49
48
  }).then(() => {
50
49
  const { productsToCreate, productsToUpdate } = (0, workflows_sdk_1.transform)({
51
50
  styleData,
@@ -57,27 +56,9 @@ const styleMstWorkflow = (0, workflows_sdk_1.createWorkflow)("style-mst", (input
57
56
  const productsToUpdate = [];
58
57
  data.styleData.forEach((styleData) => {
59
58
  // Calculate costs based on raw codes
60
- const metalTotalCost = styleData.StyleMstDetail.filter((detail) => detail.RawType === "Metal").reduce((acc, detail) => acc + detail.CostAmount, 0);
61
- const diamondTotalCost = styleData.StyleMstDetail.filter((detail) => detail.RawType === "Diamond").reduce((acc, detail) => acc + detail.CostAmount, 0);
62
- const stoneTotalCost = styleData.StyleMstDetail.filter((detail) => detail.RawType === "Stone" ||
63
- detail.RawType === "Stone(Color Stone)").reduce((acc, detail) => acc + detail.CostAmount, 0);
64
- // const czTotalCost = styleData.StyleMstDetail.filter(
65
- // (detail) => detail.RawType === "CZ"
66
- // ).reduce((acc, detail) => acc + detail.CostAmount, 0);
67
- const cpfTotalCost = styleData.StyleMstDetail.filter((detail) => detail.RawType === "Metal").reduce((acc, detail) => acc + detail.CPFCostAmt, 0);
68
- // const otherMaterialTotalCost = styleData.StyleMstDetail.filter(
69
- // (detail) => detail.RawType === "Other Material"
70
- // ).reduce((acc, detail) => acc + detail.CostAmount, 0);
71
- // Calculate amounts based on raw codes
72
- const metalTotalAmount = styleData.StyleMstDetail.filter((detail) => detail.RawType === "Metal").reduce((acc, detail) => acc + detail.Amount, 0);
73
- const diamondTotalAmount = styleData.StyleMstDetail.filter((detail) => detail.RawType === "Diamond").reduce((acc, detail) => acc + detail.Amount, 0);
74
- const stoneTotalAmount = styleData.StyleMstDetail.filter((detail) => detail.RawType === "Stone" ||
75
- detail.RawType === "Stone(Color Stone)").reduce((acc, detail) => acc + detail.Amount, 0);
76
- const cpfTotalAmount = styleData.StyleMstDetail.filter((detail) => detail.RawType === "Metal").reduce((acc, detail) => acc + detail.CPFAmt, 0);
59
+ const { metal_total_cost, diamond_total_cost, stone_total_cost, cpf_total_cost, metal_total_amount, diamond_total_amount, stone_total_amount, cpf_total_amount, } = (0, product_helper_1.calculateStyleCostsAndAmounts)(styleData.StyleMstDetail);
77
60
  const productTitle = styleData.StyleMstExploration.find((exploration) => exploration.ExplorationCode === "Product Name")?.ExplorationValue || `Style ${styleData.StyleCode}`;
78
- const baseMetal = styleData.StyleMstDetail.filter((detail) => detail.RawType === "Metal" && detail.IsBase)[0]?.RawCode || "";
79
- const baseMetalPurity = styleData.StyleMstDetail.filter((detail) => detail.RawType === "Metal" && detail.IsBase)[0]?.QlyCode || "";
80
- const baseMetalColor = styleData.StyleMstDetail.filter((detail) => detail.RawType === "Metal" && detail.IsBase)[0]?.ToneCode || "";
61
+ const { baseMetal, baseMetalPurity, baseMetalColor } = (0, product_helper_1.getBaseMetalDetails)(styleData.StyleMstDetail);
81
62
  const product = {
82
63
  external_id: `${styleData.StyleId}`,
83
64
  title: productTitle || "",
@@ -104,87 +85,33 @@ const styleMstWorkflow = (0, workflows_sdk_1.createWorkflow)("style-mst", (input
104
85
  product.id = existingProduct.id;
105
86
  product.status = existingProduct.status;
106
87
  }
107
- product.variants?.push({
108
- id: existingProduct ? existingProduct.variants[0].id : undefined,
109
- title: "Default",
110
- options: {
111
- Default: "Default",
112
- },
113
- prices: [
114
- {
115
- amount: styleData.Mrp,
116
- currency_code: styleData.Currency.toLowerCase() || "inr",
117
- },
118
- ],
119
- metadata: {
120
- external_id: `${styleData.StyleId}`,
121
- },
122
- manage_inventory: false,
88
+ const extendedProductData = (0, product_helper_1.getExtendedProductData)(styleData, { baseMetal, baseMetalPurity, baseMetalColor }, {
89
+ metal_total_cost,
90
+ diamond_total_cost,
91
+ stone_total_cost,
92
+ cpf_total_cost,
93
+ metal_total_amount,
94
+ diamond_total_amount,
95
+ stone_total_amount,
96
+ cpf_total_amount,
123
97
  });
124
- const additionalData = {
125
- styleId: styleData.StyleId,
126
- styleDate: styleData.StyleDate,
127
- styleCode: styleData.StyleCode,
128
- styleAliasNo: styleData.StyleAliasNo,
129
- category: styleData.Category || "",
130
- subCategory: styleData.SubCategory || "",
131
- manufacturer: styleData.Manufacturer || "",
132
- manufacturerNo: styleData.ManufacturerNo || "",
133
- makeType: styleData.MakeType || "",
134
- stockType: styleData.StockType || "",
135
- itemSize: styleData.ItemSize || "",
136
- brand: styleData.Brand || "",
137
- gender: (0, product_helper_1.genderMapper)(styleData.Gender),
138
- shapeCode: styleData.StyleMstDetail.find((detail) => detail.IsCenterStone)
139
- ?.ShapeCode || "",
140
- isComplete: styleData.IsComplete || false,
141
- restricted: styleData.Restricted || false,
142
- currency: styleData.Currency || "INR",
143
- rateChart: styleData.RateChart || "",
144
- discountMarkup: styleData.DiscountMarkup || "",
145
- cost: styleData.Cost || 0,
146
- mrp: styleData.Mrp || 0,
147
- hsnCode: styleData.HSN || "",
148
- grossWeight: styleData.GrossWt || 0,
149
- netWeight: styleData.NetWt || 0,
150
- waxWeight: styleData.WaxWt || 0,
151
- modelWeight: styleData.ModelWt || 0,
152
- metal: baseMetal || "", //determine from base metal
153
- metalPurity: baseMetalPurity || "", //determine from base metal
154
- metalColor: baseMetalColor || "",
155
- totalDiamondPcs: styleData.TotDiamondPcs || 0,
156
- totalDiamondWeight: styleData.TotDiamondWt || 0,
157
- totalClientDiamondPcs: styleData.TotClientDiamondPcs || 0,
158
- totalClientDiamondWeight: styleData.TotClientDiamondWt || 0,
159
- totalStonePcs: styleData.TotStonePcs || 0,
160
- totalStoneWeight: styleData.TotStoneWt || 0,
161
- totalCzPcs: styleData.TotCzPcs || 0,
162
- totalCzWeight: styleData.TotCzWt || 0,
163
- webDescription: styleData.WebDescription || "",
164
- remarks: styleData.Remarks || "",
165
- customerRemarks: styleData.CustomerRemarks || "",
166
- specialRemarks: styleData.SpecialRemarks || "",
167
- metalTotalCost,
168
- diamondTotalCost,
169
- stoneTotalCost,
170
- czTotalCost: 0,
171
- cpfTotalCost,
172
- metalTotalAmount,
173
- diamondTotalAmount,
174
- stoneTotalAmount,
175
- czTotalAmount: 0,
176
- cpfTotalAmount,
177
- };
98
+ const styleDetails = (0, product_helper_1.getStyleDetailLines)(styleData?.StyleMstDetail);
178
99
  if (existingProduct) {
179
100
  productsToUpdate.push({
180
101
  product: product,
181
- additional_data: additionalData,
102
+ additional_data: {
103
+ extendedProductData,
104
+ styleDetails,
105
+ },
182
106
  });
183
107
  }
184
108
  else {
185
109
  productsToCreate.push({
186
110
  product: product,
187
- additional_data: additionalData,
111
+ additional_data: {
112
+ extendedProductData,
113
+ styleDetails,
114
+ },
188
115
  });
189
116
  }
190
117
  });
@@ -227,4 +154,4 @@ const styleMstWorkflow = (0, workflows_sdk_1.createWorkflow)("style-mst", (input
227
154
  });
228
155
  });
229
156
  exports.default = styleMstWorkflow;
230
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL2NyZWF0ZS1vci11cGRhdGUtc3R5bGUtbWFzdGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEscUVBSzJDO0FBQzNDLDREQUlxQztBQU1yQyw4REFBc0U7QUFFdEUsbUNBQXlDO0FBRXpDOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxnQkFBZ0IsR0FBRyxJQUFBLDhCQUFjLEVBQUMsV0FBVyxFQUFFLENBQUMsS0FBb0IsRUFBRSxFQUFFO0lBQzVFLDJDQUEyQztJQUMzQyxNQUFNLFNBQVMsR0FBRyxJQUFBLHNCQUFjLEVBQUMsS0FBSyxDQUFDLENBQUM7SUFFeEMsc0RBQXNEO0lBQ3RELE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEdBQUcsSUFBQSw4QkFBaUIsRUFBQztRQUN6QyxNQUFNLEVBQUUsT0FBTztRQUNmLE1BQU0sRUFBRSxDQUFDLDBCQUEwQixDQUFDO0tBQ3JDLENBQUMsQ0FBQztJQUVILG9EQUFvRDtJQUNwRCxNQUFNLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLEdBQUcsSUFBQSw4QkFBaUIsRUFBQztRQUNuRCxNQUFNLEVBQUUsa0JBQWtCO1FBQzFCLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQztRQUNkLFVBQVUsRUFBRTtZQUNWLElBQUksRUFBRSxDQUFDO1NBQ1I7S0FDRixDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLENBQUMsQ0FBQztJQUV4QyxNQUFNLGtCQUFrQixHQUFHLElBQUEseUJBQVMsRUFDbEM7UUFDRSxTQUFTO0tBQ1YsRUFDRCxDQUFDLElBQUksRUFBRSxFQUFFO1FBQ1AsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMs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
157
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL2NyZWF0ZS1vci11cGRhdGUtc3R5bGUtbWFzdGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBSUEscUVBSzJDO0FBQzNDLDREQUlxQztBQUdyQyw4REFNbUM7QUFFbkMsdURBQXNEO0FBRXREOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxnQkFBZ0IsR0FBRyxJQUFBLDhCQUFjLEVBQUMsV0FBVyxFQUFFLENBQUMsS0FBb0IsRUFBRSxFQUFFO0lBQzVFLDJDQUEyQztJQUMzQyxNQUFNLFNBQVMsR0FBRyxJQUFBLDZCQUFjLEVBQUMsS0FBSyxDQUFDLENBQUM7SUFFeEMsc0RBQXNEO0lBQ3RELE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEdBQUcsSUFBQSw4QkFBaUIsRUFBQztRQUN6QyxNQUFNLEVBQUUsT0FBTztRQUNmLE1BQU0sRUFBRSxDQUFDLDBCQUEwQixDQUFDO0tBQ3JDLENBQUMsQ0FBQztJQUVILG9EQUFvRDtJQUNwRCxNQUFNLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLEdBQUcsSUFBQSw4QkFBaUIsRUFBQztRQUNuRCxNQUFNLEVBQUUsa0JBQWtCO1FBQzFCLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQztRQUNkLFVBQVUsRUFBRTtZQUNWLElBQUksRUFBRSxDQUFDO1NBQ1I7S0FDRixDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLENBQUMsQ0FBQztJQUV4QyxNQUFNLGtCQUFrQixHQUFHLElBQUEseUJBQVMsRUFDbEM7UUFDRSxTQUFTO0tBQ1YsRUFDRCxDQUFDLElBQUksRUFBRSxFQUFFO1FBQ1AsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMs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
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fetchStyleData = 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.fetchStyleData = (0, workflows_sdk_1.createStep)("fetch-style-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);
67
+ }, async (result, { container }) => {
68
+ console.log("Something went wrong in fetch-style-data");
69
+ });
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2gtc3R5bGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9jcmVhdGUtb3ItdXBkYXRlLXN0eWxlLW1hc3Rlci9zdGVwcy9mZXRjaC1zdHlsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUVBQTZFO0FBSTdFLE1BQU0sVUFBVSxHQUFHLEVBQUUsQ0FBQyxDQUFDLDZCQUE2QjtBQUNwRCxNQUFNLFdBQVcsR0FBRyxDQUFDLENBQUM7QUFDdEIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLENBQUMsaUNBQWlDO0FBRTNELE1BQU0sS0FBSyxHQUFHLENBQUMsRUFBVSxFQUFFLEVBQUUsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBRWhGLE1BQU0sWUFBWSxHQUFHLEtBQUssRUFDeEIsVUFBNEIsRUFDNUIsT0FBZSxFQUNmLEtBQWUsRUFDZixVQUFVLEdBQUcsQ0FBQyxFQUNFLEVBQUU7SUFDbEIsSUFBSSxDQUFDO1FBQ0gsTUFBTSxPQUFPLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUMvQixLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxhQUFhLEVBQUUsRUFBRTtZQUNoQyxJQUFJLENBQUM7Z0JBQ0gsT0FBTyxNQUFNLFVBQVUsQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1lBQ2hFLENBQUM7WUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO2dCQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMsOEJBQThCLGFBQWEsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUNyRSxPQUFPLElBQUksQ0FBQztZQUNkLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUFDO1FBRUYsNkJBQTZCO1FBQzdCLE1BQU0saUJBQWlCLEdBQUcsT0FB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
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.genderMapper = exports.toKebabCase = void 0;
3
+ exports.getStyleDetailLines = exports.getExtendedProductData = exports.getBaseMetalDetails = exports.calculateStyleCostsAndAmounts = exports.genderMapper = exports.toKebabCase = void 0;
4
+ const types_1 = require("../types");
4
5
  const toKebabCase = (strings) => {
5
6
  return strings
6
7
  .filter(Boolean)
@@ -13,12 +14,169 @@ const toKebabCase = (strings) => {
13
14
  exports.toKebabCase = toKebabCase;
14
15
  const genderMapper = (gender) => {
15
16
  const genderMap = {
16
- MN: "Men",
17
- WN: "Women",
18
- UN: "Unisex",
19
- KD: "Kids",
17
+ MN: types_1.Gender.MN,
18
+ WN: types_1.Gender.WN,
19
+ UN: types_1.Gender.UN,
20
+ KD: types_1.Gender.KD,
20
21
  };
21
- return genderMap[gender] || "Unisex";
22
+ return genderMap[gender] || types_1.Gender.UN;
22
23
  };
23
24
  exports.genderMapper = genderMapper;
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL2hlbHBlcnMvcHJvZHVjdC1oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQU8sTUFBTSxXQUFXLEdBQUcsQ0FBQyxPQUFpQixFQUFVLEVBQUU7SUFDdkQsT0FBTyxPQUFPO1NBQ1gsTUFBTSxDQUFDLE9BQU8sQ0FBQztTQUNmLElBQUksQ0FBQyxHQUFHLENBQUM7U0FDVCxXQUFXLEVBQUU7U0FDYixPQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLDhCQUE4QjtTQUNuRCxPQUFPLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQztTQUMxQixPQUFPLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBQzVCLENBQUMsQ0FBQztBQVJXLFFBQUEsV0FBVyxlQVF0QjtBQUVLLE1BQU0sWUFBWSxHQUFHLENBQUMsTUFBYyxFQUFVLEVBQUU7SUFDckQsTUFBTSxTQUFTLEdBQTJCO1FBQ3hDLEVBQUUsRUFBRSxLQUFLO1FBQ1QsRUFBRSxFQUFFLE9BQU87UUFDWCxFQUFFLEVBQUUsUUFBUTtRQUNaLEVBQUUsRUFBRSxNQUFNO0tBQ1gsQ0FBQztJQUNGLE9BQU8sU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLFFBQVEsQ0FBQztBQUN2QyxDQUFDLENBQUM7QUFSVyxRQUFBLFlBQVksZ0JBUXZCIn0=
25
+ const calculateStyleCostsAndAmounts = (styleDetails) => {
26
+ const metalTotalCost = styleDetails
27
+ .filter((detail) => detail.RawType === "Metal")
28
+ .reduce((acc, detail) => acc + detail.CostAmount, 0);
29
+ const diamondTotalCost = styleDetails
30
+ .filter((detail) => detail.RawType === "Diamond")
31
+ .reduce((acc, detail) => acc + detail.CostAmount, 0);
32
+ const stoneTotalCost = styleDetails
33
+ .filter((detail) => detail.RawType === "Stone" || detail.RawType === "Stone(Color Stone)")
34
+ .reduce((acc, detail) => acc + detail.CostAmount, 0);
35
+ const cpfTotalCost = styleDetails
36
+ .filter((detail) => detail.RawType === "Metal")
37
+ .reduce((acc, detail) => acc + detail.CPFCostAmt, 0);
38
+ const metalTotalAmount = styleDetails
39
+ .filter((detail) => detail.RawType === "Metal")
40
+ .reduce((acc, detail) => acc + detail.Amount, 0);
41
+ const diamondTotalAmount = styleDetails
42
+ .filter((detail) => detail.RawType === "Diamond")
43
+ .reduce((acc, detail) => acc + detail.Amount, 0);
44
+ const stoneTotalAmount = styleDetails
45
+ .filter((detail) => detail.RawType === "Stone" || detail.RawType === "Stone(Color Stone)")
46
+ .reduce((acc, detail) => acc + detail.Amount, 0);
47
+ const cpfTotalAmount = styleDetails
48
+ .filter((detail) => detail.RawType === "Metal")
49
+ .reduce((acc, detail) => acc + detail.CPFAmt, 0);
50
+ return {
51
+ metal_total_cost: metalTotalCost,
52
+ diamond_total_cost: diamondTotalCost,
53
+ stone_total_cost: stoneTotalCost,
54
+ cpf_total_cost: cpfTotalCost,
55
+ metal_total_amount: metalTotalAmount,
56
+ diamond_total_amount: diamondTotalAmount,
57
+ stone_total_amount: stoneTotalAmount,
58
+ cpf_total_amount: cpfTotalAmount,
59
+ };
60
+ };
61
+ exports.calculateStyleCostsAndAmounts = calculateStyleCostsAndAmounts;
62
+ const getBaseMetalDetails = (styleDetails) => {
63
+ const baseMetalDetail = styleDetails.find((detail) => detail.RawType === "Metal" && detail.IsBase);
64
+ return {
65
+ baseMetal: baseMetalDetail?.RawCode || "",
66
+ baseMetalPurity: baseMetalDetail?.QlyCode || "",
67
+ baseMetalColor: baseMetalDetail?.ToneCode || "",
68
+ };
69
+ };
70
+ exports.getBaseMetalDetails = getBaseMetalDetails;
71
+ const getExtendedProductData = (styleData, baseMetalDetails, styleCalculations) => {
72
+ return {
73
+ style_id: styleData.StyleId,
74
+ style_date: styleData.StyleDate,
75
+ style_code: styleData.StyleCode,
76
+ style_alias_no: styleData.StyleAliasNo,
77
+ category: styleData.Category || "",
78
+ sub_category: styleData.SubCategory || "",
79
+ manufacturer: styleData.Manufacturer || "",
80
+ manufacturer_no: styleData.ManufacturerNo || "",
81
+ make_type: styleData.MakeType || "",
82
+ stock_type: styleData.StockType || "",
83
+ item_size: styleData.ItemSize || "",
84
+ brand: styleData.Brand || "",
85
+ gender: (0, exports.genderMapper)(styleData.Gender),
86
+ shape_code: styleData.StyleMstDetail.find((detail) => detail.IsCenterStone && detail.IsBase)?.ShapeCode || "",
87
+ is_complete: styleData.IsComplete || false,
88
+ restricted: styleData.Restricted || false,
89
+ currency: styleData.Currency || "INR",
90
+ rate_chart: styleData.RateChart || "",
91
+ discount_markup: styleData.DiscountMarkup || "",
92
+ cost: styleData.Cost || 0,
93
+ mrp: styleData.Mrp || 0,
94
+ hsn_code: styleData.HSN || "",
95
+ gross_weight: styleData.GrossWt || 0,
96
+ net_weight: styleData.NetWt || 0,
97
+ wax_weight: styleData.WaxWt || 0,
98
+ model_weight: styleData.ModelWt || 0,
99
+ metal: baseMetalDetails.baseMetal,
100
+ metal_purity: baseMetalDetails.baseMetalPurity,
101
+ metal_color: baseMetalDetails.baseMetalColor,
102
+ total_diamond_pcs: styleData.TotDiamondPcs || 0,
103
+ total_diamond_weight: styleData.TotDiamondWt || 0,
104
+ total_client_diamond_pcs: styleData.TotClientDiamondPcs || 0,
105
+ total_client_diamond_weight: styleData.TotClientDiamondWt || 0,
106
+ total_stone_pcs: styleData.TotStonePcs || 0,
107
+ total_stone_weight: styleData.TotStoneWt || 0,
108
+ total_cz_pcs: styleData.TotCzPcs || 0,
109
+ total_cz_weight: styleData.TotCzWt || 0,
110
+ web_description: styleData.WebDescription || "",
111
+ remarks: styleData.Remarks || "",
112
+ customer_remarks: styleData.CustomerRemarks || "",
113
+ special_remarks: styleData.SpecialRemarks || "",
114
+ metal_total_cost: styleCalculations.metal_total_cost,
115
+ diamond_total_cost: styleCalculations.diamond_total_cost,
116
+ stone_total_cost: styleCalculations.stone_total_cost,
117
+ cz_total_cost: 0,
118
+ cpf_total_cost: styleCalculations.cpf_total_cost,
119
+ metal_total_amount: styleCalculations.metal_total_amount,
120
+ diamond_total_amount: styleCalculations.diamond_total_amount,
121
+ stone_total_amount: styleCalculations.stone_total_amount,
122
+ cz_total_amount: 0,
123
+ cpf_total_amount: styleCalculations.cpf_total_amount,
124
+ };
125
+ };
126
+ exports.getExtendedProductData = getExtendedProductData;
127
+ const getStyleDetailLines = (data) => {
128
+ return data.map((detail) => {
129
+ return {
130
+ style_id: detail.StyleId,
131
+ style_mst_detail_id: detail.StyleMstDetailId,
132
+ item_code: detail.ItemCode || "",
133
+ raw_type: detail.RawType || "",
134
+ material_group: detail.MaterialGroup || "",
135
+ raw_code: detail.RawCode || "",
136
+ shape_code: detail.ShapeCode || "",
137
+ qly_code: detail.QlyCode || "",
138
+ tone_code: detail.ToneCode || "",
139
+ description: detail.Description || "",
140
+ size: detail.Size || "",
141
+ accessories: detail.Accessories || "",
142
+ setting: detail.Setting || "",
143
+ is_base: detail.IsBase || false,
144
+ is_center_stone: detail.IsCenterStone || false,
145
+ pieces: detail.Pieces || 0,
146
+ weight: detail.Weight || 0,
147
+ min_weight: detail.MinWeight || 0,
148
+ max_weight: detail.MaxWeight || 0,
149
+ stone_wt: detail.StoneWt || 0,
150
+ default_wt: detail.DefaultWt || 0,
151
+ raw_formula: detail.RawFormula || "",
152
+ cost_rate: detail.CostRate || 0,
153
+ cost_amount: detail.CostAmount || 0,
154
+ hand_cost_rate: detail.HandCostRate || 0,
155
+ hand_cost_amount: detail.HandCostAmount || 0,
156
+ set_cost_rate: detail.SetCostRate || 0,
157
+ set_cost_amount: detail.SetCostAmount || 0,
158
+ loss_cost_per: detail.LossCostPer || 0,
159
+ loss_cost_per_is_fix: detail.LossCostPerIsFix || false,
160
+ loss_cost_weight: detail.LossCostWeight || 0,
161
+ loss_cost_amt: detail.LossCostAmt || 0,
162
+ cpf_cost_rate: detail.CPFCostRate || 0,
163
+ cpf_cost_is_fix: detail.CPFCostIsFix || false,
164
+ cpf_cost_amt: detail.CPFCostAmt || 0,
165
+ rate: detail.Rate || 0,
166
+ amount: detail.Amount || 0,
167
+ hand_rate: detail.HandRate || 0,
168
+ hand_amount: detail.HandAmount || 0,
169
+ set_rate: detail.SetRate || 0,
170
+ set_amount: detail.SetAmount || 0,
171
+ loss_per: detail.LossPer || 0,
172
+ loss_per_is_fix: detail.LossPerIsFix || false,
173
+ loss_weight: detail.LossWeight || 0,
174
+ loss_amt: detail.LossAmt || 0,
175
+ cpf_rate: detail.CPFRate || 0,
176
+ cpf_is_fix: detail.CPFIsFix || false,
177
+ cpf_amt: detail.CPFAmt || 0,
178
+ };
179
+ });
180
+ };
181
+ exports.getStyleDetailLines = getStyleDetailLines;
182
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL2hlbHBlcnMvcHJvZHVjdC1oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0Esb0NBQWtFO0FBRTNELE1BQU0sV0FBVyxHQUFHLENBQUMsT0FBaUIsRUFBVSxFQUFFO0lBQ3ZELE9BQU8sT0FBTztTQUNYLE1BQU0sQ0FBQyxPQUFPLENBQUM7U0FDZixJQUFJLENBQUMsR0FBRyxDQUFDO1NBQ1QsV0FBVyxFQUFFO1NBQ2IsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyw4QkFBOEI7U0FDbkQsT0FBTyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUM7U0FDMUIsT0FBTyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQztBQUM1QixDQUFDLENBQUM7QUFSVyxRQUFBLFdBQVcsZUFRdEI7QUFFSyxNQUFNLFlBQVksR0FBRyxDQUFDLE1BQWMsRUFBVSxFQUFFO0lBQ3JELE1BQU0sU0FBUyxHQUEyQjtRQUN4QyxFQUFFLEVBQUUsY0FBTSxDQUFDLEVBQUU7UUFDYixFQUFFLEVBQUUsY0FBTSxDQUFDLEVBQUU7UUFDYixFQUFFLEVBQUUsY0FBTSxDQUFDLEVBQUU7UUFDYixFQUFFLEVBQUUsY0FBTSxDQUFDLEVBQUU7S0FDZCxDQUFDO0lBQ0YsT0FBTyxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksY0FBTSxDQUFDLEVBQUUsQ0FBQztBQUN4QyxDQUFDLENBQUM7QUFSVyxRQUFBLFlBQVksZ0JBUXZCO0FBRUssTUFBTSw2QkFBNkIsR0FBRyxDQUMzQyxZQUFpQyxFQUNkLEVBQUU7SUFDckIsTUFBTSxjQUFjLEdBQUcsWUFBWTtTQUNoQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEtBQUssT0FBTyxDQUFDO1NBQzlDLE1BQU0sQ0FBQyxDQUFDLEdBQUcs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
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_flows_1 = require("@medusajs/medusa/core-flows");
4
+ const create_extended_product_from_product_1 = require("../create-extended-product-from-product");
5
+ core_flows_1.createProductsWorkflow.hooks.productsCreated(async ({ products, additional_data }, { container }) => {
6
+ const workflow = (0, create_extended_product_from_product_1.createExtendedProductFromProductWorkflow)(container);
7
+ for (const product of products) {
8
+ await workflow.run({
9
+ input: {
10
+ product,
11
+ additional_data: additional_data?.[product?.external_id],
12
+ },
13
+ });
14
+ }
15
+ });
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1jcmVhdGVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9ob29rcy9wcm9kdWN0LWNyZWF0ZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw0REFBcUU7QUFDckUsa0dBR2lEO0FBRWpELG1DQUFzQixDQUFDLEtBQUssQ0FBQyxlQUFlLENBQzFDLEtBQUssRUFBRSxFQUFFLFFBQVEsRUFBRSxlQUFlLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDckQsTUFBTSxRQUFRLEdBQUcsSUFBQSwrRUFBd0MsRUFBQyxTQUFTLENBQUMsQ0FBQztJQUNyRSxLQUFLLE1BQU0sT0FBTyxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBQy9CLE1BQU0sUUFBUSxDQUFDLEdBQUcsQ0FBQztZQUNqQixLQUFLLEVBQUU7Z0JBQ0wsT0FBTztnQkFDUCxlQUFlLEVBQUUsZUFBZSxFQUFFLENBQUMsT0FBTyxFQUFFLFdBQVksQ0FBQzthQUNUO1NBQ25ELENBQUMsQ0FBQztJQUNMLENBQUM7QUFDSCxDQUFDLENBQ0YsQ0FBQyJ9
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const core_flows_1 = require("@medusajs/medusa/core-flows");
4
+ const update_extended_product_from_product_1 = require("../update-extended-product-from-product");
5
+ core_flows_1.updateProductsWorkflow.hooks.productsUpdated(async ({ products, additional_data }, { container }) => {
6
+ const workflow = (0, update_extended_product_from_product_1.updateExtendedProductFromProductWorkflow)(container);
7
+ for (const product of products) {
8
+ await workflow.run({
9
+ input: {
10
+ product,
11
+ additional_data: additional_data?.[product?.external_id],
12
+ },
13
+ });
14
+ }
15
+ });
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC11cGRhdGVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9ob29rcy9wcm9kdWN0LXVwZGF0ZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSw0REFBcUU7QUFDckUsa0dBR2lEO0FBRWpELG1DQUFzQixDQUFDLEtBQUssQ0FBQyxlQUFlLENBQzFDLEtBQUssRUFBRSxFQUFFLFFBQVEsRUFBRSxlQUFlLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDckQsTUFBTSxRQUFRLEdBQUcsSUFBQSwrRUFBd0MsRUFBQyxTQUFTLENBQUMsQ0FBQztJQUNyRSxLQUFLLE1BQU0sT0FBTyxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBQy9CLE1BQU0sUUFBUSxDQUFDLEdBQUcsQ0FBQztZQUNqQixLQUFLLEVBQUU7Z0JBQ0wsT0FBTztnQkFDUCxlQUFlLEVBQUUsZUFBZSxFQUFFLENBQUMsT0FBTyxFQUFFLFdBQVksQ0FBQzthQUNiO1NBQy9DLENBQUMsQ0FBQztJQUNMLENBQUM7QUFDSCxDQUFDLENBQ0YsQ0FBQyJ9
@@ -1,3 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3R5cGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3R5cGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQW9DQSxJQUFZLE1BS1g7QUFMRCxXQUFZLE1BQU07SUFDaEIsb0JBQVUsQ0FBQTtJQUNWLHNCQUFZLENBQUE7SUFDWix1QkFBYSxDQUFBO0lBQ2IscUJBQVcsQ0FBQTtBQUNiLENBQUMsRUFMVyxNQUFNLHNCQUFOLE1BQU0sUUFLakIifQ==
@@ -0,0 +1,31 @@
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: ["extended_product.*", "extended_product.style_details.*"],
11
+ filters: {
12
+ id: input.product.id,
13
+ },
14
+ });
15
+ const updated = (0, workflows_sdk_1.when)({
16
+ input,
17
+ products,
18
+ }, (data) => data.products[0].extended_product !== undefined &&
19
+ data.input.additional_data?.extendedProductData !== undefined).then(() => {
20
+ return (0, update_extended_product_from_product_1.updateExtendedProductStep)({
21
+ existingProduct: products[0],
22
+ extendedProduct: input.additional_data
23
+ ?.extendedProductData,
24
+ styleDetails: input.additional_data?.styleDetails,
25
+ });
26
+ });
27
+ return new workflows_sdk_1.WorkflowResponse({
28
+ updated,
29
+ });
30
+ });
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3VwZGF0ZS1leHRlbmRlZC1wcm9kdWN0LWZyb20tcHJvZHVjdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxxRUFJMkM7QUFDM0MsNERBQWdFO0FBR2hFLHVHQUF5RjtBQVU1RSxRQUFBLHdDQUF3QyxHQUFHLElBQUEsOEJBQWMsRUFDcEUsc0NBQXNDLEVBQ3RDLENBQUMsS0FBZ0QsRUFBRSxFQUFFO0lBQ25ELE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEdBQUcsSUFBQSw4QkFBaUIsRUFBQztRQUMzQyxNQUFNLEVBQUUsU0FBUztRQUNqQixNQUFNLEVBQUUsQ0FBQyxvQkFBb0IsRUFBRSxrQ0FBa0MsQ0FBQztRQUNsRSxPQUFPLEVBQUU7WUFDUCxFQUFFLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1NBQ3JCO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsTUFBTSxPQUFPLEdBQUcsSUFBQSxvQkFBSSxFQUNsQjtRQUNFLEtBQUs7UUFDTCxRQUFRO0tBQ1QsRUFDRCxDQUFDLElBQUksRUFBRSxFQUFFLENBQ1AsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsS0FBSyxTQUFTO1FBQy9DLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxFQUFFLG1CQUFtQixLQUFLLFNBQVMsQ0FDaEUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1FBQ1YsT0FBTyxJQUFBLGdFQUF5QixFQUFDO1lBQy9CLGVBQWUsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQzVCLGVBQWUsRUFBRSxLQUFLLENBQUMsZUFBZTtnQkFDcEMsRUFBRSxtQkFBa0M7WUFDdEMsWUFBWSxFQUFFLEtBQUssQ0FBQyxlQUFlLEVBQUUsWUFBaUM7U0FDdkUsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFFSCxPQUFPLElBQUksZ0NBQWdCLENBQUM7UUFDMUIsT0FBTztLQUNSLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FDRixDQUFDIn0=
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateExtendedProductStep = void 0;
4
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
5
+ const extended_product_1 = require("../../../modules/extended-product");
6
+ exports.updateExtendedProductStep = (0, workflows_sdk_1.createStep)("update-extended-product", async ({ extendedProduct, styleDetails, existingProduct, }, { container }) => {
7
+ const extendedProductService = container.resolve(extended_product_1.EXTENDED_PRODUCT_MODULE);
8
+ const prevData = await extendedProductService.retrieveExtendedProduct(existingProduct.extended_product.id, {
9
+ relations: ["style_details"],
10
+ });
11
+ await extendedProductService.deleteStyleDetailsLines(prevData.style_details.map((i) => i.id));
12
+ const formattedLines = styleDetails.map((line) => ({
13
+ ...line,
14
+ extended_product: existingProduct.extended_product.id,
15
+ }));
16
+ const linesResult = await extendedProductService.createStyleDetailsLines([
17
+ ...formattedLines,
18
+ ]);
19
+ const custom = await extendedProductService.updateExtendedProducts({
20
+ id: existingProduct?.extended_product?.id,
21
+ ...extendedProduct,
22
+ style_date: new Date(extendedProduct.style_date),
23
+ style_details: linesResult.map((i) => i.id),
24
+ });
25
+ return new workflows_sdk_1.StepResponse(custom, prevData);
26
+ }, async (prevData, { container }) => {
27
+ if (!prevData) {
28
+ return;
29
+ }
30
+ const extendedProductService = container.resolve(extended_product_1.EXTENDED_PRODUCT_MODULE);
31
+ await extendedProductService.updateExtendedProducts({
32
+ ...prevData,
33
+ style_details: prevData.style_details.map((detail) => detail.id),
34
+ });
35
+ });
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLWV4dGVuZGVkLXByb2R1Y3QtZnJvbS1wcm9kdWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy91cGRhdGUtZXh0ZW5kZWQtcHJvZHVjdC1mcm9tLXByb2R1Y3Qvc3RlcHMvdXBkYXRlLWV4dGVuZGVkLXByb2R1Y3QtZnJvbS1wcm9kdWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUM3RSx3RUFBNEU7QUFVL0QsUUFBQSx5QkFBeUIsR0FBRyxJQUFBLDBCQUFVLEVBQ2pELHlCQUF5QixFQUN6QixLQUFLLEVBQ0gsRUFDRSxlQUFlLEVBQ2YsWUFBWSxFQUNaLGVBQWUsR0FDZ0IsRUFDakMsRUFBRSxTQUFTLEVBQUUsRUFDYixFQUFFO0lBQ0YsTUFBTSxzQkFBc0IsR0FBMkIsU0FBUyxDQUFDLE9BQU8sQ0FDdEUsMENBQXVCLENBQ3hCLENBQUM7SUFFRixNQUFNLFFBQVEsR0FBRyxNQUFNLHNCQUFzQixDQUFDLHVCQUF1QixDQUNuRSxlQUFlLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxFQUNuQztRQUNFLFNBQVMsRUFBRSxDQUFDLGVBQWUsQ0FBQztLQUM3QixDQUNGLENBQUM7SUFFRixNQUFNLHNCQUFzQixDQUFDLHVCQUF1QixDQUNsRCxRQUFRLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUN4QyxDQUFDO0lBRUYsTUFBTSxjQUFjLEdBQUcsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqRCxHQUFHLElBQUk7UUFDUCxnQkFBZ0IsRUFBRSxlQUFlLENBQUMsZ0JBQWdCLENBQUMsRUFBRTtLQUN0RCxDQUFDLENBQUMsQ0FBQztJQUVKLE1BQU0sV0FBVyxHQUFHLE1BQU0sc0JBQXNCLENBQUMsdUJBQXVCLENBQUM7UUFDdkUsR0FBRyxjQUFjO0tBQ2xCLENBQUMsQ0FBQztJQUVILE1BQU0sTUFBTSxHQUFHLE1BQU0sc0JBQXNCLENBQUMsc0JBQXNCLENBQUM7UUFDakUsRUFBRSxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxFQUFFO1FBQ3pDLEdBQUcsZUFBZTtRQUNsQixVQUFVLEVBQUUsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQztRQUNoRCxhQUFhLEVBQUUsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztLQUM1QyxDQUFDLENBQUM7SUFFSCxPQUFPLElBQUksNEJBQVksQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFDNUMsQ0FBQyxFQUNELEtBQUssRUFBRSxRQUFRLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFO0lBQ2hDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNkLE9BQU87SUFDVCxDQUFDO0lBQ0QsTUFBTSxzQkFBc0IsR0FBMkIsU0FBUyxDQUFDLE9BQU8sQ0FDdEUsMENBQXVCLENBQ3hCLENBQUM7SUFFRixNQUFNLHNCQUFzQixDQUFDLHNCQUFzQixDQUFDO1FBQ2xELEdBQUcsUUFBUTtRQUNYLGFBQWEsRUFBRSxRQUFRLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztLQUNqRSxDQUFDLENBQUM7QUFDTCxDQUFDLENBQ0YsQ0FBQyJ9
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateExtendedProductWithFieldStep = void 0;
4
+ const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
5
+ const extended_product_1 = require("../../../modules/extended-product");
6
+ exports.updateExtendedProductWithFieldStep = (0, workflows_sdk_1.createStep)("update-extended-product-with-field", async ({ id, data }, { container }) => {
7
+ const extendedProductModuleService = container.resolve(extended_product_1.EXTENDED_PRODUCT_MODULE);
8
+ const prevData = await extendedProductModuleService.retrieveExtendedProduct(id);
9
+ const extendedProduct = await extendedProductModuleService.updateExtendedProducts({
10
+ id,
11
+ ...data,
12
+ });
13
+ return new workflows_sdk_1.StepResponse(extendedProduct, prevData);
14
+ });
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLWV4dGVuZGVkLXByb2R1Y3Qtd2l0aC1maWVsZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvdXBkYXRlLWV4dGVuZGVkLXByb2R1Y3QtZnJvbS1wcm9kdWN0L3N0ZXBzL3VwZGF0ZS1leHRlbmRlZC1wcm9kdWN0LXdpdGgtZmllbGQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscUVBQTZFO0FBQzdFLHdFQUE0RTtBQVEvRCxRQUFBLGtDQUFrQyxHQUFHLElBQUEsMEJBQVUsRUFDMUQsb0NBQW9DLEVBQ3BDLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQWtDLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFO0lBQ3BFLE1BQU0sNEJBQTRCLEdBQ2hDLFNBQVMsQ0FBQyxPQUFPLENBQUMsMENBQXVCLENBQUMsQ0FBQztJQUU3QyxNQUFNLFFBQVEsR0FBRyxNQUFNLDRCQUE0QixDQUFDLHVCQUF1QixDQUN6RSxFQUFFLENBQ0gsQ0FBQztJQUVGLE1BQU0sZUFBZSxHQUNuQixNQUFNLDRCQUE0QixDQUFDLHNCQUFzQixDQUFDO1FBQ3hELEVBQUU7UUFDRixHQUFHLElBQUk7S0FDUixDQUFDLENBQUM7SUFFTCxPQUFPLElBQUksNEJBQVksQ0FBQyxlQUFlLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFDckQsQ0FBQyxDQUNGLENBQUMifQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@devx-commerce/plugin-gati",
3
- "version": "0.0.2-beta.1",
3
+ "version": "0.0.2-beta.2",
4
4
  "description": "Gati ERP integration for Medusa",
5
5
  "author": "devx commerce",
6
6
  "license": "MIT",
@@ -1,68 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.fetchStyleData = 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.fetchStyleData = (0, workflows_sdk_1.createStep)("fetch-style-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);
67
- });
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL2NyZWF0ZS1vci11cGRhdGUtc3R5bGUtbWFzdGVyL3N0ZXBzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUE2RTtBQUk3RSxNQUFNLFVBQVUsR0FBRyxFQUFFLENBQUMsQ0FBQyw2QkFBNkI7QUFDcEQsTUFBTSxXQUFXLEdBQUcsQ0FBQyxDQUFDO0FBQ3RCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxDQUFDLGlDQUFpQztBQUUzRCxNQUFNLEtBQUssR0FBRyxDQUFDLEVBQVUsRUFBRSxFQUFFLENBQUMsSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUVoRixNQUFNLFlBQVksR0FBRyxLQUFLLEVBQ3hCLFVBQTRCLEVBQzVCLE9BQWUsRUFDZixLQUFlLEVBQ2YsVUFBVSxHQUFHLENBQUMsRUFDRSxFQUFFO0lBQ2xCLElBQUksQ0FBQztRQUNILE1BQU0sT0FBTyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDL0IsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsYUFBYSxFQUFFLEVBQUU7WUFDaEMsSUFBSSxDQUFDO2dCQUNILE9BQU8sTUFBTSxVQUFVLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxhQUFhLENBQUMsQ0FBQztZQUNoRSxDQUFDO1lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztnQkFDZixPQUFPLENBQUMsS0FBSyxDQUFDLDhCQUE4QixhQUFhLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDckUsT0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUVGLDZCQUE2QjtRQUM3QixNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxNQUFNLENB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