feat(order-service): 增加资料提交后自定义说明
This commit is contained in:
@@ -86,6 +86,14 @@ test('订单服务游戏 ID:标准化为纯数字字符串校验', () => {
|
||||
assert.equal(normalized.fields[0]?.validation, 'digits')
|
||||
})
|
||||
|
||||
test('订单服务提交后说明:旧配置使用默认文案,新配置支持多行自定义', () => {
|
||||
assert.equal(config().postSubmitText, '资料提交后如需修改,请联系客服。')
|
||||
assert.equal(
|
||||
config({ postSubmitText: '资料提交后不可修改。\n如填写错误,请联系客服。' }).postSubmitText,
|
||||
'资料提交后不可修改。\n如填写错误,请联系客服。',
|
||||
)
|
||||
})
|
||||
|
||||
test('订单服务提交确认:旧配置默认展示不可修改与资料错误免责声明', () => {
|
||||
const normalized = config()
|
||||
assert.deepEqual(normalized.materialConfirmation, {
|
||||
|
||||
@@ -68,6 +68,7 @@ export type OrderServiceProfileConfig = {
|
||||
materialConfirmation: OrderServiceMaterialConfirmation
|
||||
submitText: string
|
||||
successText: string
|
||||
postSubmitText: string
|
||||
}
|
||||
|
||||
export type OrderServiceProfileSnapshot = {
|
||||
@@ -96,6 +97,8 @@ export const DEFAULT_ORDER_SERVICE_MATERIAL_CONFIRMATION: OrderServiceMaterialCo
|
||||
cancelText: '返回检查',
|
||||
}
|
||||
|
||||
export const DEFAULT_ORDER_SERVICE_POST_SUBMIT_TEXT = '资料提交后如需修改,请联系客服。'
|
||||
|
||||
export async function listAdminOrderServiceProfiles() {
|
||||
const [categories, profiles] = await Promise.all([
|
||||
listAllWorkCategories(),
|
||||
@@ -153,6 +156,7 @@ export async function saveAdminOrderServiceProfile(payload: JsonObject = {}) {
|
||||
materialConfirmation,
|
||||
submitText: text(payload.submitText, 30) || '提交资料',
|
||||
successText: text(payload.successText, 80) || '资料已提交,请等待处理',
|
||||
postSubmitText: text(payload.postSubmitText, 500) || DEFAULT_ORDER_SERVICE_POST_SUBMIT_TEXT,
|
||||
adminUserId,
|
||||
})
|
||||
return { profile: mapAdminProfile(saved) }
|
||||
@@ -231,6 +235,7 @@ function mapAdminProfile(row: OrderServiceProfileRow) {
|
||||
materialConfirmation: normalizeMaterialConfirmation(row.material_confirmation_json),
|
||||
submitText: row.submit_text,
|
||||
successText: row.success_text,
|
||||
postSubmitText: buildProfileConfig(row).postSubmitText,
|
||||
status: row.status,
|
||||
currentVersionId: row.current_version_id,
|
||||
currentVersionNo: row.current_version_no,
|
||||
@@ -250,6 +255,7 @@ export function buildProfileConfig(row: {
|
||||
material_confirmation_json: unknown
|
||||
submit_text: string
|
||||
success_text: string
|
||||
post_submit_text: string
|
||||
}): OrderServiceProfileConfig & { guideImage: Record<string, unknown> } {
|
||||
return {
|
||||
name: row.name,
|
||||
@@ -262,6 +268,7 @@ export function buildProfileConfig(row: {
|
||||
materialConfirmation: normalizeMaterialConfirmation(row.material_confirmation_json),
|
||||
submitText: row.submit_text || '提交资料',
|
||||
successText: row.success_text || '资料已提交,请等待处理',
|
||||
postSubmitText: text(row.post_submit_text, 500) || DEFAULT_ORDER_SERVICE_POST_SUBMIT_TEXT,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -314,6 +321,7 @@ export function normalizeProfileConfig(value: JsonObject): OrderServiceProfileCo
|
||||
materialConfirmation: normalizeMaterialConfirmation(value.materialConfirmation),
|
||||
submitText: text(value.submitText, 30) || '提交资料',
|
||||
successText: text(value.successText, 80) || '资料已提交,请等待处理',
|
||||
postSubmitText: text(value.postSubmitText, 500) || DEFAULT_ORDER_SERVICE_POST_SUBMIT_TEXT,
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -33,6 +33,7 @@ import {
|
||||
} from './work-order-material-link-service.js'
|
||||
import {
|
||||
DEFAULT_ORDER_SERVICE_MATERIAL_CONFIRMATION,
|
||||
DEFAULT_ORDER_SERVICE_POST_SUBMIT_TEXT,
|
||||
getOrderServiceProfileSnapshotByVersion,
|
||||
normalizeProfileConfig,
|
||||
type OrderServiceField,
|
||||
@@ -74,6 +75,7 @@ export type OrderServicePublicItem = {
|
||||
description: string
|
||||
submitText: string
|
||||
successText: string
|
||||
postSubmitText: string
|
||||
state: string
|
||||
stateLabel: string
|
||||
message: string
|
||||
@@ -371,6 +373,7 @@ async function mapPublicOrderItem(order: WorkOrderRow): Promise<OrderServicePubl
|
||||
description: profile?.description || '',
|
||||
submitText: profile?.submitText || '提交资料',
|
||||
successText: profile?.successText || '资料已提交,请等待处理',
|
||||
postSubmitText: profile?.postSubmitText || DEFAULT_ORDER_SERVICE_POST_SUBMIT_TEXT,
|
||||
state: order.status,
|
||||
stateLabel: resolveOrderServiceStatusLabel(order.status, state.statusLabel),
|
||||
message: resolveOrderServiceStatusMessage({
|
||||
@@ -446,6 +449,7 @@ async function resolveProfileConfig(
|
||||
materialConfirmation: DEFAULT_ORDER_SERVICE_MATERIAL_CONFIRMATION,
|
||||
submitText: '提交资料',
|
||||
successText: '资料已提交,请等待处理',
|
||||
postSubmitText: DEFAULT_ORDER_SERVICE_POST_SUBMIT_TEXT,
|
||||
}
|
||||
}
|
||||
return null
|
||||
|
||||
Reference in New Issue
Block a user