yinbangzhong
2024-09-12 ff0ae974a1c561eaf2915988dac63cd066af189f
src/views/dmx/knowledgeLib/index.vue
@@ -23,8 +23,9 @@
              :class="{ active: selectedTab === index }"
            >
              {{ tab.name }}
              <a-popover position="bl">
              <a-popover position="bl" >
                <icon-more
                 v-hasPermi="'/kb/delete'"
                  :style="{ position: 'absolute', top: '10px', right: '10px' }"
                />
                <template #content>
@@ -34,6 +35,7 @@
                  <span
                    style="cursor: pointer; color: #4977ba; font-size: 12px"
                    @click="deleteKnowledge(tab.id)"
                    v-hasPermi="'/kb/delete'"
                    ><icon-delete style="font-size: 14px" />删除</span
                  >
                </template>
@@ -88,6 +90,7 @@
                                  type="text"
                                  class="button"
                                  style="color: #2a2a2b"
                                  v-hasPermi="'/kb/data_status'"
                                  @click="enableDisable(1)"
                                >
                                  <template #icon>
@@ -101,6 +104,7 @@
                                  type="text"
                                  class="button"
                                  style="color: #2a2a2b"
                                  v-hasPermi="'/kb/data_status'"
                                  @click="enableDisable(0)"
                                >
                                  <template #icon>
@@ -114,6 +118,7 @@
                                  type="text"
                                  class="button"
                                  style="color: #2a2a2b"
                                  v-hasPermi="'/kb/data_analysis'"
                                  @click="addBlock(1)"
                                >
                                  <template #icon>
@@ -127,6 +132,7 @@
                                  type="text"
                                  class="button"
                                  style="color: #2a2a2b"
                                  v-hasPermi="'/kb/data_analysis'"
                                  @click="addBlock(2)"
                                >
                                  <template #icon>
@@ -140,6 +146,7 @@
                                <a-button
                                  type="text"
                                  class="button"
                                  v-hasPermi="'/kb/data_delete'"
                                  style="color: #2a2a2b"
                                  @click="addBlock(3)"
                                >
@@ -469,7 +476,7 @@
                        type="text"
                        :disabled="record.run == '1'"
                        @click="handleClick(record)"
                        v-hasPermi="'/kb/data_update'"
                        查
                        size="small"
                      >
                        <template #icon>
@@ -513,8 +520,8 @@
                        </template>
                      </a-button>
                    </a-tooltip>
                    <!-- <a-button
                    <!--
                    <a-button
                      type="text"
                      size="small"
                      :disabled="record.run == '1'"
@@ -599,12 +606,12 @@
        <!--        </div>-->
      </div>
    </div>
    <a-modal title=" " v-model:visible="visible" :footer="false" fullscreen>
      <!--      <docx  previewSrc="http://192.168.20.116:1080/v1/document/get/405c3efa4d8c11ef97560242ac120006"></docx>-->
      <docx v-if="documenttype == 'docx'" :previewSrc="previewSrc"></docx>
      <excel v-if="documenttype == 'excel'" :previewSrc="previewSrc"></excel>
      <txtPdf v-if="documenttype == 'txtPdf'" :previewSrc="previewSrc"></txtPdf>
    </a-modal>
    <!--    <a-modal title=" " v-model:visible="visible" :footer="false" fullscreen>-->
    <!--      &lt;!&ndash;      <docx  previewSrc="http://192.168.20.116:1080/v1/document/get/405c3efa4d8c11ef97560242ac120006"></docx>&ndash;&gt;-->
    <!--      <docx v-if="documenttype == 'docx'" :previewSrc="previewSrc"></docx>-->
    <!--      <excel v-if="documenttype == 'excel'" :previewSrc="previewSrc"></excel>-->
    <!--      <txtPdf v-if="documenttype == 'txtPdf'" :previewSrc="previewSrc"></txtPdf>-->
    <!--    </a-modal>-->
    <tool
      ref="toolForm"
      :kbtenantInfo="kbtenantInfo"
@@ -654,9 +661,9 @@
  import config from '@/views/dmx/knowledgeLib/config.vue';
  import test from '@/views/dmx/knowledgeLib/test.vue';
  import tool from '@/views/dmx/knowledgeLib/tool.vue';
  import docx from '@/views/dmx/knowledgeLib/components/docx.vue';
  import excel from '@/views/dmx/knowledgeLib/components/excel.vue';
  import txtPdf from '@/views/dmx/knowledgeLib/components/txtPdf.vue';
  // import docx from '@/views/dmx/knowledgeLib/components/docx.vue';
  // import excel from '@/views/dmx/knowledgeLib/components/excel.vue';
  // import txtPdf from '@/views/dmx/knowledgeLib/components/txtPdf.vue';
  import { Message, Modal } from '@arco-design/web-vue';
  import { documentHeight, parseTime } from '@/utils';
  import { deleteLlm } from '@/api/model';
@@ -870,34 +877,8 @@
        pagination.current = params.page;
        pagination.total = data.data.total;
        if (timer) {
          clearInterval(timer);
        }
        // 定时器查询文档
        timer = setInterval(async () => {
          let params = { ...basePagination, kb_id: kbobj.id };
          const data = await queryKbDocumentList(params);
          if (data.code == '0') {
            parser_ids = kbtenantInfo.parser_ids
              .split(',')
              .reduce((acc, pair) => {
                const [key, value] = pair.split(':');
                acc[key] = value;
                return acc;
              }, {});
            // console.log(parser_ids, 'parser_ids');
            kbtenantInfo.parser_idObj = parser_ids;
            renderData.value = data.data.docs || [];
            renderData.value = renderData.value.map((item) => {
              return {
                ...item,
                loading: false,
                parser_id: parser_ids[item.parser_id],
              };
            });
            // console.log(renderData.value, 'renderData');
          }
        }, 10000);
        documentList()
      }
    } catch (err) {
      // you can report use errorHandler or other
@@ -905,6 +886,31 @@
      setLoading(false);
    }
  };
  const documentList= async () => {
    let params = { ...basePagination, kb_id: kbobj.id };
    const data = await queryKbDocumentList(params);
    if (data.code == '0') {
      parser_ids = kbtenantInfo.parser_ids
        .split(',')
        .reduce((acc, pair) => {
          const [key, value] = pair.split(':');
          acc[key] = value;
          return acc;
        }, {});
      // console.log(parser_ids, 'parser_ids');
      kbtenantInfo.parser_idObj = parser_ids;
      renderData.value = data.data.docs || [];
      renderData.value = renderData.value.map((item) => {
        return {
          ...item,
          loading: false,
          parser_id: parser_ids[item.parser_id],
        };
      });
      // console.log(renderData.value, 'renderData');
    }
  }
  const search = () => {
    basePagination.page = 1;
@@ -978,12 +984,14 @@
    setLoading(true);
    try {
      const { data } = await queryKbList({ page: 1, page_size: 10 });
      console.log(data, '查询知识库列表');
      tabs.value = data;
      if (tabs.value.length > 0) {
        // 定位到新增的知识库单元
        selectedTab.value = tabs.value.findIndex((item) => item.id == id);
        getKbdetail(id); // 获取详情
        kbobj.id = id;
        activeKey.value = '3';
      }
    } catch (err) {