mirror of
https://github.com/xinnan-tech/xiaozhi-esp32-server.git
synced 2026-07-27 09:33:55 +08:00
feat(模型管理): 添加模型副本创建功能
在模型编辑对话框中增加副本创建功能,当选择创建副本时自动在原模型名称和代码后添加'_副本'后缀,并通过新增API接口保存为新模型
This commit is contained in:
@@ -3,7 +3,7 @@
|
|||||||
class="center-dialog" >
|
class="center-dialog" >
|
||||||
<div style="margin: 0 18px; text-align: left; padding: 10px; border-radius: 10px;">
|
<div style="margin: 0 18px; text-align: left; padding: 10px; border-radius: 10px;">
|
||||||
<div style="font-size: 30px; color: #3d4566; margin-top: -10px; margin-bottom: 10px; text-align: center;">
|
<div style="font-size: 30px; color: #3d4566; margin-top: -10px; margin-bottom: 10px; text-align: center;">
|
||||||
修改模型
|
{{ modelData.duplicateMode ? '创建副本' : '修改模型' }}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<button class="custom-close-btn" @click="dialogVisible = false">
|
<button class="custom-close-btn" @click="dialogVisible = false">
|
||||||
@@ -190,6 +190,11 @@ export default {
|
|||||||
Api.model.getModelConfig(this.modelData.id, ({ data }) => {
|
Api.model.getModelConfig(this.modelData.id, ({ data }) => {
|
||||||
if (data.code === 0 && data.data) {
|
if (data.code === 0 && data.data) {
|
||||||
const model = data.data;
|
const model = data.data;
|
||||||
|
|
||||||
|
if (this.modelData.duplicateMode) {
|
||||||
|
model.modelName = this.modelData.modelName + '_副本';
|
||||||
|
model.modelCode = this.modelData.modelCode + '_副本';
|
||||||
|
}
|
||||||
this.pendingProviderType = model.configJson.type;
|
this.pendingProviderType = model.configJson.type;
|
||||||
this.pendingModelData = model;
|
this.pendingModelData = model;
|
||||||
|
|
||||||
|
|||||||
@@ -79,11 +79,14 @@
|
|||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="操作" align="center" width="150px">
|
<el-table-column label="操作" align="center" width="180px">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-button type="text" size="mini" @click="editModel(scope.row)" class="edit-btn">
|
<el-button type="text" size="mini" @click="editModel(scope.row)" class="edit-btn">
|
||||||
修改
|
修改
|
||||||
</el-button>
|
</el-button>
|
||||||
|
<el-button type="text" size="mini" @click="duplicateModel(scope.row)" class="edit-btn">
|
||||||
|
创建副本
|
||||||
|
</el-button>
|
||||||
<el-button type="text" size="mini" @click="deleteModel(scope.row)" class="delete-btn">
|
<el-button type="text" size="mini" @click="deleteModel(scope.row)" class="delete-btn">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
@@ -277,6 +280,11 @@ export default {
|
|||||||
this.editModelData = JSON.parse(JSON.stringify(model));
|
this.editModelData = JSON.parse(JSON.stringify(model));
|
||||||
this.editDialogVisible = true;
|
this.editDialogVisible = true;
|
||||||
},
|
},
|
||||||
|
duplicateModel(model) {
|
||||||
|
this.editModelData = JSON.parse(JSON.stringify(model));
|
||||||
|
this.editModelData.duplicateMode = true;
|
||||||
|
this.editDialogVisible = true;
|
||||||
|
},
|
||||||
// 删除单个模型
|
// 删除单个模型
|
||||||
deleteModel(model) {
|
deleteModel(model) {
|
||||||
this.$confirm('确定要删除该模型吗?', '提示', {
|
this.$confirm('确定要删除该模型吗?', '提示', {
|
||||||
@@ -313,19 +321,34 @@ export default {
|
|||||||
const modelType = this.activeTab;
|
const modelType = this.activeTab;
|
||||||
const id = formData.id;
|
const id = formData.id;
|
||||||
|
|
||||||
Api.model.updateModel(
|
if (this.editModelData.duplicateMode) {
|
||||||
{ modelType, provideCode, id, formData },
|
Api.model.addModel({modelType, provideCode, formData},
|
||||||
({ data }) => {
|
({ data }) => {
|
||||||
if (data.code === 0) {
|
if (data.code === 0) {
|
||||||
this.$message.success('保存成功');
|
this.$message.success('创建副本成功');
|
||||||
this.loadData();
|
this.loadData();
|
||||||
this.editDialogVisible = false;
|
this.editDialogVisible = false;
|
||||||
} else {
|
} else {
|
||||||
this.$message.error(data.msg || '保存失败');
|
this.$message.error(data.msg || '创建副本失败');
|
||||||
}
|
}
|
||||||
done && done(); // 调用done回调关闭加载状态
|
done && done(); // 调用done回调关闭加载状态
|
||||||
}
|
})
|
||||||
);
|
}
|
||||||
|
else {
|
||||||
|
Api.model.updateModel(
|
||||||
|
{ modelType, provideCode, id, formData },
|
||||||
|
({ data }) => {
|
||||||
|
if (data.code === 0) {
|
||||||
|
this.$message.success('保存成功');
|
||||||
|
this.loadData();
|
||||||
|
this.editDialogVisible = false;
|
||||||
|
} else {
|
||||||
|
this.$message.error(data.msg || '保存失败');
|
||||||
|
}
|
||||||
|
done && done(); // 调用done回调关闭加载状态
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
selectAll() {
|
selectAll() {
|
||||||
if (this.isAllSelected) {
|
if (this.isAllSelected) {
|
||||||
|
|||||||
Reference in New Issue
Block a user