From a388238ca345647b4d0581f572dc7aec32f79a26 Mon Sep 17 00:00:00 2001 From: liudong <liudong> Date: 星期一, 19 八月 2024 17:27:50 +0800 Subject: [PATCH] agent会话名称修改 --- src/views/sessionManager/components/agentSession.vue | 76 +++++++++++++++++++++++++ src/views/sessionManager/index.vue | 68 ++++++++++++++++++++++ 2 files changed, 141 insertions(+), 3 deletions(-) diff --git a/src/views/sessionManager/components/agentSession.vue b/src/views/sessionManager/components/agentSession.vue index 53748c6..73eb7fb 100644 --- a/src/views/sessionManager/components/agentSession.vue +++ b/src/views/sessionManager/components/agentSession.vue @@ -3,7 +3,30 @@ <div class="header___lEPyH"> <div class="chatHeader"> <div class="chatHeaderBox"> - <span class="title">{{agentTitle}}</span> +<!-- <span class="title">{{agentTitle}}</span>--> + <a-popover + position="bottom" + trigger="click" + > + <a-button border + >{{agentTitle}} + <icon-down style="margin-left: 4px" /> + </a-button> + <template #content> + <a-button + type="text" + class="button" + style="color: #2a2a2b" + @click="handleClick()" + > + <template #icon> + <icon-edit /> + </template> + 淇敼鍚嶇О + </a-button> + <!-- <a-divider style="margin: 10px 0" />--> + </template> + </a-popover> </div> </div> </div> @@ -132,6 +155,19 @@ > </div> </div> + <a-modal v-model:visible="visible" title="淇敼鍚嶇О" @before-open="handleOpened" @cancel="handleCancel" :footer="false" title-align="start"> + <a-form ref="formRef" :rules="rules" :model="agentObj" @submit="handleSubmit" > + <a-form-item field="name" label="鍚嶇О"> + <a-input v-model="agentObj.name" placeholder="璇疯緭鍏ュ悕绉�"/> + </a-form-item> + <a-form-item> + <div style="width: 100%;text-align: right"> + <a-button @click="visible = false">鍙栨秷</a-button> + <a-button style="margin-left: 10px" type="primary" html-type="submit">纭畾</a-button> + </div> + </a-form-item> + </a-form> + </a-modal> </div> </template> @@ -144,6 +180,7 @@ import { agentResetApi, agentSetApi, getAgentSessionDetailsApi } from "@/api/agentSession"; import EventBus from '@/utils/EventBus'; import useClipboard from "vue-clipboard3"; +import { addSessionApi } from "@/api/session"; const props = defineProps({ modalObj: Object, }); @@ -177,6 +214,43 @@ return appStore.theme; }); +const visible = ref(false); + + + +const rules = { + name: [ + { + required: true, + message:'鍚嶇О涓嶅厑璁镐负绌�', + }, + ], +} + +const handleSubmit = async({values, errors}) => { + if(errors) return; + + const { code, data } = await addSessionApi(agentObj); + if (data) { + Message.success("淇敼鎴愬姛"); + handleCancel() + queryAgentSessionDetail(agentObj.id); + } +} + +const handleClick = () => { + visible.value = true; +}; +const handleCancel = () => { + visible.value = false; +} + +const handleOpened =(el) => { + // Object.assign(form,{ + // name: '',// 鐢ㄦ埛鍚� + // }); + // formRef.value.resetFields(); +} // 鍒濆鍖栭〉闈� diff --git a/src/views/sessionManager/index.vue b/src/views/sessionManager/index.vue index a0e78f2..ce2aa4d 100644 --- a/src/views/sessionManager/index.vue +++ b/src/views/sessionManager/index.vue @@ -31,7 +31,17 @@ <icon-down style="margin-left: 4px" /> </a-button> <template #content> - <setName :activeSessionId="activeSessionId" @queryNewSessionDetail="queryNewSessionDetail"></setName> + <a-button + type="text" + class="button" + style="color: #2a2a2b" + @click="handleClick()" + > + <template #icon> + <icon-edit /> + </template> + 淇敼鍚嶇О + </a-button> <!-- <a-divider style="margin: 10px 0" />--> </template> </a-popover> @@ -250,7 +260,19 @@ </div> </a-col> </a-row> - + <a-modal v-model:visible="visible" title="淇敼鍚嶇О" @before-open="handleOpened" @cancel="handleCancel" :footer="false" title-align="start"> + <a-form ref="formRef" :rules="rules" :model="chatObj" @submit="handleSubmit" > + <a-form-item field="name" label="鍚嶇О"> + <a-input v-model="chatObj.name" placeholder="璇疯緭鍏ュ悕绉�"/> + </a-form-item> + <a-form-item> + <div style="width: 100%;text-align: right"> + <a-button @click="visible = false">鍙栨秷</a-button> + <a-button style="margin-left: 10px" type="primary" html-type="submit">纭畾</a-button> + </div> + </a-form-item> + </a-form> + </a-modal> </div> </template> <script setup lang="ts"> @@ -323,6 +345,48 @@ const file = ref(''); const fileInput = ref(null); +const visible = ref(false); + + + +const rules = { + name: [ + { + required: true, + message:'鍚嶇О涓嶅厑璁镐负绌�', + }, + ], +} + +const handleSubmit = async({values, errors}) => { + if(errors) return; + + const { code, data } = await addSessionApi(chatObj); + if (data) { + Message.success("淇敼鎴愬姛"); + handleCancel() + queryNewSessionDetail(activeSessionId.value); + } +} + +const handleClick = () => { + visible.value = true; +}; +const handleCancel = () => { + visible.value = false; +} + +const handleOpened =(el) => { + // Object.assign(form,{ + // name: '',// 鐢ㄦ埛鍚� + // }); + // formRef.value.resetFields(); +} + + + + + const selectFile = () => { fileInput.value.click(); }; -- Gitblit v1.8.0