新增模型会话开关功能和Token映射字段
- 在模型模块中添加更新会话模型状态的API,支持会话模型的管理。 - 更新模型选择器,保存模型的表单数据和响应体,提升用户体验。 - 在编辑模块中新增Token映射字段,增强模型配置的灵活性。 - 优化会话模型开关的逻辑,确保状态切换后能正确更新列表数据。
This commit is contained in:
@@ -32,23 +32,13 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="httpMethod" label="请求方式" width="100"></el-table-column>
|
||||
<el-table-column label="会话模型" width="100" align="center">
|
||||
<el-table-column label="会话模型" width="110" align="center">
|
||||
<template #default="{ row }">
|
||||
<el-tag :type="Number(row.isChatModel) === 1 ? 'success' : 'info'" size="small">
|
||||
{{ Number(row.isChatModel) === 1 ? '是' : '否' }}
|
||||
</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="会话开关" width="110" align="center">
|
||||
<template #default="{ row }">
|
||||
<template v-if="Number(row.isChatModel) === 1">
|
||||
<el-switch
|
||||
size="small"
|
||||
:model-value="chatSessionSwitchOn(row)"
|
||||
:before-change="() => onChatSessionSwitchRequest(row)"
|
||||
/>
|
||||
</template>
|
||||
<span v-else class="text-muted">—</span>
|
||||
<el-switch
|
||||
size="small"
|
||||
:model-value="Number(row.isChatModel) === 1"
|
||||
:before-change="() => onChatModelSwitchRequest(row)"
|
||||
/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="enabled" label="状态" width="100">
|
||||
@@ -94,6 +84,7 @@ import {
|
||||
getModelTypeList,
|
||||
deleteModelModule,
|
||||
normalizeModelTypeOptions,
|
||||
updateChatModel,
|
||||
} from '/@/api/digitalHuman/modelConfig/modelModule/index';
|
||||
|
||||
const EditModule = defineAsyncComponent(() => import('/@/views/digitalHuman/modelConfig/modelModule/component/editModule.vue'));
|
||||
@@ -113,14 +104,22 @@ const state = reactive({
|
||||
},
|
||||
});
|
||||
|
||||
/** 列表行与会话开关接口约定字段 chatSessionEnabled(0/1);接口未就绪前占位 */
|
||||
const chatSessionSwitchOn = (row: { chatSessionEnabled?: number }) => Number(row.chatSessionEnabled) === 1;
|
||||
|
||||
const onChatSessionSwitchRequest = (_row: { id?: number | string }) => {
|
||||
return new Promise<boolean>((resolve) => {
|
||||
ElMessage.info('会话开关接口接入后即可生效');
|
||||
resolve(false);
|
||||
});
|
||||
// 会话模型开关切换
|
||||
const onChatModelSwitchRequest = async (row: { id?: number | string; isChatModel?: number }) => {
|
||||
try {
|
||||
const newStatus = Number(row.isChatModel) === 1 ? 0 : 1;
|
||||
await updateChatModel({
|
||||
id: row.id!,
|
||||
chatSessionEnabled: newStatus as 0 | 1,
|
||||
});
|
||||
ElMessage.success(newStatus === 1 ? '已设置为会话模型' : '已取消会话模型');
|
||||
// 重新获取列表数据
|
||||
await getTableData();
|
||||
return true;
|
||||
} catch {
|
||||
// 接口错误由 request 全局提示后端 message
|
||||
return false;
|
||||
}
|
||||
};
|
||||
|
||||
const resolveModelTypeLabel = (modelsType: number | string | undefined | null) => {
|
||||
|
||||
Reference in New Issue
Block a user