提交 517ad07b authored 作者: 刘旭's avatar 刘旭

优化

上级 57765f67
<template> <template>
<el-dialog v-model="showDialog" title="选择产品" width="30%" :before-close="handleClose"> <el-dialog v-model="showDialog" title="选择产品" width="30%" :before-close="handleClose">
<div class="select"> <div class="select">
<el-select v-if="status" v-model="productBeforeCode" @change="beforeChange"> <el-select v-if="status" v-model="beforeCode" @change="beforeChange">
<el-option v-for="item in options" :key="item.id" :label="item.title" :value="item.code" /> <el-option v-for="item in options" :key="item.id" :label="item.title" :value="item.code" />
</el-select> </el-select>
<el-select v-else v-model="productAfterCode" @change="afterChange"> <el-select v-else v-model="afterCode" @change="afterChange">
<el-option v-for="item in options" :key="item.id" :label="item.title" :value="item.code" /> <el-option v-for="item in options" :key="item.id" :label="item.title" :value="item.code" />
</el-select> </el-select>
...@@ -21,16 +21,6 @@ import { ref } from 'vue' ...@@ -21,16 +21,6 @@ import { ref } from 'vue'
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
const props = defineProps({ const props = defineProps({
// 第二个选择产品
productAfterCode: {
type: String,
default: ''
},
// 第一个选择产品
productBeforeCode: {
type: String,
default: ''
},
// select 数据源 // select 数据源
options: { options: {
type: Object, type: Object,
...@@ -40,8 +30,8 @@ const props = defineProps({ ...@@ -40,8 +30,8 @@ const props = defineProps({
const showDialog = ref(false) const showDialog = ref(false)
const status = ref(true) // 判断是哪个选择产品 const status = ref(true) // 判断是哪个选择产品
const type = ref() const type = ref()
const beforeCode = ref() const beforeCode = ref() // 第一个选择产品
const afterCode = ref() const afterCode = ref() // 第二个选择产品
const emits = defineEmits(['codeChange', 'initCode']) const emits = defineEmits(['codeChange', 'initCode'])
...@@ -75,7 +65,9 @@ const handleClose = () => { ...@@ -75,7 +65,9 @@ const handleClose = () => {
defineExpose({ defineExpose({
showDialog, showDialog,
status, status,
type type,
afterCode,
beforeCode
}) })
</script> </script>
......
...@@ -83,8 +83,7 @@ ...@@ -83,8 +83,7 @@
</el-row> </el-row>
</el-dialog> </el-dialog>
<add-product ref="addProductRef" :options="options" :productAfterCode="productAfterCode" <add-product ref="addProductRef" :options="options" @codeChange="codeChange" />
:productBeforeCode="productBeforeCode" @codeChange="codeChange" />
<enable-vue ref="enableRef" @cornData="cornData" /> <enable-vue ref="enableRef" @cornData="cornData" />
</template> </template>
...@@ -199,13 +198,6 @@ const cornData = (data: string) => { ...@@ -199,13 +198,6 @@ const cornData = (data: string) => {
// 获取保存数据 // 获取保存数据
const codeData = (code: string, data: any) => { const codeData = (code: string, data: any) => {
console.log(
code,
data,
productBeforeCode.value,
productAfterCode.value,
'data'
)
if (code === productBeforeCode.value) productBeforeData.value = data if (code === productBeforeCode.value) productBeforeData.value = data
else productAfterData.value = data else productAfterData.value = data
} }
...@@ -299,6 +291,12 @@ const onConfirm = () => { ...@@ -299,6 +291,12 @@ const onConfirm = () => {
setTimeout(() => { setTimeout(() => {
saveCommonParam(productBeforeCode.value, productBeforeData.value) saveCommonParam(productBeforeCode.value, productBeforeData.value)
saveCommonParam(productAfterCode.value, productAfterData.value) saveCommonParam(productAfterCode.value, productAfterData.value)
setTimeout(() => {
if (flag && title.value === '编辑产品') {
handleClose()
ElMessage({ type: 'success', message: '保存成功' })
}
}, 1000);
if (title.value === '选择产品') createPlatformProduct(data).then((res: any) => { if (title.value === '选择产品') createPlatformProduct(data).then((res: any) => {
if (res.code === 200) { if (res.code === 200) {
init() init()
...@@ -309,12 +307,13 @@ const onConfirm = () => { ...@@ -309,12 +307,13 @@ const onConfirm = () => {
}, 1000) }, 1000)
} }
let flag = true
const saveCommonParam = (code: string, data: any) => { const saveCommonParam = (code: string, data: any) => {
postCommonParam({ code, data }).then((res: any) => { postCommonParam({ code, data }).then((res: any) => {
if (res.code === 200 && code === productAfterCode.value && title.value === '编辑产品') { if (res.code === 200 && title.value === '编辑产品') {
handleClose() // handleClose()
ElMessage({ type: 'success', message: '保存成功' }) // ElMessage({ type: 'success', message: '保存成功' })
} } else flag = false
}) })
} }
...@@ -346,6 +345,8 @@ const handleClose = () => { ...@@ -346,6 +345,8 @@ const handleClose = () => {
productAfterData.value = '' productAfterData.value = ''
previewProductAfterRef.value.previewVisible = false previewProductAfterRef.value.previewVisible = false
previewProductBeforeRef.value.previewVisible = false previewProductBeforeRef.value.previewVisible = false
addProductRef.value.afterCode = ''
addProductRef.value.beforeCode = ''
showAddDialog.value = false showAddDialog.value = false
} }
</script> </script>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论