From 0e428ed7ab730e3248f674114fad96470df69311 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期三, 26 三月 2025 16:44:52 +0800
Subject: [PATCH] 完善页面

---
 src/components/KnowledgeBase.vue |  132 ++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 121 insertions(+), 11 deletions(-)

diff --git a/src/components/KnowledgeBase.vue b/src/components/KnowledgeBase.vue
index 531a9b0..f45eb66 100644
--- a/src/components/KnowledgeBase.vue
+++ b/src/components/KnowledgeBase.vue
@@ -9,13 +9,11 @@
             :value="item.value">
         </el-option>
       </el-select>
-      <div class="normal-text" style="margin-top: 15px;margin-bottom: 5px">閫夋嫨鐭ヨ瘑鏂囦欢(鍗曚釜鏂囦欢涓嶈秴杩�200M)</div>
-      <el-alert
-          description="HTML,MD,JSON,CSV,PDF,PNG,JPG,JPEG,BMP,EML,MSG,RST,RIF,TXT,XML,DOCX,EPUB,ODT,PPT,PPTX,TSV,HTM"
-          type="info"
-          :closable="false"
-          show-icon>
-      </el-alert>
+      <div class="normal-text" style="margin-top: 15px;margin-bottom: 5px;display: flex;align-items: center">閫夋嫨鐭ヨ瘑鏂囦欢
+        <el-tooltip style="margin-left: 10px" content="鍗曚釜鏂囦欢涓嶈秴杩�200M锛屾敮鎸佷互涓嬫枃浠舵牸寮�" placement="right" effect="light">
+        <svg t="1742971974478" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2969" width="16" height="16"><path d="M464 784.352c0 26.51 21.49 48 48 48s48-21.49 48-48-21.49-48-48-48-48 21.49-48 48z" p-id="2970" fill="#515151"></path><path d="M512 960C264.96 960 64 759.04 64 512S264.96 64 512 64s448 200.96 448 448-200.96 448-448 448z m0-831.713c-211.584 0-383.713 172.129-383.713 383.713 0 211.552 172.129 383.713 383.713 383.713 211.552 0 383.713-172.16 383.713-383.713 0-211.584-172.161-383.713-383.713-383.713z" p-id="2971" fill="#515151"></path><path d="M512 673.695c-17.665 0-32-14.336-32-31.999v-54.112c0-52.353 39.999-92.352 75.327-127.648 25.887-25.92 52.672-52.672 52.672-74.016 0-53.344-43.072-96.736-95.999-96.736-53.823 0-96 41.536-96 94.56 0 17.664-14.335 31.999-32 31.999s-32-14.336-32-32c0-87.423 71.774-158.559 160-158.559S672 297.28 672 385.92c0 47.904-36.32 84.191-71.424 119.296-27.84 27.776-56.575 56.512-56.575 82.335v54.112c0 17.665-14.336 32.032-32.001 32.032z" p-id="2972" fill="#515151"></path></svg>
+      </el-tooltip></div>
+      <div class="file-manage-tip">HTML,MD,JSON,CSV,PDF,PNG,JPG,JPEG,BMP,EML,MSG,RST,RIF,TXT,XML,DOCX,EPUB,ODT,PPT,PPTX,TSV,HTM</div>
       <el-upload
           class="upload"
           drag
@@ -44,8 +42,64 @@
           </el-form>
         </div>
       </div>
-      <div style="margin-top: 15px">
-        <el-button type="primary" size="small">娣诲姞鏂囦欢鍒扮煡璇嗗簱</el-button>
+      <div style="margin-top: 15px; margin-bottom: 25px">
+        <el-button type="primary" :disabled="!fileList || fileList.length < 1" size="mini">娣诲姞鏂囦欢鍒扮煡璇嗗簱</el-button>
+      </div>
+
+      <div class="file-manage">
+        <div class="normal-text">
+          <span>鐭ヨ瘑搴�</span>
+          <span class="highlight">{{kbBaseName}}</span>
+          <span>涓凡鏈夋枃浠讹細</span>
+        </div>
+        <div class="file-manage-tip">鐭ヨ瘑搴撲腑鍖呭惈婧愭枃浠朵笌鍚戦噺搴擄紝璇蜂粠涓嬭〃涓�夋嫨鏂囦欢鍚庢搷浣�</div>
+        <div>
+          <el-table
+              ref="multipleTable"
+              :data="tableData"
+              tooltip-effect="dark"
+              style="width: 100%"
+              @selection-change="handleSelectionChange">
+            <el-table-column
+                type="selection"
+                width="55">
+            </el-table-column>
+            <el-table-column
+                prop="loader"
+                label="鍔犺浇鍣�"
+                width="120">
+            </el-table-column>
+            <el-table-column
+                prop="tokenizer"
+                label="鍒嗚瘝鍣�"
+                width="120">
+            </el-table-column>
+            <el-table-column
+                prop="docNum"
+                label="鏂囨。鏁伴噺">
+            </el-table-column>
+            <el-table-column
+                prop="source"
+                label="婧愭枃浠�">
+              <template><i class="el-icon-check"/></template>
+            </el-table-column>
+            <el-table-column
+                prop="vectorLibrary"
+                label="鍚戦噺搴�">
+              <template><i class="el-icon-check"/></template>
+            </el-table-column>
+          </el-table>
+        </div>
+        <div class="table-op-list">
+          <el-button size="mini" :type="buttonUseful" :disabled="buttonDisable">涓嬭浇閫変腑鏂囨。</el-button>
+          <el-button size="mini" :type="buttonUseful" :disabled="buttonDisable">娣诲姞鑷冲悜閲忓簱</el-button>
+          <el-button size="mini" :type="buttonUseful" :disabled="buttonDisable">浠庡悜閲忓簱鍒犻櫎</el-button>
+          <el-button size="mini" :type="buttonUseful" :disabled="buttonDisable">浠庣煡璇嗗簱鍒犻櫎</el-button>
+        </div>
+      </div>
+      <div class="kb-manage">
+        <el-button size="mini" type="primary" style="position: absolute;left: 0">渚濇嵁婧愭枃浠堕噸寤哄悜閲忓簱</el-button>
+        <el-button size="mini" type="danger" style="position: absolute;right: 0">鍒犻櫎鐭ヨ瘑搴�</el-button>
       </div>
     </div>
   </div>
@@ -58,7 +112,7 @@
     return {
       fileList: [],
       form: {
-
+        user: 255
       },
       options: [{
         value: '閫夐」1',
@@ -76,10 +130,31 @@
         value: '閫夐」5',
         label: '鍖椾含鐑ら腑'
       }],
-      value: ''
+      value: '',
+      kbBaseName: 'test',  // 鐭ヨ瘑搴撳悕绉�
+      tableData: [{
+        loader: 'xxx',
+        tokenizer: 'xxx',
+        docNum: 299,
+        source: true,
+        vectorLibrary: true
+      }],
+      multipleSelection: []
     }
   },
+  computed: {
+    buttonUseful() {
+      return this.multipleSelection.length > 0 ? "primary" : null;
+    },
+    buttonDisable() {
+      return this.multipleSelection.length === 0;
+    },
+  },
   methods: {
+    handleSelectionChange(val) {
+      this.multipleSelection = val;
+      console.log(this.multipleSelection)
+    },
     handleUpload(file) {
       if (this.fileList.indexOf(file) === -1) {
         this.fileList.push(file)
@@ -123,6 +198,41 @@
 .form-inline {
   padding-left: 10px;
 }
+
+.file-manage {
+  padding-top: 15px;
+  margin-bottom: 20px;
+  border-top: 1px solid lightgray;
+}
+.highlight {
+  margin: 0px 4px;
+  background-color: #eeeeee;
+  color: green;
+}
+.file-manage-tip {
+  margin-top: 10px;
+  width: 100%;
+  padding: 10px;
+  background-color: #E8F2FC;
+  color: #4097ea;
+  font-size: small;
+  border-radius: 2px;
+  box-sizing: border-box;
+  word-wrap: break-word;  /* 鍏佽闀垮崟璇嶆垨URL鎹㈣ */
+  overflow-wrap: break-word; /* 鏇寸幇浠g殑灞炴�э紝鏁堟灉绫讳技 */
+  white-space: normal; /* 榛樿鍊硷紝鍏佽鎹㈣ */
+}
+.table-op-list {
+  margin-top: 10px;
+  display: flex;
+  justify-content: flex-end;
+}
+.kb-manage {
+  width: 100%;
+  border-top: 1px solid lightgray;
+  padding-top: 10px;
+  position: relative;
+}
 .el-select {
   width: 100%;
 }

--
Gitblit v1.8.0