diff --git a/main/manager-web/src/apis/module/model.js b/main/manager-web/src/apis/module/model.js index e27c69ad..38cc946e 100644 --- a/main/manager-web/src/apis/module/model.js +++ b/main/manager-web/src/apis/module/model.js @@ -159,5 +159,23 @@ export default { }) }).send() }, - + // 更新模型配置 + updateModel(params, callback) { + const { modelType, provideCode, id, formData } = params; + RequestService.sendRequest() + .url(`${getServiceUrl()}/models/${modelType}/${provideCode}/${id}`) + .method('PUT') + .data(formData) + .success((res) => { + RequestService.clearRequestTime(); + callback(res); + }) + .fail((err) => { + console.error('更新模型失败:', err); + this.$message.error(err.msg || '更新模型失败'); + RequestService.reAjaxFun(() => { + this.updateModel(params, callback); + }); + }).send(); + }, } diff --git a/main/manager-web/src/components/AddModelDialog.vue b/main/manager-web/src/components/AddModelDialog.vue index 32bc9c4c..04e184a0 100644 --- a/main/manager-web/src/components/AddModelDialog.vue +++ b/main/manager-web/src/components/AddModelDialog.vue @@ -5,7 +5,7 @@
添加模型
- + diff --git a/main/manager-web/src/components/ModelEditDialog.vue b/main/manager-web/src/components/ModelEditDialog.vue index 45a4c94e..5e311704 100644 --- a/main/manager-web/src/components/ModelEditDialog.vue +++ b/main/manager-web/src/components/ModelEditDialog.vue @@ -94,7 +94,6 @@ import Api from '@/apis/api'; const DEFAULT_CONFIG_JSON = { - provider: "", type: "", base_url: "", model_name: "", @@ -102,8 +101,8 @@ const DEFAULT_CONFIG_JSON = { raw: {}, config: { keyComparator: {}, - ignoreError: 0, - ignoreCase: 0, + ignoreError: false, + ignoreCase: false, dateFormat: "", ignoreNullValue: false, transientSupport: false, @@ -267,7 +266,10 @@ export default { } }, handleSave() { + const provideCode = this.form.configJson.type; + const { provider, ...restConfigJson } = this.form.configJson; const formData = { + id: this.form.id, modelCode: this.form.modelCode, modelName: this.form.modelName, isDefault: this.form.isDefault ? 1 : 0, @@ -276,12 +278,15 @@ export default { remark: this.form.remark, sort: this.form.sort || 0, configJson: { - ...this.form.configJson, - type: this.form.configJson.type || this.modelType + ...restConfigJson, + config: { + ...restConfigJson.config, + ignoreError: !!restConfigJson.config?.ignoreError, + ignoreCase: !!restConfigJson.config?.ignoreCase, + } } }; - - this.$emit("save", formData); + this.$emit("save", { provideCode, formData }); this.dialogVisible = false; }, loadProviders() { diff --git a/main/manager-web/src/views/ModelConfig.vue b/main/manager-web/src/views/ModelConfig.vue index 83774639..71df5d2d 100644 --- a/main/manager-web/src/views/ModelConfig.vue +++ b/main/manager-web/src/views/ModelConfig.vue @@ -301,9 +301,21 @@ export default { // TODO: 导出配置 console.log('导出配置'); }, - handleModelSave(formData) { - // TODO: 保存模型数据 - console.log('保存的模型数据:', formData); + handleModelSave({ provideCode, formData }) { + const modelType = this.activeTab; + const id = formData.id; + 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 || '保存失败'); + } + } + ); }, selectAll() { if (this.isAllSelected) {