后端迁移平台配置服务入口
This commit is contained in:
+2
-5
@@ -1,5 +1,3 @@
|
||||
// @ts-check
|
||||
|
||||
import { query } from '../../../db/client.js'
|
||||
import {
|
||||
getAgisoMessagingDefaults,
|
||||
@@ -14,7 +12,7 @@ import {
|
||||
} from './domain.js'
|
||||
import { buildAdminAgisoMessagingSavePayload } from './writes.js'
|
||||
|
||||
/** @typedef {import('../../../types/admin-write-inputs.js').AdminAgisoShopConfigSaveInput} AdminAgisoShopConfigSaveInput */
|
||||
type JsonObject = Record<string, any>
|
||||
|
||||
export async function getAdminAgisoShopConfigs() {
|
||||
const configMap = getAgisoShopConfigMap()
|
||||
@@ -51,8 +49,7 @@ export async function getAdminAgisoShopConfigs() {
|
||||
}
|
||||
}
|
||||
|
||||
/** @param {AdminAgisoShopConfigSaveInput} [payload] */
|
||||
export function updateAdminAgisoShopConfigs(payload = /** @type {AdminAgisoShopConfigSaveInput} */ ({})) {
|
||||
export function updateAdminAgisoShopConfigs(payload: JsonObject = {}) {
|
||||
const saved = saveAgisoMessagingConfig(buildAdminAgisoMessagingSavePayload(payload, {
|
||||
currentDefaults: getAgisoMessagingDefaults(),
|
||||
currentMap: getAgisoShopConfigMap(),
|
||||
+2
-4
@@ -1,5 +1,3 @@
|
||||
// @ts-check
|
||||
|
||||
import {
|
||||
getKuaishouCloudFulfillmentConfig,
|
||||
getKuaishouCloudFulfillmentFilePath,
|
||||
@@ -8,7 +6,7 @@ import {
|
||||
import { syncConfiguredFulfillmentBindings } from '../../bootstrap/fulfillment-bootstrap-service.js'
|
||||
import { mapAdminKuaishouCloudFulfillmentSource } from './mappers.js'
|
||||
|
||||
/** @typedef {import('../../../types/admin-write-inputs.js').AdminKuaishouCloudFulfillmentConfigInput} AdminKuaishouCloudFulfillmentConfigInput */
|
||||
type JsonObject = Record<string, any>
|
||||
|
||||
export function getAdminKuaishouCloudFulfillmentConfig() {
|
||||
const config = getKuaishouCloudFulfillmentConfig()
|
||||
@@ -21,7 +19,7 @@ export function getAdminKuaishouCloudFulfillmentConfig() {
|
||||
|
||||
/** @param {AdminKuaishouCloudFulfillmentConfigInput} [payload] */
|
||||
export async function updateAdminKuaishouCloudFulfillmentConfig(
|
||||
payload = /** @type {AdminKuaishouCloudFulfillmentConfigInput} */ ({}),
|
||||
payload: JsonObject = {},
|
||||
) {
|
||||
const saved = saveKuaishouCloudFulfillmentConfig({
|
||||
enabled: payload.enabled !== false,
|
||||
+6
-15
@@ -1,5 +1,3 @@
|
||||
// @ts-check
|
||||
|
||||
import {
|
||||
consumeKuaishouEticket,
|
||||
queryKuaishouEticketConsumeDetail,
|
||||
@@ -16,12 +14,9 @@ import { queryKuaishouEticketStableInfo } from '../../platforms/kuaishou-eticket
|
||||
import { resolveKuaishouEticketAdminContext } from './context.js'
|
||||
import { mapAdminKuaishouEticketSourceConfig } from './mappers.js'
|
||||
|
||||
/** @typedef {import('../../../types/admin-write-inputs.js').AdminKuaishouEticketSourceConfigInput} AdminKuaishouEticketSourceConfigInput */
|
||||
/** @typedef {import('../../../types/admin-write-inputs.js').AdminKuaishouEticketShopInfoInput} AdminKuaishouEticketShopInfoInput */
|
||||
/** @typedef {import('../../../types/admin-write-inputs.js').AdminKuaishouEticketDetailQueryInput} AdminKuaishouEticketDetailQueryInput */
|
||||
/** @typedef {import('../../../types/admin-write-inputs.js').AdminKuaishouEticketConsumeInput} AdminKuaishouEticketConsumeInput */
|
||||
type JsonObject = Record<string, any>
|
||||
|
||||
function resolveAdminKuaishouEticketContext(payload = {}) {
|
||||
function resolveAdminKuaishouEticketContext(payload: JsonObject = {}) {
|
||||
return resolveKuaishouEticketAdminContext(payload, {
|
||||
savedSource: getKuaishouEticketSourceConfig(),
|
||||
findShopConfig: findKuaishouEticketShopConfig,
|
||||
@@ -38,8 +33,7 @@ export function getAdminKuaishouEticketSourceConfig() {
|
||||
}
|
||||
}
|
||||
|
||||
/** @param {AdminKuaishouEticketSourceConfigInput} [payload] */
|
||||
export function updateAdminKuaishouEticketSourceConfig(payload = /** @type {AdminKuaishouEticketSourceConfigInput} */ ({})) {
|
||||
export function updateAdminKuaishouEticketSourceConfig(payload: JsonObject = {}) {
|
||||
const saved = saveKuaishouEticketSourceConfig({
|
||||
enabled: payload.enabled !== false,
|
||||
baseUrl: String(payload.baseUrl || '').trim() || 'https://s.kwaixiaodian.com',
|
||||
@@ -52,8 +46,7 @@ export function updateAdminKuaishouEticketSourceConfig(payload = /** @type {Admi
|
||||
}
|
||||
}
|
||||
|
||||
/** @param {AdminKuaishouEticketDetailQueryInput} [payload] */
|
||||
export async function queryAdminKuaishouEticketDetail(payload = /** @type {AdminKuaishouEticketDetailQueryInput} */ ({})) {
|
||||
export async function queryAdminKuaishouEticketDetail(payload: JsonObject = {}) {
|
||||
const context = resolveAdminKuaishouEticketContext(payload)
|
||||
|
||||
return queryKuaishouEticketConsumeDetail({
|
||||
@@ -63,8 +56,7 @@ export async function queryAdminKuaishouEticketDetail(payload = /** @type {Admin
|
||||
})
|
||||
}
|
||||
|
||||
/** @param {AdminKuaishouEticketShopInfoInput} [payload] */
|
||||
export async function queryAdminKuaishouEticketShopInfo(payload = /** @type {AdminKuaishouEticketShopInfoInput} */ ({})) {
|
||||
export async function queryAdminKuaishouEticketShopInfo(payload: JsonObject = {}) {
|
||||
const context = resolveAdminKuaishouEticketContext(payload)
|
||||
|
||||
return queryKuaishouEticketStableInfo({
|
||||
@@ -73,8 +65,7 @@ export async function queryAdminKuaishouEticketShopInfo(payload = /** @type {Adm
|
||||
})
|
||||
}
|
||||
|
||||
/** @param {AdminKuaishouEticketConsumeInput} [payload] */
|
||||
export async function consumeAdminKuaishouEticket(payload = /** @type {AdminKuaishouEticketConsumeInput} */ ({})) {
|
||||
export async function consumeAdminKuaishouEticket(payload: JsonObject = {}) {
|
||||
const context = resolveAdminKuaishouEticketContext(payload)
|
||||
|
||||
return consumeKuaishouEticket({
|
||||
+5
-9
@@ -1,13 +1,12 @@
|
||||
// @ts-check
|
||||
|
||||
import {
|
||||
failOpen91Order,
|
||||
listOpen91Orders,
|
||||
retryOpen91Order,
|
||||
} from '../../platforms/ninetyone/order-service.js'
|
||||
|
||||
/** @param {{ page?: number | string, pageSize?: number | string, status?: string }} [query] */
|
||||
export async function getAdminNinetyoneOrders(query = {}) {
|
||||
type JsonObject = Record<string, any>
|
||||
|
||||
export async function getAdminNinetyoneOrders(query: JsonObject = {}) {
|
||||
return listOpen91Orders({
|
||||
page: Number(query.page || 1) || 1,
|
||||
pageSize: Number(query.pageSize || 20) || 20,
|
||||
@@ -15,8 +14,7 @@ export async function getAdminNinetyoneOrders(query = {}) {
|
||||
})
|
||||
}
|
||||
|
||||
/** @param {number | string} orderId */
|
||||
export async function retryAdminNinetyoneOrder(orderId) {
|
||||
export async function retryAdminNinetyoneOrder(orderId: number | string) {
|
||||
const result = await retryOpen91Order(orderId)
|
||||
return {
|
||||
orderId: Number(result.order?.id || 0),
|
||||
@@ -27,9 +25,7 @@ export async function retryAdminNinetyoneOrder(orderId) {
|
||||
}
|
||||
}
|
||||
|
||||
/** @param {number | string} orderId */
|
||||
/** @param {{ reason?: string }} [payload] */
|
||||
export async function failAdminNinetyoneOrder(orderId, payload = {}) {
|
||||
export async function failAdminNinetyoneOrder(orderId: number | string, payload: JsonObject = {}) {
|
||||
const result = await failOpen91Order(orderId, payload.reason)
|
||||
return {
|
||||
orderId: Number(result.order?.id || 0),
|
||||
@@ -607,6 +607,17 @@
|
||||
- `npm run typecheck`
|
||||
- `npm run build`
|
||||
- `npm test` 共 139 个用例通过
|
||||
144. 后台平台配置薄服务包装层迁移到 `.ts`:
|
||||
- `src/services/admin/platform-config/agiso-service.ts`
|
||||
- `src/services/admin/platform-config/kuaishou-eticket-service.ts`
|
||||
- `src/services/admin/platform-config/kuaishou-cloud-fulfillment-service.ts`
|
||||
- `src/services/admin/platform-config/ninetyone-service.ts`
|
||||
145. Agiso 店铺配置、快手电子券配置 / 查询 / 核销、快手 Cloud 履约配置、91 卡券后台订单操作入口已进入 TS 编译链路;payload / query 补齐动态对象类型
|
||||
146. Docker 内验证通过:
|
||||
- `src/services/admin/platform-config/*.test.js` 共 37 个用例通过
|
||||
- `npm run typecheck`
|
||||
- `npm run build`
|
||||
- `npm test` 共 139 个用例通过
|
||||
|
||||
## 下一步建议
|
||||
|
||||
|
||||
Reference in New Issue
Block a user