diff --git a/.changeset/gold-garlics-worry.md b/.changeset/gold-garlics-worry.md new file mode 100644 index 0000000000..1a65097bde --- /dev/null +++ b/.changeset/gold-garlics-worry.md @@ -0,0 +1,5 @@ +--- +"@medusajs/medusa": patch +--- + +fix(medusa): invalidate price selection cache on update diff --git a/.changeset/nine-chicken-cheat.md b/.changeset/nine-chicken-cheat.md new file mode 100644 index 0000000000..76c7ce4dec --- /dev/null +++ b/.changeset/nine-chicken-cheat.md @@ -0,0 +1,5 @@ +--- +"@medusajs/medusa": patch +--- + +fix(medusa): align prices formating in the import & export strategies diff --git a/packages/medusa/src/strategies/__tests__/batch-jobs/product/__snapshots__/export.ts.snap b/packages/medusa/src/strategies/__tests__/batch-jobs/product/__snapshots__/export.ts.snap index 257435f994..7d82ff7ca4 100644 --- a/packages/medusa/src/strategies/__tests__/batch-jobs/product/__snapshots__/export.ts.snap +++ b/packages/medusa/src/strategies/__tests__/batch-jobs/product/__snapshots__/export.ts.snap @@ -7,11 +7,11 @@ Array [ "product-export-strategy-product-1;test-product-product-1;Test product;;\\"test-product-description-1 test-product-description-1 second line test-product-description-1 third line -forth line\\";draft;;;;;;;;;;Test collection 1;test-collection1;test-type-1;123_1;true;;profile_1;profile_type_1;product-export-strategy-variant-1;Test variant;test-sku;test-barcode;10;false;true;;;;;;;;;100;110;130;;test-option-1;option 1 value 1;test-option-2;option 2 value 1;test-image.png +forth line\\";draft;;;;;;;;;;Test collection 1;test-collection1;test-type-1;123_1;true;;profile_1;profile_type_1;product-export-strategy-variant-1;Test variant;test-sku;test-barcode;10;false;true;;;;;;;;;1;1.1;1.3;;test-option-1;option 1 value 1;test-option-2;option 2 value 1;test-image.png ", - "product-export-strategy-product-2;test-product-product-2;Test product;;test-product-description;draft;;;;;;;;;;Test collection;test-collection2;test-type;123;true;;profile_2;profile_type_2;product-export-strategy-variant-2;Test variant;test-sku;test-barcode;10;false;true;;;;;;;;;;;;110;test-option;Option 1 value 1;;;test-image.png + "product-export-strategy-product-2;test-product-product-2;Test product;;test-product-description;draft;;;;;;;;;;Test collection;test-collection2;test-type;123;true;;profile_2;profile_type_2;product-export-strategy-variant-2;Test variant;test-sku;test-barcode;10;false;true;;;;;;;;;;;;1.1;test-option;Option 1 value 1;;;test-image.png ", - "product-export-strategy-product-2;test-product-product-2;Test product;;test-product-description;draft;;;;;;;;;;Test collection;test-collection2;test-type;123;true;;profile_2;profile_type_2;product-export-strategy-variant-3;Test variant;test-sku;test-barcode;10;false;true;;;;;;;;;;120;;;test-option;Option 1 Value 1;;;test-image.png + "product-export-strategy-product-2;test-product-product-2;Test product;;test-product-description;draft;;;;;;;;;;Test collection;test-collection2;test-type;123;true;;profile_2;profile_type_2;product-export-strategy-variant-3;Test variant;test-sku;test-barcode;10;false;true;;;;;;;;;;1.2;;;test-option;Option 1 Value 1;;;test-image.png ", ] `; @@ -23,14 +23,14 @@ Array [ "product-export-strategy-product-1;test-product-product-1;Test product;;\\"test-product-description-1 test-product-description-1 second line test-product-description-1 third line -forth line\\";draft;;;;;;;;;;Test collection 1;test-collection1;test-type-1;123_1;true;;profile_1;profile_type_1;product-export-strategy-variant-1;Test variant;test-sku;test-barcode;10;false;true;;;;;;;;;100;110;130;;test-option-1;option 1 value 1;test-option-2;option 2 value 1;test-image.png;SC 1;SC 1;\\"SC 1 +forth line\\";draft;;;;;;;;;;Test collection 1;test-collection1;test-type-1;123_1;true;;profile_1;profile_type_1;product-export-strategy-variant-1;Test variant;test-sku;test-barcode;10;false;true;;;;;;;;;1;1.1;1.3;;test-option-1;option 1 value 1;test-option-2;option 2 value 1;test-image.png;SC 1;SC 1;\\"SC 1 SC 1 second line SC 1 third line SC 1 forth line\\";;; ", - "product-export-strategy-product-2;test-product-product-2;Test product;;test-product-description;draft;;;;;;;;;;Test collection;test-collection2;test-type;123;true;;profile_2;profile_type_2;product-export-strategy-variant-2;Test variant;test-sku;test-barcode;10;false;true;;;;;;;;;;;;110;test-option;Option 1 value 1;;;test-image.png;SC 1;SC 1;SC 1;SC 2;SC 2;SC 2 + "product-export-strategy-product-2;test-product-product-2;Test product;;test-product-description;draft;;;;;;;;;;Test collection;test-collection2;test-type;123;true;;profile_2;profile_type_2;product-export-strategy-variant-2;Test variant;test-sku;test-barcode;10;false;true;;;;;;;;;;;;1.1;test-option;Option 1 value 1;;;test-image.png;SC 1;SC 1;SC 1;SC 2;SC 2;SC 2 ", - "product-export-strategy-product-2;test-product-product-2;Test product;;test-product-description;draft;;;;;;;;;;Test collection;test-collection2;test-type;123;true;;profile_2;profile_type_2;product-export-strategy-variant-3;Test variant;test-sku;test-barcode;10;false;true;;;;;;;;;;120;;;test-option;Option 1 Value 1;;;test-image.png;SC 1;SC 1;SC 1;SC 2;SC 2;SC 2 + "product-export-strategy-product-2;test-product-product-2;Test product;;test-product-description;draft;;;;;;;;;;Test collection;test-collection2;test-type;123;true;;profile_2;profile_type_2;product-export-strategy-variant-3;Test variant;test-sku;test-barcode;10;false;true;;;;;;;;;;1.2;;;test-option;Option 1 Value 1;;;test-image.png;SC 1;SC 1;SC 1;SC 2;SC 2;SC 2 ", ] `; diff --git a/packages/medusa/src/strategies/batch-jobs/product/export.ts b/packages/medusa/src/strategies/batch-jobs/product/export.ts index daacb5e599..c3ade64427 100644 --- a/packages/medusa/src/strategies/batch-jobs/product/export.ts +++ b/packages/medusa/src/strategies/batch-jobs/product/export.ts @@ -1,4 +1,7 @@ import { EntityManager } from "typeorm" + +import { humanizeAmount } from "medusa-core-utils" + import { AbstractBatchJobStrategy, IFileService } from "../../../interfaces" import { Product, ProductVariant } from "../../../models" import { BatchJobService, ProductService } from "../../../services" @@ -460,7 +463,12 @@ export default class ProductExportStrategy extends AbstractBatchJobStrategy { priceData.currency_code.toLowerCase() ) }) - return price?.amount?.toString() ?? "" + return price?.amount + ? humanizeAmount( + price?.amount, + priceData.currency_code! + ).toString() + : "" }, entityName: "variant", }, @@ -487,7 +495,12 @@ export default class ProductExportStrategy extends AbstractBatchJobStrategy { priceData.region?.id?.toLowerCase() ) }) - return price?.amount?.toString() ?? "" + return price?.amount + ? humanizeAmount( + price?.amount, + priceData.region!.currency_code! + ).toString() + : "" }, entityName: "variant", }, @@ -546,7 +559,7 @@ export default class ProductExportStrategy extends AbstractBatchJobStrategy { } /** - * Return the maximun number of each relation that must appears in the export. + * Return the maximum number of each relation that must appears in the export. * The number of item of a relation can vary between 0-Infinity and therefore the number of columns * that will be added to the export correspond to that number * @param products - The main entity to get the relation shape from