From b63839cffaa8ed14f4da4654916f447b7707a7ee Mon Sep 17 00:00:00 2001
From: yinbangzhong <zhongbangyin@126.com>
Date: 星期六, 27 七月 2024 20:06:39 +0800
Subject: [PATCH] 权限

---
 src/views/dmx/knowledgeLib/index.vue |  117 +++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 78 insertions(+), 39 deletions(-)

diff --git a/src/views/dmx/knowledgeLib/index.vue b/src/views/dmx/knowledgeLib/index.vue
index 7ae8ccb..1b5addd 100644
--- a/src/views/dmx/knowledgeLib/index.vue
+++ b/src/views/dmx/knowledgeLib/index.vue
@@ -1,6 +1,6 @@
 <template>
   <div class="container">
-    <Breadcrumb :items="['澶фā鍨�', '鐭ヨ瘑搴撶鐞�']" />
+    <Breadcrumb :items="['dmx.list.index', 'dmx.list.kbm']" />
     <div class="main-container">
       <div class="lf-container">
         <div class="lf-container-top">
@@ -16,17 +16,17 @@
               class="tab"
               v-for="(tab, index) in tabs"
               :key="index"
-              @click="selectTab(index)"
+              @click="selectTab(index,tab)"
               :class="{ 'active': selectedTab === index }"
             >
-              {{ tab }}
+              {{ tab.name }}
             </div>
           </div>
         </div>
       </div>
       <div class="rt-container">
         <a-tabs default-active-key="1">
-          <a-tab-pane key="1" title="鏁版嵁闆�">
+          <a-tab-pane key="1" :title= "t('dmx.list.DataSet')">
             <div class="rt-container-main">
               <a-card  ref="account" class="general-card" :title="$t('')" style="padding-top: 20px">
                 <a-row>
@@ -147,10 +147,12 @@
                   :scroll="{ y: 580 }"
                 >
                   <template #name="{ record }">
-                    <icon-file style="color: #0960bd;margin-right: 4px;" />
-                    <span style="color: #0960bd;cursor: pointer" @click="fileClick">
-                      {{record.name}}
-                    </span>
+<!--                    <icon-file style="color: #0960bd;margin-right: 4px;" />-->
+                    <icon-file style="margin-right: 4px;" />
+<!--                    <span style="color: #0960bd;cursor: pointer" @click="fileClick">-->
+<!--                      {{record.name}}-->
+<!--                    </span>-->
+                    {{record.name}}
                   </template>
                   <template #staue="{ record }">
                     <a-switch :model-value="record.staue"/>
@@ -159,19 +161,19 @@
                     <div style="display: flex;align-items: center;">
                       <div style="width: 100px">
                         <a-popover title="Title">
-                          <a-tag :color="'blue'" border>鎴愬姛</a-tag>
+                          <a-tag :color="'blue'" border>{{$t('dmx.list.complete')}}</a-tag>
                           <template #content>
                             <p>Here is the text content</p>
                           </template>
                         </a-popover>
                         <a-popover title="Title">
-                          <a-tag :color="'gold'" border>鍙栨秷</a-tag>
+                          <a-tag :color="'gold'" border>{{$t('dmx.list.cancel')}}</a-tag>
                           <template #content>
                             <p>Here is the text content</p>
                           </template>
                         </a-popover>
                         <a-popover title="Title">
-                          <a-tag :color="'green'" border>鏈惎鍔�</a-tag>
+                          <a-tag :color="'green'" border>{{$t('dmx.list.NotStarted')}}</a-tag>
                           <template #content>
                             <p>Here is the text content</p>
                           </template>
@@ -199,7 +201,7 @@
                   <template #operations="{ record }" >
                     <tool/>
                     <edit/>
-                    <a-popconfirm content="纭畾鍒犻櫎鍚楋紵" type="warning" @ok="deleteItem(record)">
+                    <a-popconfirm :content="t('dmx.list.EnsureDelete')" type="warning" @ok="deleteItem(record)">
                       <a-button v-permission="['admin']" type="text" size="small">
                         <template #icon>
                           <icon-delete />
@@ -216,12 +218,12 @@
               </a-card>
             </div>
           </a-tab-pane>
-          <a-tab-pane key="2" title="娴嬭瘯">
+          <a-tab-pane key="2" :title="t('dmx.list.test')">
             <div class="rt-container-main">
               <test ></test>
             </div>
           </a-tab-pane>
-          <a-tab-pane key="3" title="閰嶇疆">
+          <a-tab-pane key="3" :title="t('dmx.list.disposition')">
             <div class="rt-container-main">
               <config ></config>
             </div>
@@ -236,11 +238,11 @@
             </div>
             <div style="display: flex; align-items: center;">
               <a-radio-group v-model="position" type="button" style="margin-right: 10px">
-                <a-radio value="top">鍏ㄦ枃</a-radio>
-                <a-radio value="right">鐪佺暐</a-radio>
+                <a-radio value="top">{{'dmx.list.EntireArticle'}}</a-radio>
+                <a-radio value="right">{{'dmx.list.omit'}}</a-radio>
               </a-radio-group>
               <a-popover position="bottom">
-                <a-button type="outline" class="button" style="margin-right: 10px">鎵归噺 <icon-down style="margin-left: 4px" /></a-button>
+                <a-button type="outline" class="button" style="margin-right: 10px">{{'dmx.list.batch'}} <icon-down style="margin-left: 4px" /></a-button>
                 <template #content>
                   <p>Here is the text content</p>
                   <p>Here is the text content</p>
@@ -269,10 +271,10 @@
 </template>
 
 <script lang="ts" setup>
-  import { computed, ref, reactive, watch, nextTick } from 'vue';
+import { computed, ref, reactive, watch, nextTick, onBeforeMount } from "vue";
   import { useI18n } from 'vue-i18n';
   import useLoading from '@/hooks/loading';
-  import { queryPolicyList, PolicyRecord, PolicyParams } from '@/api/list';
+import { queryKbList, PolicyRecord, PolicyParams, queryKbDocumentList } from "@/api/kbList";
   import { Pagination } from '@/types/global';
   import type { SelectOptionData } from '@arco-design/web-vue/es/select/interface';
   import type { TableColumnData } from '@arco-design/web-vue/es/table/interface';
@@ -301,7 +303,7 @@
   };
   const { loading, setLoading } = useLoading(true);
   const { t } = useI18n();
-  const renderData = ref<PolicyRecord[]>([]);
+  const renderData = ref([]);
   const formModel = ref(generateFormModel());
   const cloneColumns = ref<Column[]>([]);
   const showColumns = ref<Column[]>([]);
@@ -310,10 +312,16 @@
   let visible = ref(false)
   let detailsShow = ref(false)
   let selectedTab = ref(0)
-  let tabs = reactive(['娉曞緥鐭ヨ瘑搴�', '鏀垮姟鐭ヨ瘑搴�', '鍖诲鐭ヨ瘑搴�', '鍏朵粬鐭ヨ瘑搴�'])
+  let tabs = ref([])
 
-  const  selectTab = (index) => {
+  const  selectTab = (index,item) => {
     selectedTab.value= index;
+    console.log(item.id);
+    fetchData({
+      kb_id: item.id,
+      page: 1,
+      page_size: 20
+    })
   }
 
   const basePagination: Pagination = {
@@ -343,7 +351,7 @@
   ]);
   const columns = computed<TableColumnData[]>(() => [
     {
-      title: t('鍚嶇О'),
+      title: t('dmx.column.name'),
       dataIndex: 'name',
       slotName: 'name',
     },
@@ -352,29 +360,29 @@
       dataIndex: 'contentType',
     },
     {
-      title: t('涓婁紶鏃堕棿'),
+      title: t('dmx.column.UploadTime'),
       dataIndex: 'filterType',
     },
     {
-      title: t('鍒涘缓浜�'),
+      title: t('dmx.column.Founder'),
       dataIndex: 'count',
     },
     {
-      title: t('瑙f瀽鐘舵��'),
+      title: t('dmx.column.Status'),
       dataIndex: 'createdTime',
     },
     {
-      title: t('鍚敤'),
+      title: t('dmx.column.Enable'),
       dataIndex: 'staue',
       slotName: 'staue',
     },
     {
-      title: t('瑙f瀽鐘舵��'),
+      title: t('dmx.column.ParseState'),
       dataIndex: 'status',
       slotName: 'status',
     },
     {
-      title: t('鎿嶄綔'),
+      title: t('dmx.column.Operate'),
       dataIndex: 'operations',
       slotName: 'operations',
       width: 150,
@@ -415,16 +423,16 @@
       value: 'offline',
     },
   ]);
-  const fetchData = async (
-    params: PolicyParams = { current: 1, pageSize: 20 }
-  ) => {
+  const fetchData = async (params) => {
     setLoading(true);
     try {
-      const { data } = await queryPolicyList(params);
-      renderData.value = data.list;
-      console.log(renderData, 'renderData');
-      pagination.current = params.current;
-      pagination.total = data.total;
+      const  data  = await queryKbDocumentList(params);
+      console.log(data, 'data');
+      if(data.code=='0'){
+        renderData.value = data.data.docs||[];
+        pagination.current = params.page;
+        pagination.total = data.data.total;
+      }
     } catch (err) {
       // you can report use errorHandler or other
     } finally {
@@ -436,7 +444,7 @@
     fetchData({
       ...basePagination,
       ...formModel.value,
-    } as unknown as PolicyParams);
+    });
   };
 
   const handleClick = ()=>{
@@ -447,7 +455,33 @@
     fetchData({ ...basePagination, current });
   };
 
-  fetchData();
+  const knowledgeData = async (
+    params = { page: 1, page_size: 20 }
+  ) => {
+    setLoading(true);
+    try {
+      const { data } = await queryKbList(params);
+      console.log(data, 'data');
+      tabs.value = data;
+      console.log(tabs.value, 'tabs');
+      if(tabs.value.length>0 && tabs.value[0]){
+        fetchData({
+          kb_id: tabs.value[0].id,
+          page: 1,
+          page_size: 20
+        })
+      }
+      // renderData.value = data.list;
+      // console.log(renderData, 'renderData');
+      // pagination.current = params.current;
+      // pagination.total = data.total;
+    } catch (err) {
+      // you can report use errorHandler or other
+    } finally {
+      setLoading(false);
+    }
+  };
+
   const reset = () => {
     formModel.value = generateFormModel();
   };
@@ -538,6 +572,11 @@
     },
     { deep: true, immediate: true }
   );
+
+  onBeforeMount(()=>{
+    knowledgeData()
+  })
+
 </script>
 
 <script lang="ts">

--
Gitblit v1.8.0