diff --git a/src/views/property-marketing/assignment-management/components/draw-popup.vue b/src/views/property-marketing/assignment-management/components/draw-popup.vue
index 8f20763..e55ae2d 100644
--- a/src/views/property-marketing/assignment-management/components/draw-popup.vue
+++ b/src/views/property-marketing/assignment-management/components/draw-popup.vue
@@ -73,14 +73,36 @@
- {{ item }}
+ {{ item.name || item.title || item }}
+
-
+
![]()
+
@@ -199,7 +221,7 @@
import { getWorksPage } from '@/api/all/generationWorkshop.ts';
import { ref, reactive, watch, nextTick } from 'vue';
import aiIcon from '@/assets/img/media-account/icon-AI.png';
-import { SwapOutlined, DeleteOutlined } from '@ant-design/icons-vue';
+import { SwapOutlined, DeleteOutlined, CloseOutlined } from '@ant-design/icons-vue';
import { Button, DatePicker, TimePicker } from 'ant-design-vue';
import { TABS_LIST, ORIGIN_LIST, RawMaterialType } from '@/views/material-center/components/raw-material/constants';
import dayjs from 'dayjs';
@@ -368,6 +390,30 @@ const handleDelte = () => {
images: [],
};
};
+
+// 删除文本项
+const handleDeleteText = (id) => {
+ selectedMaterials.value.texts = selectedMaterials.value.texts.filter((item) => item !== id);
+ selectedMaterials.value.keys = selectedMaterials.value.keys.filter((key) => key !== id);
+
+ // 更新hasChoseMaterial状态
+ updateHasChoseMaterial();
+};
+
+// 删除图片项
+const handleDeleteImage = (id) => {
+ selectedMaterials.value.images = selectedMaterials.value.images.filter((item) => item.id !== id);
+ selectedMaterials.value.keys = selectedMaterials.value.keys.filter((key) => key !== id);
+
+ // 更新hasChoseMaterial状态
+ updateHasChoseMaterial();
+};
+
+// 更新hasChoseMaterial状态
+const updateHasChoseMaterial = () => {
+ hasChoseMaterial.value = selectedMaterials.value.texts.length > 0 || selectedMaterials.value.images.length > 0;
+};
+
// 处理原料库选择确认
const handleMaterialConfirm = (result) => {
console.log('handleMaterialConfirm', result);
@@ -378,6 +424,28 @@ const handleMaterialConfirm = (result) => {
images: result.choseImgArray,
texts: result.selectedTexts || [],
};
+
+ // 为每个文本项添加showDelete属性(如果它们是对象)
+ if (selectedMaterials.value.texts.length > 0 && typeof selectedMaterials.value.texts[0] === 'object') {
+ selectedMaterials.value.texts = selectedMaterials.value.texts.map((text) => ({
+ ...text,
+ showDelete: false,
+ }));
+ } else {
+ // 如果是字符串,则包装成对象
+ selectedMaterials.value.texts = selectedMaterials.value.texts.map((text, index) => ({
+ id: `text_${index}`,
+ name: text,
+ showDelete: false,
+ }));
+ }
+
+ // 为每个图片项添加showDelete属性
+ selectedMaterials.value.images = selectedMaterials.value.images.map((image) => ({
+ ...image,
+ showDelete: false,
+ }));
+
hasChoseMaterial.value = result.selectedKeys.length > 0;
};