diff --git a/.changeset/new-spoons-flash.md b/.changeset/new-spoons-flash.md new file mode 100644 index 0000000000..4171d33377 --- /dev/null +++ b/.changeset/new-spoons-flash.md @@ -0,0 +1,5 @@ +--- +"@medusajs/medusa": patch +--- + +fix(medusa): Get cart missing transaction on update diff --git a/packages/medusa/src/api/routes/store/carts/get-cart.ts b/packages/medusa/src/api/routes/store/carts/get-cart.ts index ee1a3ed5ce..c441adb19d 100644 --- a/packages/medusa/src/api/routes/store/carts/get-cart.ts +++ b/packages/medusa/src/api/routes/store/carts/get-cart.ts @@ -1,4 +1,5 @@ import { CartService } from "../../../../services" +import { EntityManager } from "typeorm" /** * @oas [get] /carts/{id} @@ -47,6 +48,7 @@ export default async (req, res) => { const { id } = req.params const cartService: CartService = req.scope.resolve("cartService") + const manager: EntityManager = req.scope.resolve("manager") const cart = await cartService.retrieve(id, { select: ["id", "customer_id"], @@ -59,8 +61,10 @@ export default async (req, res) => { !cart.email || cart.customer_id !== req.user.customer_id ) { - await cartService.update(id, { - customer_id: req.user.customer_id, + await manager.transaction(async (transctionManager) => { + await cartService.withTransaction(transctionManager).update(id, { + customer_id: req.user.customer_id, + }) }) } }