liulingling.177216
2025-01-21 b100c4f560f62a40e14f45db6861f2e96cc2e16b
zhitan-vue/src/views/policy/knowledgebase/components/EditModal.vue
@@ -1,11 +1,11 @@
<template>
    <el-dialog v-model="visible" :title="title" width="600" @close="handleClose">
        <el-form :model="form" ref="queryRef" :rules="formRules" label-width="120px" v-loading="loading">
        <el-form :model="form" ref="queryRef" :rules="formRules" label-width="100px" v-loading="loading">
            <el-form-item label="标题" prop="title">
                <el-input v-model="form.title" placeholder="请输入标题" />
            </el-form-item>
            <el-form-item label="能源类型" prop="type">
                <el-select v-model="form.type" placeholder="请选择">
                <el-select v-model="form.type" placeholder="请选择" style="width: 100%;">
                    <el-option v-for="(item, index) in props.types" :key="index" :label="item.label"
                        :value="item.value">
                    </el-option>
@@ -13,6 +13,12 @@
            </el-form-item>
            <el-form-item label="内容" prop="content">
                <el-input v-model="form.content" placeholder="请输入内容" />
            </el-form-item>
            <el-form-item label="附件" prop="url">
                <FileUpload
                :modelValue="fileList"
                 @update:modelValue="val => fileList = val"
                ></FileUpload>
            </el-form-item>
        </el-form>
        <div slot="footer" class="text-right">
@@ -34,12 +40,14 @@
let form = ref({
    title: '',
    content: '',
    type: 0,
    type: null,
    url:[]
})
let fileList=ref([])
let emit = defineEmits(['getList'])
const formRules = {
    title: [{ required: true, trigger: "blur", message: "请输入标题" }],
    type: [{ required: true, trigger: "change", message: "请选择能源类型" }],
    content: [{ required: true, trigger: "blur", message: "请输入内容" }],
}
@@ -47,6 +55,10 @@
    proxy.$refs.queryRef.validate(valid => {
        if (valid) {
            loading.value = true;
            form.value.url=[]
             for(let i=0;i<fileList.value.length;i++){
                form.value.url.push(fileList.value[i].url)
             }
            let obj = form.value.id ? knowledgeBaseEdit(form.value) : knowledgeBaseAdd(form.value)
            obj.then((res) => {
                if (res.code == 200) {
@@ -70,9 +82,26 @@
function handleOpen(row) {
    debugger
    fileList.value=[]
    if (row && row.id) {
        title.value = "编辑知识库"
        form.value = JSON.parse(JSON.stringify(row))
        let fileItem={
            name:'',
            url:''
        }
        let files=[]
        if(row.url && row.url.length){
            for(let i=0;i<row.url.length;i++){
                fileItem.url=row.url[i]
                fileItem.name=row.url[i]
                console.log(fileItem)
                files.push(JSON.parse(JSON.stringify(fileItem)) )
            }
            fileList.value=files
            console.log(fileList.value)
        }
    } else {
        title.value = "添加知识库"
    }
@@ -86,7 +115,7 @@
    form.value = {
        title: '',
        content: '',
        type: 0,
        type: null,
        url:[]
    }
}