chore(addon/aikefu): 调整config的配置内容

This commit is contained in:
2025-12-06 12:52:30 +08:00
parent fc5615a9c7
commit 0ff979917c
3 changed files with 18 additions and 9 deletions

View File

@@ -20,6 +20,15 @@ class Config extends BaseModel
public function setConfig($data, $site_id = 0, $app_module = 'shop') public function setConfig($data, $site_id = 0, $app_module = 'shop')
{ {
$config = new ConfigModel(); $config = new ConfigModel();
// 获取原始配置
$original_config = $this->getConfig($site_id, $app_module)['data']['value'] ?? [];
// 如果 API Key 为空或保持不变,则使用原始值
if (isset($data['api_key']) && empty($data['api_key'])) {
$data['api_key'] = $original_config['api_key'] ?? '';
}
$res = $config->setConfig($data, '智能客服配置', 1, [['site_id', '=', $site_id], ['app_module', '=', $app_module], ['config_key', '=', 'AIKEFU_CONFIG']]); $res = $config->setConfig($data, '智能客服配置', 1, [['site_id', '=', $site_id], ['app_module', '=', $app_module], ['config_key', '=', 'AIKEFU_CONFIG']]);
return $res; return $res;
} }

View File

@@ -33,7 +33,7 @@ class Kefu extends BaseShop
return $result; return $result;
} else { } else {
// 获取配置 // 获取配置
$config_info = $kefu_config_model->getConfig($this->site_id); $config_info = $kefu_config_model->getConfig($this->site_id, $this->app_module)['data']['value'] ?? [];
$this->assign('config_info', $config_info); $this->assign('config_info', $config_info);
return $this->fetch('kefu/config'); return $this->fetch('kefu/config');
} }
@@ -143,8 +143,8 @@ class Kefu extends BaseShop
$kefu_conversation_model = new KefuConversationModel(); $kefu_conversation_model = new KefuConversationModel();
$kefu_message_model = new KefuMessageModel(); $kefu_message_model = new KefuMessageModel();
// 开启事务 // 开启事务
$this->model->startTrans(); \think\facade\Db::startTrans();
try { try {
// 删除会话关联的消息 // 删除会话关联的消息
@@ -167,12 +167,12 @@ class Kefu extends BaseShop
]); ]);
// 提交事务 // 提交事务
$this->model->commit(); \think\facade\Db::commit();
return $this->success($result); return $this->success($result);
} catch (\Exception $e) { } catch (\Exception $e) {
// 回滚事务 // 回滚事务
$this->model->rollback(); \think\facade\Db::rollback();
return $this->error($e->getMessage()); return $this->error($e->getMessage());
} }
} }

View File

@@ -14,7 +14,7 @@
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label"><span class="required">*</span>Dify API密钥</label> <label class="layui-form-label"><span class="required">*</span>Dify API密钥</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="text" name="api_key" placeholder="请输入Dify API密钥" value="{$config_info.data.value.api_key ?? ''}" class="layui-input"> <input type="text" name="api_key" placeholder="请输入Dify API密钥" value="{$config_info.api_key ?? ''}" class="layui-input">
</div> </div>
<div class="word-aux"> <div class="word-aux">
从Dify平台获取的API密钥用于调用Dify聊天机器人API。 从Dify平台获取的API密钥用于调用Dify聊天机器人API。
@@ -25,7 +25,7 @@
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">API基础地址</label> <label class="layui-form-label">API基础地址</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="text" name="base_url" placeholder="请输入Dify API基础地址" value="{$config_info.data.value.base_url ?? 'https://api.dify.ai/v1'}" class="layui-input"> <input type="text" name="base_url" placeholder="请输入Dify API基础地址" value="{$config_info.base_url ?? 'https://api.dify.ai/v1'}" class="layui-input">
</div> </div>
<div class="word-aux">Dify API的基础地址默认为https://api.dify.ai/v1</div> <div class="word-aux">Dify API的基础地址默认为https://api.dify.ai/v1</div>
</div> </div>
@@ -33,7 +33,7 @@
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">聊天接口端点:</label> <label class="layui-form-label">聊天接口端点:</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="text" name="chat_endpoint" placeholder="请输入聊天接口端点" value="{$config_info.data.value.chat_endpoint ?? '/chat-messages'}" class="layui-input"> <input type="text" name="chat_endpoint" placeholder="请输入聊天接口端点" value="{$config_info.chat_endpoint ?? '/chat-messages'}" class="layui-input">
</div> </div>
<div class="word-aux">聊天接口的端点,默认为/chat-messages</div> <div class="word-aux">聊天接口的端点,默认为/chat-messages</div>
</div> </div>
@@ -41,7 +41,7 @@
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label"><span class="required">*</span>状态:</label> <label class="layui-form-label"><span class="required">*</span>状态:</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="checkbox" name="status" value="1" lay-skin="switch" {if condition="isset($config_info.data.value.status) && $config_info.data.value.status == 1"} checked {/if}> <input type="checkbox" name="status" value="1" lay-skin="switch" {if condition="isset($config_info.status) && $config_info.status == 1"} checked {/if}>
</div> </div>
<div class="word-aux">启用或禁用智能客服功能</div> <div class="word-aux">启用或禁用智能客服功能</div>
</div> </div>