feat: migrate app routes and business modules

This commit is contained in:
2026-08-12 18:22:59 +08:00
parent 555aa00043
commit cc706378c2
247 changed files with 28623 additions and 14988 deletions
+39
View File
@@ -0,0 +1,39 @@
import { hasRemoteConfig, resolveRuntimeMode } from '@/utils/runtime-config.js'
import { normalizeFeedbackPayload } from './feedback-contract.js'
import {
createRequestError,
requestStrict
} from './request-client.js'
export const feedbackApi = {
async submitFeedback(payload, requestOptions = {}) {
const feedback = normalizeFeedbackPayload(payload)
if (resolveRuntimeMode() !== 'remote') {
throw createRequestError('当前为本地预览模式,反馈未提交服务器', 'WRITE_UNAVAILABLE')
}
return requestStrict({
url: '/genealogy/app/feedback',
method: 'POST',
data: feedback
}, {
requireData: false,
requestController: requestOptions.requestController ?? null
})
},
async getFeedback(requestOptions = {}) {
if (!hasRemoteConfig()) {
throw createRequestError('我的反馈读取需要真实服务,当前本地预览不会伪造结果', 'REMOTE_READ_REQUIRED')
}
const feedbackHistory = await requestStrict({
url: '/genealogy/app/feedback',
method: 'GET'
}, {
requestController: requestOptions.requestController ?? null
})
if (!Array.isArray(feedbackHistory)) {
throw createRequestError('我的反馈响应不是列表', 'LIST_RESPONSE_INVALID')
}
return feedbackHistory
}
}