From 6d453537c8acf92ea5d9decbf6744df07f00efb1 Mon Sep 17 00:00:00 2001
From: liudong <liudong>
Date: 星期六, 03 八月 2024 22:29:25 +0800
Subject: [PATCH] 智能体管理的页面开发和功能开发

---
 src/views/dmx/IntelligentAgent/index.vue |  105 ++++++++++++++++++++++++++++++++++------------------
 1 files changed, 68 insertions(+), 37 deletions(-)

diff --git a/src/views/dmx/IntelligentAgent/index.vue b/src/views/dmx/IntelligentAgent/index.vue
index 4f23e22..fd06fda 100644
--- a/src/views/dmx/IntelligentAgent/index.vue
+++ b/src/views/dmx/IntelligentAgent/index.vue
@@ -8,6 +8,7 @@
             <a-input-search
               :placeholder="$t('cardList.searchInput.placeholder')"
               style="width: 240px;"
+              @change="queryList"
             />
           </div>
           <a-divider style="margin: 10px 0" />
@@ -37,7 +38,7 @@
 <!--                    </div>-->
                   </a-card>
                 </div>
-                <div class="card-wrap"    v-for="(item, index) of data" :key="index">
+                <div class="card-wrap"    v-for="(item, index) of agentList" :key="item.id">
                   <a-card :bordered="false" hoverable >
                     <a-avatar :style="{ backgroundColor: '#3370ff' }">
                       <img
@@ -46,7 +47,7 @@
                         src="https://p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/a20012a2d4d5b9db43dfc6a01fe508c0.png~tplv-uwbnlip3yd-webp.webp"
                       />
                     </a-avatar>
-                    <a-switch style="position: absolute;top: 10px;right: 10px" size="medium">
+                    <a-switch v-model="item.off" style="position: absolute;top: 10px;right: 10px" size="medium" @change="handleChange(item)">
                       <template #checked>
                         涓婄嚎
                       </template>
@@ -57,22 +58,25 @@
                     <div class="arco-card-body-content">
                       <div class="arco-card-body-content-top">
                         <span style="font-size: 18px;font-weight: 900">
-                          {{ item.title }}
+                          {{ item.name }}
                         </span>
                       </div>
                       <div class="arco-card-body-content-down">
-                        閫氳繃鎻忚堪瑙掕壊鍜屼换鍔℃潵鍒涘缓浣犵殑鏅鸿兘浣�
-                        鏅鸿兘浣撳彲浠ヨ皟鐢ㄥ涓伐浣滄祦鍜屽伐鍏�
+                        {{item.prompt_config.prologue}}
                       </div>
 
                     </div>
                     <div style="position: absolute; bottom: 1.4rem; left: 1rem;">
-                      <icon-user /> <span style="font-size: 12px">鐜嬫旦</span>
+                      <icon-user /> <span style="font-size: 12px">
+<!--                      {{ item.name }}-->
+                    </span>
                     </div>
                     <div style="position: absolute; bottom: 1rem; right: 1rem;">
                       <a-space>
-<!--                        <editAgent typeAngint="edit"></editAgent>-->
-                        <a-popconfirm :content="'纭畾鍒犻櫎鍚�'" type="warning" @ok="deleteItem(record)">
+                        <span v-show="!item.off">
+                          <editAgent  ref="editAgentKuai" typeAngint="edit" :formData="form" @cancelModal="handleCancel"></editAgent>
+                        </span>
+                        <a-popconfirm :content="'纭畾鍒犻櫎鍚�'" type="warning" @ok="deleteItem(item)">
                           <a-button  type="text" size="small">
                             <template #icon>
                               <icon-delete />
@@ -93,31 +97,35 @@
 </template>
 
 <script lang="ts" setup>
-  import { ref, reactive, nextTick } from 'vue';
+import { ref, reactive, nextTick, onBeforeMount } from "vue";
   import addAgent from "@/views/dmx/IntelligentAgent/components/addAgent.vue";
   import editAgent from "@/views/dmx/IntelligentAgent/components/editAgent.vue";
-  import { kbdocumentrm } from "@/api/kbList";
+  import { kbdocumentrm, queryKbList } from "@/api/kbList";
   import { Message } from "@arco-design/web-vue";
+import { deletedialog, querydialogList } from "@/api/Agent";
+  import useLoading from "@/hooks/loading";
+  const { loading, setLoading } = useLoading(true);
 
   let count = 5;
   const activeKey = ref(1);
   const addAgents = ref();
-  const data = ref([
-    {
-      key: 2,
-      title: '鍐呭璐ㄦ',
-      content: 'Content of Tab Panel 2',
-    },
-    {
-      key: 3,
-      title: '寮�閫氭湇鍔�',
-      content: 'Content of Tab Panel 3',
-    },
-    {
-      key: 4,
-      title: '瑙勫垯棰勭疆',
-      content: 'Content of Tab Panel 4',
-    },
+  const editAgentKuai = ref();
+  const agentList = ref([
+    // {
+    //   key: 2,
+    //   title: '鍐呭璐ㄦ',
+    //   content: 'Content of Tab Panel 2',
+    // },
+    // {
+    //   key: 3,
+    //   title: '寮�閫氭湇鍔�',
+    //   content: 'Content of Tab Panel 3',
+    // },
+    // {
+    //   key: 4,
+    //   title: '瑙勫垯棰勭疆',
+    //   content: 'Content of Tab Panel 4',
+    // },
   ]);
 const changeTabs = (val) => {
   activeKey.value = val;
@@ -132,25 +140,45 @@
   const visible = ref(false);
   const formRef = ref(null);
   const form = reactive({
-    size: 'medium',
-    name: '',
+    // size: 'medium',
+    // name: '',
   });
+
+  const queryList = async (
+    params = {  }
+  ) => {
+    setLoading(true);
+    try {
+      const { data } = await querydialogList(params);
+      console.log(data, 'data');
+      agentList.value = data.map((item) => {
+        return {
+          ...item,
+          off: true,
+        }
+      });
+    } catch (err) {
+      // you can report use errorHandler or other
+    } finally {
+      setLoading(false);
+    }
+  };
+
   const   deleteItem =  async (row)=>{
     console.log(row);
-    let data = await kbdocumentrm({doc_id: row.id})
+    let data = await deletedialog({dialog_ids: [row.id]})
     if(data.code == 0){
       Message.success('鍒犻櫎鎴愬姛');
-      console.log(kbobj, 'kbobj');
-      fetchData({
-        kb_id: kbobj.id,
-        page: 1,
-        page_size: 20
-      })
+      queryList()
     }
   }
+  const handleChange = async (item) => {
+    if (item){
+      Object.assign(form,item)
+    }
+  };
   const handleCancel = () => {
-    formRef.value.resetFields();
-    visible.value = false;
+    queryList()
   };
   const handleSubmit = ({ values, errors }) => {
     this.$refs.formRef.validate().then((res, a, b) => {
@@ -158,6 +186,9 @@
       console.log('values', values);
     });
   };
+  onBeforeMount(()=>{
+    queryList();
+  })
 </script>
 
 <script lang="ts">

--
Gitblit v1.8.0