diff --git a/apps/backend/src/services/platforms/ninetyone/order-service.js b/apps/backend/src/services/platforms/ninetyone/order-service.ts similarity index 98% rename from apps/backend/src/services/platforms/ninetyone/order-service.js rename to apps/backend/src/services/platforms/ninetyone/order-service.ts index 9a9124c1..797fa4d8 100644 --- a/apps/backend/src/services/platforms/ninetyone/order-service.js +++ b/apps/backend/src/services/platforms/ninetyone/order-service.ts @@ -1,5 +1,3 @@ -// @ts-check - import { query } from '../../../db/client.js' import { createOrder, findOrderByPlatformOrderId, getOrderById, updateOrder } from '../../../repositories/order-repo.js' import { listOrderItemsByOrderId, replaceOrderItems } from '../../../repositories/order-item-repo.js' @@ -17,7 +15,9 @@ import { nowIso } from '../../../utils/time.js' export const OPEN_91_PENDING_CONFIG_STATUS = 'pending_config' export const OPEN_91_MANUAL_FAILED_STATUS = 'manual_failed' -export function buildOpen91SourceEvent(payload = {}, config = {}) { +type JsonObject = Record + +export function buildOpen91SourceEvent(payload: JsonObject = {}, config: JsonObject = {}) { const normalized = normalizeOpen91CreatePayload(payload) const productNo = normalized.productNo @@ -195,8 +195,7 @@ export async function listOpen91Orders({ page = 1, pageSize = 20, status = 'pend 'o.provider = $1', 'o.platform = $2', ] - /** @type {Array} */ - const params = [OPEN_91_PROVIDER, OPEN_91_PLATFORM] + const params: Array = [OPEN_91_PROVIDER, OPEN_91_PLATFORM] if (normalizedStatus && normalizedStatus !== 'all') { params.push(normalizedStatus) diff --git a/docs/backend-typescript-migration-plan.md b/docs/backend-typescript-migration-plan.md index 97a8c366..cde9f089 100644 --- a/docs/backend-typescript-migration-plan.md +++ b/docs/backend-typescript-migration-plan.md @@ -562,6 +562,14 @@ - `npm run typecheck` - `npm run build` - `npm test` 共 139 个用例通过 +129. 91卡券平台订单服务迁移到 `.ts`: + - `src/services/platforms/ninetyone/order-service.ts` +130. 91 卡券 source event 构造、待补配置订单落库、后台重试 / 手动失败、后台订单列表映射已进入 TS 编译链路;动态 payload / config 与 SQL 参数数组补齐类型 +131. Docker 内验证通过: + - `src/services/platforms/ninetyone/order-service.test.js`、`src/services/open-91/shared.test.js` 共 7 个用例通过 + - `npm run typecheck` + - `npm run build` + - `npm test` 共 139 个用例通过 ## 下一步建议