diff --git a/src/views/canteen/canteenDailyMenu/form.vue b/src/views/canteen/canteenDailyMenu/form.vue index 433ca34..43787f4 100644 --- a/src/views/canteen/canteenDailyMenu/form.vue +++ b/src/views/canteen/canteenDailyMenu/form.vue @@ -32,8 +32,20 @@

预览图

-
-
+
+
+ + +
{{ item.name }} @@ -142,13 +154,14 @@ const dataFormRef = ref() const visible = ref(false) const queryRef = ref() const selectObjs = ref([]) as any // 表格多选的数据 -const selectedList = ref([]) +const selectedFood = ref([]) const loading = ref(false) const selectDialogVisible = ref(false) // 选择菜品对话框开关 const { spu_status } = useDict("spu_status") const categoryOptions = ref([]) // 商品分类选项 const imageBaseUrl = import.meta.env.VITE_IMAGE_BASE_PATH const dataRules = ref({}) // 定义校验规则 +const hoverIndex = ref(-1) // 预览图片hover的索引 // 提交表单数据 const form = reactive({ @@ -159,7 +172,7 @@ const form = reactive({ }) // 选择的菜品的id数组 const spuIds = computed(() => { - return selectedList.value?.map((item: any) => item.id) + return selectedFood.value?.map((item: any) => item.id) }) const state: BasicTableProps = reactive({ @@ -191,7 +204,7 @@ const openDialog = (id: string, time?: string, hourType?: number, merchantId?: n // 重置表单数据 dataFormRef.value?.resetFields() selectObjs.value = [] - selectedList.value = [] + selectedFood.value = [] state.dataList = [] // 获取canteenDailyMenu信息 @@ -235,15 +248,20 @@ const handleClickSelect = async () => { } } +// 移除预览 +const removeSelectedItem = (id: string) => { + selectedFood.value = selectedFood.value.filter((item: any) => item.id !== id) +} + // 选择菜品点击确认 const handleSelectDialogConfirm = () => { selectDialogVisible.value = false - selectedList.value = selectObjs.value + selectedFood.value = selectObjs.value } // 提交 const onSubmit = async () => { - if (selectedList.value.length <= 0) { + if (selectedFood.value.length <= 0) { useMessage().warning("请选择菜品") return } diff --git a/src/views/canteen/canteenDailyMenu/index.vue b/src/views/canteen/canteenDailyMenu/index.vue index 73abfa2..4572eb5 100644 --- a/src/views/canteen/canteenDailyMenu/index.vue +++ b/src/views/canteen/canteenDailyMenu/index.vue @@ -254,6 +254,7 @@ onMounted(async () => { margin-left: 20px; &_item { + position: relative; display: flex; flex-direction: column; justify-content: space-between;