From a83b7e6d04a490e02f7baafa6e309b2cbbac4d76 Mon Sep 17 00:00:00 2001 From: yangyin <1850366751@qq.com> Date: 星期四, 05 九月 2024 17:10:51 +0800 Subject: [PATCH] 联调查看页面 --- src/views/project/yw/dataManage/knowledge/Knowledge.vue | 114 ++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 89 insertions(+), 25 deletions(-) diff --git a/src/views/project/yw/dataManage/knowledge/Knowledge.vue b/src/views/project/yw/dataManage/knowledge/Knowledge.vue index 4eeb723..f21ddbf 100644 --- a/src/views/project/yw/dataManage/knowledge/Knowledge.vue +++ b/src/views/project/yw/dataManage/knowledge/Knowledge.vue @@ -12,29 +12,31 @@ ></el-input> <el-button icon="ele-Plus" @click="createKnowledgeBase()" type="primary"> 鍒涘缓鐭ヨ瘑搴� </el-button> </div> - <div class="flex flex-wrap gap-3 overflow-x-auto set_item_jel"> - <img :src="knowledgeLeft" class="set_item_img" /> - <div class="set_item_content"> - <div class="flex items-center"> - <div class="mr-[10px] text-[14px] font-[500] h-[22px]">鐭ヨ瘑搴撳悕绉�</div> - <span class="set_desc_text"> - <span class="set_desc_icon ywifont ywicon-wendang"> </span> - 1涓煡璇� - </span> - <span class="set_desc_text"> - <span class="set_desc_icon ywifont ywicon-wendang"> </span> - {{ state.currentKnowledgeBaseTime }}鏇存柊 - </span> + <div class="flex flex-wrap gap-[12px]"> + <div class="flex flex-wrap gap-3 overflow-x-auto set_item_jel" v-for="item in state.knowledgeBaseList" :key="item.id"> + <img :src="knowledgeLeft" class="set_item_img" /> + <div class="set_item_content"> + <div class="flex items-center"> + <div class="mr-[10px] text-[14px] font-[500] h-[22px]">{{ item.title }}</div> + <span class="set_desc_text"> + <span class="set_desc_icon ywifont ywicon-wendang"> </span> + 1涓煡璇� + </span> + <span class="set_desc_text"> + <span class="set_desc_icon ywifont ywicon-wendang"> </span> + {{ item.create_time }}鏇存柊 + </span> + </div> </div> - </div> - <div class="set_btn_group"> - <el-button link class="text-[12px] text-[#686682]">鏌ョ湅 </el-button> - <el-divider direction="vertical" /> - <el-button link class="text-[12px] text-[#686682]">鍛戒腑娴嬭瘯 </el-button> - <el-divider direction="vertical" /> - <el-button link class="text-[12px] text-[#686682]">缂栬緫 </el-button> - <el-divider direction="vertical" /> - <el-button link class="text-[12px] text-[#686682]">鍒犻櫎 </el-button> + <div class="set_btn_group"> + <el-button link class="text-[12px] text-[#686682]" @click="viewKnowledgeBase(item)">鏌ョ湅 </el-button> + <el-divider direction="vertical" /> + <!-- <el-button link class="text-[12px] text-[#686682]">鍛戒腑娴嬭瘯 </el-button> --> + <!-- <el-divider direction="vertical" /> --> + <el-button link class="text-[12px] text-[#686682]" @click="editKnowledgeBase(item)">缂栬緫 </el-button> + <el-divider direction="vertical" /> + <el-button link class="text-[12px]" @click="deleteKnowledgeBase(item)" style="color: #f00">鍒犻櫎 </el-button> + </div> </div> </div> </div> @@ -43,29 +45,91 @@ <script setup lang="ts"> import { Search } from '@element-plus/icons-vue'; -import { reactive } from 'vue'; +import { ElMessage, ElMessageBox } from 'element-plus'; +import { onMounted, reactive } from 'vue'; import { useRouter } from 'vue-router'; +import { delete_docvector_name, get_docvector_list } from '/@/api/knowledge/docvector'; +import mittBus from '/@/utils/mitt'; import knowledgeLeft from '/static/images/knowledge/data_type_1.png'; const router = useRouter(); const state = reactive({ knowledgeBaseForm: { Name: '', }, - currentKnowledgeBaseTime: '2024-08-29 14:22:14', + knowledgeBaseList: [], }); +//#region ====================== 鑾峰彇鐭ヨ瘑搴搒heet鍒楄〃 ====================== + //鍒涘缓鐭ヨ瘑搴� const createKnowledgeBase = () => { router.push({ name: 'AddKnowledge', }); }; +//鑾峰彇鐭ヨ瘑搴撳垪琛� +const docvectorList = async () => { + const res = await get_docvector_list(); + if (res.json_ok) { + res.values.forEach((item) => { + item.create_time = new Date(item.create_time).toLocaleString(); + }); + state.knowledgeBaseList = res.values; + } else { + return ElMessage.error('鑾峰彇鍒楄〃绱㈠紩澶辫触' + (res?.json_msg ? `锛�${JSON.stringify(res.json_msg)}` : '')); + } +}; +const deleteKnowledgeBase = async (row) => { + ElMessageBox.confirm(`纭畾鍒犻櫎褰撳墠鐨勭煡璇嗗簱锛氥��${row.title}銆�?`, '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning', + }).then(async () => { + const res = await delete_docvector_name({ + knowlg_id: row.id, + }); + if (res.json_ok) { + ElMessage.success('鍒犻櫎鐭ヨ瘑搴撴垚鍔�'); + const index = state.knowledgeBaseList.findIndex((d) => d.id === row.id); + state.knowledgeBaseList.splice(index, 1); + } + }); +}; +//#endregion +//#region ====================== 瀵圭煡璇嗗簱杩涜缂栬緫鏌ョ湅鎿嶄綔 ====================== +const editKnowledgeBase = (row) => { + router.push({ + name: 'EditKnowledge', + query: { + knowledge_id: row.id, + knowledge_title: row.title, + knowledge_desc: row.desc, + knowledge_prompt: row.prompt, + }, + }); +}; +const viewKnowledgeBase = (row) => { + router.push({ + name: 'ViewKnowledge', + query: { + knowledge_id: row.id, + knowledge_title: row.title, + }, + }); +}; +//#endregion +onMounted(() => { + docvectorList(); + mittBus.on('addKnowledgeBaseObj', (obj) => { + state.knowledgeBaseList.push(obj); + }); +}); </script> <style scoped lang="scss"> .set_item_jel { align-items: center; background: #fff; border-radius: 16px; - max-width: 700px; + max-width: calc(50% - 6px); padding: 16px 20px; width: 100%; box-sizing: border-box; -- Gitblit v1.9.3