fix(medusa,product): fix ordering product categories (#13487)

CLOSES CORE-1191

cc @SteelRazor47
This commit is contained in:
William Bouchard
2025-09-11 17:18:40 -04:00
committed by GitHub
parent 75e85414cc
commit 4fded2602b
5 changed files with 40 additions and 27 deletions

View File

@@ -2,10 +2,7 @@ import {
StoreProductCategoryListParams,
StoreProductCategoryListResponse,
} from "@medusajs/framework/types"
import {
ContainerRegistrationKeys,
remoteQueryObjectFromString,
} from "@medusajs/framework/utils"
import { ContainerRegistrationKeys } from "@medusajs/framework/utils"
import {
AuthenticatedMedusaRequest,
MedusaResponse,
@@ -15,23 +12,19 @@ export const GET = async (
req: AuthenticatedMedusaRequest<StoreProductCategoryListParams>,
res: MedusaResponse<StoreProductCategoryListResponse>
) => {
const remoteQuery = req.scope.resolve(ContainerRegistrationKeys.REMOTE_QUERY)
const query = req.scope.resolve(ContainerRegistrationKeys.QUERY)
const queryObject = remoteQueryObjectFromString({
entryPoint: "product_category",
variables: {
filters: req.filterableFields,
...req.queryConfig.pagination,
},
const { data: product_categories, metadata } = await query.graph({
entity: "product_category",
fields: req.queryConfig.fields,
filters: req.filterableFields,
pagination: req.queryConfig.pagination,
})
const { rows: product_categories, metadata } = await remoteQuery(queryObject)
res.json({
product_categories,
count: metadata.count,
offset: metadata.skip,
limit: metadata.take,
count: metadata!.count,
offset: metadata!.skip,
limit: metadata!.take,
})
}

View File

@@ -6,7 +6,7 @@ import {
ProductTypes,
} from "@medusajs/framework/types"
import { DALUtils, isDefined, MedusaError } from "@medusajs/framework/utils"
import { LoadStrategy, FindOptions as MikroOptions } from "@mikro-orm/core"
import { FindOptions as MikroOptions, LoadStrategy } from "@mikro-orm/core"
import { SqlEntityManager } from "@mikro-orm/postgresql"
import { ProductCategory } from "@models"
import { UpdateCategoryInput } from "@types"
@@ -21,10 +21,9 @@ export class ProductCategoryRepository extends DALUtils.MikroOrmBaseTreeReposito
) {
const findOptions_ = { ...findOptions }
findOptions_.options ??= {}
findOptions_.options.orderBy = {
findOptions_.options.orderBy ??= {
id: "ASC",
rank: "ASC",
...findOptions_.options.orderBy,
}
const fields = (findOptions_.options.fields ??= [])