王晓东 2 месяцев назад
Родитель
Сommit
c3dfd79b8c

+ 17 - 8
src/api/modules/anycallService.ts

@@ -3,25 +3,28 @@ import { request } from '@/api'
 import type { TAgent } from '@/types/role'
 import type { TVoice } from '@/types/voice'
 
+// 角色搜索
 export function anycallPage(params: {
   page: number,
   size: number,
   name?: string,
   topFlag?: boolean,
-  nameOrTags?: string
+  keywords?: string
 }){
   return request<{
     total: number,
     content: TAgent[]
-  }>(`/anycall/selectLib`, params)
+  }>(`/anycall/adm_clone/search`, params)
 }
-//
+
+
+// 修改callings数量
 export function updateCallings(params: {cloneId: string, callings: string}){
-  return request(`/anycall/admin/updateCallings`, params)
+  return request(`/anycall/adm_clone/setCallings`, params)
 }
-// 推荐
+// 修改推荐状态
 export function updateTopFlag(params: {id: string, topFlag: boolean}){
-  return request(`/anycall/admin/updateTopFlag`, {
+  return request(`/anycall/adm_clone/setTopFlag`, {
     cloneId: params.id,
     topFlag: params.topFlag
   })
@@ -61,6 +64,12 @@ export function saveRole(params: TRole){
   }
   return request(`/anycall/create`, params)
 }
+// 删除智能体
+export function deleteClone(params: {cloneId: string}){
+  return request(`/anycall/adm_clone/deleteClone`, params)
+}
+
+// 角色克隆
 export function importZip(params: any){
   const config = {
             headers: {
@@ -69,7 +78,7 @@ export function importZip(params: any){
                 // 'accessToken': 'rcOBHJ0Hb8h5xgM/CWtNd8RBhA6WS4OPyJcxrxk4xPZtzeh5PtRXVDA7Um0NZA6NQmnbnZgWB0nNPb8iCrneQj4badFveWLrFq4LrySto3pIo/Zg1dJubbwmu3Vr1LCbSYyVIFrrgt9PXiA85kb9g38FSG3KTSi3AEY/UgjLNLBtH2+91YXKEy2KRZV3v75f',
             }
         };
-  return request(`/anycall/admin/import`, params, config)
+  return request(`/anycall/adm_clone/import`, params, config)
 }
 
 
@@ -77,7 +86,7 @@ export function updateAgentLLm(params: {
   cloneId: string,
   llmId: string
 }){
-  return request(`/anycall/admin/updateAgentLLm`, {cloneId: params.cloneId, llmId: params.llmId})
+  return request(`/anycall/adm_clone/switchModelId`, {cloneId: params.cloneId, llmId: params.llmId})
 }
 
 // 语言

+ 1 - 1
src/api/modules/model.ts

@@ -6,7 +6,7 @@ export async function fetchModel(){
   const res = await request<{
     total: number,
     content: TModel[]
-  }>(`/anycall/admin/selectLLMModel`)
+  }>(`/anycall/adm_clone/listLLMModels`)
   //@ts-ignore
   return res.data
 }

+ 2 - 2
src/views/role-management/components/SearchForm.vue

@@ -3,7 +3,7 @@ import { Refresh, Search } from '@element-plus/icons-vue'
 import { ElButton, ElCol, ElForm, ElFormItem, ElInput, ElOption, ElRow, ElSelect } from 'element-plus'
 import { ref } from 'vue'
 type TSearchParams = {
-  nameOrTags: string,
+  keywords: string,
 }
 interface Props {
   modelValue: TSearchParams
@@ -54,7 +54,7 @@ function handleClear() {
 <template>
   <ElForm  :inline="true"  ref="formRef" :model="searchParams" label-width="80px">
       <ElFormItem label="名称" prop="nameOrTags" label-width="120">
-          <ElInput v-model="searchParams.nameOrTags" placeholder="请输入" clearable
+          <ElInput v-model="searchParams.keywords" placeholder="请输入" clearable
               @clear="handleClear" />
           </ElFormItem>
           <ElFormItem>

+ 8 - 6
src/views/role-management/index.vue

@@ -61,7 +61,7 @@ const importedResult = ref<{name: string, msg: string}[]>([
 // 搜索参数
 const searchParams = ref({
   // name: '',
-  nameOrTags: '',
+  keywords: '',
 })
 const dataList = ref<TAgent[]>([]);
 
@@ -75,7 +75,7 @@ const pagination = ref({
 async function fetchData() {
   loading.value = true
   const res = await anycallPage({
-    nameOrTags: searchParams.value.nameOrTags,
+    keywords: searchParams.value.keywords,
     page: pagination.value.page,
     size: pagination.value.size,
   })
@@ -162,7 +162,7 @@ const handleSearch = () => {
 const handleReset = () => {
   pagination.value.page = 1
   pagination.value.size = 10
-  searchParams.value.name = ''
+  searchParams.value.keywords = ''
   fetchData()
 }
 
@@ -201,9 +201,11 @@ onMounted(async () => {
         <ElTableColumn label="callings" prop="callings" />
         <ElTableColumn label="prompt" prop="prompt" min-width="340">
           <template #default="{row}">
-            <ElTag type="info" v-for="(tag, index) in row.prompt.split(/\,|\,/)" :key="index" class="mb-1 mr-1">
-              <div :title="tag">{{ tag }}</div>
-            </ElTag>
+            <template v-if="row.prompt">
+              <ElTag type="info" v-for="(tag, index) in row.prompt.split(/\,|\,/)" :key="index" class="mb-1 mr-1">
+                <div :title="tag">{{ tag }}</div>
+              </ElTag>
+            </template>
           </template>
         </ElTableColumn>
         <ElTableColumn label="tags" prop="tags" min-width="340">