diff --git a/app/Http/Controllers/Api/DialogController.php b/app/Http/Controllers/Api/DialogController.php index c2a26b36b..2216ebfd7 100755 --- a/app/Http/Controllers/Api/DialogController.php +++ b/app/Http/Controllers/Api/DialogController.php @@ -3090,7 +3090,7 @@ class DialogController extends AbstractController ] )) { WebSocketDialogMsg::sendMsg(null, $dialog_id, 'notice', [ - 'notice' => $value ? ("修改提示词:" . $value) : "取消提示词", + 'notice' => $value ? ("修改提示词:" . Base::cutStr($value, 100)) : "取消提示词", ], User::userid(), true, true); } diff --git a/app/Http/Controllers/Api/SystemController.php b/app/Http/Controllers/Api/SystemController.php index 401d0991f..bdb243b9d 100755 --- a/app/Http/Controllers/Api/SystemController.php +++ b/app/Http/Controllers/Api/SystemController.php @@ -287,6 +287,7 @@ class SystemController extends AbstractController * @apiParam {String} type * - get: 获取(默认) * - save: 保存设置(参数:[...]) + * @apiParam {String} filter 过滤字段(可选) * * @apiSuccess {Number} ret 返回状态码(1正确、0错误) * @apiSuccess {String} msg 返回信息(错误描述) @@ -297,6 +298,7 @@ class SystemController extends AbstractController User::auth('admin'); // $type = trim(Request::input('type')); + $filter = trim(Request::input('filter')); $setting = Base::setting('aibotSetting'); if ($type == 'save') { if (env("SYSTEM_SETTING") == 'disabled') { @@ -311,10 +313,18 @@ class SystemController extends AbstractController } $setting = Base::setting('aibotSetting', Base::newTrim($setting)); } + if ($filter) { + $setting = array_filter($setting, function($value, $key) use ($filter) { + return str_starts_with($key, $filter); + }, ARRAY_FILTER_USE_BOTH); + } // if (env("SYSTEM_SETTING") == 'disabled') { foreach ($setting as $key => $item) { - if (str_contains($key, '_key') && $item) { + if (empty($item)) { + continue; + } + if (str_ends_with($key, '_key') || str_ends_with($key, '_secret')) { $setting[$key] = substr($item, 0, 4) . str_repeat('*', strlen($item) - 8) . substr($item, -4); } } diff --git a/app/Models/Setting.php b/app/Models/Setting.php index 2b4f3e2ca..6a8f85dfb 100644 --- a/app/Models/Setting.php +++ b/app/Models/Setting.php @@ -66,7 +66,7 @@ class Setting extends AbstractModel } $array = []; $aiList = ['openai', 'claude', 'deepseek', 'gemini', 'grok', 'ollama', 'zhipu', 'qianwen', 'wenxin']; - $fieldList = ['key', 'models', 'model', 'base_url', 'agency', 'temperature', 'system', 'secret']; + $fieldList = ['key', 'secret', 'models', 'model', 'base_url', 'agency', 'temperature', 'system']; foreach ($aiList as $aiName) { foreach ($fieldList as $fieldName) { $key = $aiName . '_' . $fieldName; diff --git a/app/Module/Base.php b/app/Module/Base.php index 7b4f0114a..1c2c33aae 100755 --- a/app/Module/Base.php +++ b/app/Module/Base.php @@ -1295,7 +1295,7 @@ class Base * 获取或设置 * @param $setname // 配置名称 * @param bool $array // 保存内容 - * @param false $isUpdate // 保存内容为更新模式,默认否 + * @param bool $isUpdate // 保存内容为更新模式,默认否 * @return array */ public static function setting($setname, $array = false, $isUpdate = false) diff --git a/resources/assets/js/pages/manage/components/DialogWrapper.vue b/resources/assets/js/pages/manage/components/DialogWrapper.vue index 1ca09ad08..5c5215211 100644 --- a/resources/assets/js/pages/manage/components/DialogWrapper.vue +++ b/resources/assets/js/pages/manage/components/DialogWrapper.vue @@ -449,11 +449,12 @@
+ :placeholder="$L('例如:你是一个人开发的AI助手')" + show-word-limit/>
@@ -2896,7 +2897,8 @@ export default { this.modifyLoad++; this.$store.dispatch("call", { url: 'dialog/config/save', - data: this.modifyData + data: this.modifyData, + method: 'post' }).then(({data, msg}) => { $A.messageSuccess(msg); this.$store.dispatch("saveDialog", data); diff --git a/resources/assets/js/pages/manage/setting/components/SystemAibot.vue b/resources/assets/js/pages/manage/setting/components/SystemAibot.vue index 0e2f9617c..1f115b57d 100644 --- a/resources/assets/js/pages/manage/setting/components/SystemAibot.vue +++ b/resources/assets/js/pages/manage/setting/components/SystemAibot.vue @@ -22,11 +22,12 @@