diff --git a/src/views/digitalHuman/modelConfig/modelModule/component/editModule.vue b/src/views/digitalHuman/modelConfig/modelModule/component/editModule.vue
index 894f895..9c96a86 100644
--- a/src/views/digitalHuman/modelConfig/modelModule/component/editModule.vue
+++ b/src/views/digitalHuman/modelConfig/modelModule/component/editModule.vue
@@ -17,7 +17,7 @@
-
+
@@ -47,7 +47,7 @@
-
+
@@ -313,6 +313,28 @@ const state = reactive({
],
baseUrl: [{ required: true, message: '请输入模型服务地址', trigger: 'blur' }],
httpMethod: [{ required: true, message: '请选择请求方式', trigger: 'change' }],
+ apiKey: [
+ {
+ validator: (_rule: unknown, value: unknown, callback: (e?: Error) => void) => {
+ // 管理员不需要验证 apiKey
+ if (props.isSuperAdmin) {
+ callback();
+ return;
+ }
+ // 普通用户:如果是服务商模型(isPrivate = 1),apiKey 必填
+ if (state.ruleForm.isPrivate === 1) {
+ if (!value || String(value).trim() === '') {
+ callback(new Error('服务商模型必须输入 API 密钥'));
+ } else {
+ callback();
+ }
+ } else {
+ callback();
+ }
+ },
+ trigger: 'blur',
+ },
+ ],
maxConcurrency: [{ required: true, message: '请输入最大并发数', trigger: 'blur' }],
queueLimit: [{ required: true, message: '请输入排队队列上限', trigger: 'blur' }],
timeoutSeconds: [{ required: true, message: '请输入请求超时时间', trigger: 'blur' }],
@@ -751,3 +773,7 @@ defineExpose({
color: #606266;
}
+
+
+
+