diff --git a/src/views/digitalHuman/creation/index.vue b/src/views/digitalHuman/creation/index.vue index d86e9e7..a455d3e 100644 --- a/src/views/digitalHuman/creation/index.vue +++ b/src/views/digitalHuman/creation/index.vue @@ -238,6 +238,7 @@ v-if="field.type === 'input'" v-model="creationFormValues[`${node.id}_${field.label}`]" :placeholder="field.required ? '必填' : '选填'" + :disabled="isFromWorkspace" clearable /> @@ -260,6 +263,7 @@ v-model="creationFormValues[`${node.id}_${field.label}`]" active-text="开启" inactive-text="关闭" + :disabled="isFromWorkspace" /> @@ -284,6 +288,7 @@ :type="node.config.fieldMetadata?.[key]?.type === 'textarea' || String(value).length > 50 ? 'textarea' : 'text'" :rows="4" :placeholder="node.config.fieldMetadata?.[key]?.required ? '必填' : '选填'" + :disabled="isFromWorkspace" clearable :show-word-limit="node.config.fieldMetadata?.[key]?.type === 'textarea'" :maxlength="500" @@ -295,12 +300,14 @@ :controls="true" :precision="2" :step="0.1" + :disabled="isFromWorkspace" /> @@ -638,6 +645,7 @@ const selectedFiles = ref([]); const selectedCreationSkill = ref(null); const showCreationSkillSelector = ref(false); const currentSessionId = ref(null); // 当前会话的 sessionId(从工作空间进入时使用) +const isFromWorkspace = ref(false); // 是否从工作空间进入创作模式 const isCreating = ref(false); // 预览相关状态 const previewDialogVisible = ref(false); @@ -937,6 +945,7 @@ const createNewWorkflow = () => { isCreationMode.value = false; currentWorkflowForCreation.value = null; currentSessionId.value = null; // 清空会话 ID + isFromWorkspace.value = false; // 清空工作空间标识 // 清空当前编辑状态 currentEditingWorkflowId.value = null; @@ -1089,6 +1098,7 @@ const editWorkflow = async (workflow: WorkflowItem) => { isCreationMode.value = false; currentWorkflowForCreation.value = null; currentSessionId.value = null; // 清空会话 ID + isFromWorkspace.value = false; // 清空工作空间标识 // 等待 DOM 更新后再加载工作流 await nextTick(); @@ -1110,6 +1120,7 @@ const backToCanvas = async () => { isCreationMode.value = false; currentWorkflowForCreation.value = null; currentSessionId.value = null; // 清空会话 ID + isFromWorkspace.value = false; // 清空工作空间标识 // 等待 DOM 更新后重新渲染画布 await nextTick(); @@ -1298,6 +1309,8 @@ const handleTreeNodeClick = async (data: TreeNode) => { if (res.data) { // 设置当前会话的 sessionId(从工作空间进入) currentSessionId.value = data.sessionId || null; + // 标记为从工作空间进入 + isFromWorkspace.value = true; // 切换到创作模式 isCreationMode.value = true;