原料库和成品库

This commit is contained in:
lq
2025-09-23 14:28:20 +08:00
parent ff7e20f8cf
commit ab31959733
3 changed files with 82 additions and 52 deletions

View File

@ -62,14 +62,18 @@
</div>
<!-- 素材添加区域 -->
<div class="form-section material-section">
<div v-if="hasChoseMaterial" class="flex items-center"></div>
<div class="flex items-center"></div>
<Button class="add-material-btn" @click="handleAddMaterial">
<template #icon>
<icon-plus size="16" class="mr-8px" />
</template>
从原料库添加
</Button>
<div v-if="hasChoseMaterial" class="flex flex-col items-center">
</div>
<div v-else class="flex flex-col items-center">
<Button class="add-material-btn" @click="handleAddMaterial">
<template #icon>
<icon-plus size="16" class="mr-8px" />
</template>
从原料库添加
</Button>
<p class="material-hint">AI会参考添加的文本图片视频等素材完成符合需求的创作</p>
</div>
</div>
@ -134,7 +138,7 @@
<!-- 原料库子组件使用:visible和@update:visible替代v-model -->
<RawMaterialDrawer
:visible="showDrawer2"
@update:visible="val => showDrawer2 = val"
@update:visible="(val) => (showDrawer2 = val)"
:query="materialQuery"
@after-visible-change="handleMaterialDrawerVisibleChange"
@confirm="handleMaterialConfirm"
@ -144,7 +148,7 @@
<!-- 成品库子组件使用:visible和@update:visible替代v-model -->
<FinishedProductDrawer
:visible="showDrawer3"
@update:visible="val => showDrawer3 = val"
@update:visible="(val) => (showDrawer3 = val)"
:query="productQuery"
@after-visible-change="handleProductDrawerVisibleChange"
@confirm="handleProductConfirm"
@ -229,14 +233,15 @@ const selectedMaterials = ref({
keys: [],
data: [],
text: '',
images: []
images: [],
texts: []
});
const selectedProducts = ref({
keys: [],
data: [],
text: '',
images: []
images: [],
});
// 处理AI/成品库选择切换
@ -265,11 +270,13 @@ const handleAddContent = () => {
// 处理原料库选择确认
const handleMaterialConfirm = (result) => {
console.log('handleMaterialConfirm', result);
selectedMaterials.value = {
keys: result.selectedKeys,
data: result.selectedData,
text: result.choseText,
images: result.choseImgArray
images: result.choseImgArray,
texts: result.selectedTexts || []
};
hasChoseMaterial.value = result.selectedKeys.length > 0;
};
@ -285,7 +292,7 @@ const handleProductConfirm = (result) => {
keys: result.selectedKeys,
data: result.selectedData,
text: result.choseText,
images: result.choseImgArray
images: result.choseImgArray,
};
};