align(数字人版本): 分页(前端20/页)、上传进度(正在上传N%)、状态三态(草稿/已发布/已废弃)、文件大小固定两位MB、说明50字截断、RELEASED恒显下载点击取链接、确认文案/按钮名/仅zip校验/弹窗描述对齐(对齐 admin.js loadDigitalHumanVersions/downloadDigitalHumanVersion/上传段)

This commit is contained in:
2026-09-05 23:28:41 +08:00
parent 207f48f7d8
commit 553aca34f7
13 changed files with 251 additions and 58 deletions
@@ -13,13 +13,14 @@ export interface DigitalHumanUploadErrors {
file?: string
}
/** 校验上传表单(版本号必填非空、文件已选且非空)。 */
/** 校验上传表单(版本号必填非空、文件已选且非空、仅支持 zip——对齐 admin.js:6520-6523)。 */
export function validateDigitalHumanUpload(form: DigitalHumanUploadForm): { valid: boolean; errors: DigitalHumanUploadErrors } {
const errors: DigitalHumanUploadErrors = {}
if (!(form.version || '').trim()) errors.version = '版本号不能为空'
const file = form.file
if (!file) errors.file = '请选择程序压缩包'
else if (typeof file.size === 'number' && file.size <= 0) errors.file = '压缩包为空或无效'
else if (file.name && !file.name.toLowerCase().endsWith('.zip')) errors.file = '仅支持 .zip 格式'
return { valid: Object.keys(errors).length === 0, errors }
}