From ba645407434ba6feebe14a1e7f515ac5df75ccc7 Mon Sep 17 00:00:00 2001 From: kuaifan Date: Sat, 30 Nov 2024 13:24:01 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E6=9B=B4=E6=96=B0=20AI=20=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E6=9B=B4=E5=A4=9A=E6=A8=A1=E5=9E=8B=E5=92=8C=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E6=8F=90=E7=A4=BA=E8=AF=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/Api/SystemController.php | 9 +++++---- docker-compose.yml | 2 +- .../manage/setting/components/SystemAibot.vue | 4 +++- resources/assets/js/store/actions.js | 16 ++++++---------- 4 files changed, 15 insertions(+), 16 deletions(-) diff --git a/app/Http/Controllers/Api/SystemController.php b/app/Http/Controllers/Api/SystemController.php index b94d00009..771ad9df1 100755 --- a/app/Http/Controllers/Api/SystemController.php +++ b/app/Http/Controllers/Api/SystemController.php @@ -297,14 +297,15 @@ class SystemController extends AbstractController if (env("SYSTEM_SETTING") == 'disabled') { return Base::retError('当前环境禁止修改'); } + Base::checkClientVersion('0.40.79'); + $backup = $setting; $all = Request::input(); foreach ($all as $key => $value) { - if (!isset($setting[$key])) { - unset($all[$key]); + if (isset($setting[$key])) { + $setting[$key] = $value; } } - $backup = $setting; - $setting = Base::setting('aibotSetting', Base::newTrim($all)); + $setting = Base::setting('aibotSetting', Base::newTrim($setting)); $tempMsg = [ 'type' => 'content', 'content' => '设置成功' diff --git a/docker-compose.yml b/docker-compose.yml index fef5ec027..99fafd395 100755 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -167,7 +167,7 @@ services: ai: container_name: "dootask-ai-${APP_ID}" - image: "kuaifan/dootask-ai:0.0.9" + image: "kuaifan/dootask-ai:0.1.0" environment: REDIS_HOST: "${REDIS_HOST}" REDIS_PORT: "${REDIS_PORT}" diff --git a/resources/assets/js/pages/manage/setting/components/SystemAibot.vue b/resources/assets/js/pages/manage/setting/components/SystemAibot.vue index 61a467d41..06920a8f9 100644 --- a/resources/assets/js/pages/manage/setting/components/SystemAibot.vue +++ b/resources/assets/js/pages/manage/setting/components/SystemAibot.vue @@ -351,10 +351,12 @@ export default { this.formData = $A.cloneJSON(this.formDatum_bak); }, systemSetting(save) { + const props = this.aiConfig[this.type].fields.map(item => item.prop); + const data = Object.fromEntries(Object.entries(this.formData).filter(([key]) => props.includes(key))); this.loadIng++; this.$store.dispatch("call", { url: 'system/setting/aibot?type=' + (save ? 'save' : 'all'), - data: this.formData, + data, }).then(({data}) => { if (save) { $A.messageSuccess('修改成功'); diff --git a/resources/assets/js/store/actions.js b/resources/assets/js/store/actions.js index ac9cde3bb..7cc2ca2aa 100644 --- a/resources/assets/js/store/actions.js +++ b/resources/assets/js/store/actions.js @@ -3426,19 +3426,15 @@ export default { } const sse = new SSEClient(streamUrl) sse.subscribe(['append', 'replace', 'done'], (type, e) => { - const data = { - id: e.lastEventId, - text: e.data, - type: 'replace', - }; switch (type) { case 'append': - data.type = 'append'; - Store.set('dialogMsgChange', data); - break; - case 'replace': - Store.set('dialogMsgChange', data); + const data = $A.jsonParse(e.data); + Store.set('dialogMsgChange', { + type, + id: e.lastEventId, + text: data.content + }); break; case 'done':