test(addon/aikefu): 测试会话管理及消息展示
This commit is contained in:
@@ -23,7 +23,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="layui-form-item">
|
<div class="layui-form-item">
|
||||||
<label class="layui-form-label">API基础地址:</label>
|
<label class="layui-form-label"><span class="required">*</span>API基础地址:</label>
|
||||||
<div class="layui-input-block">
|
<div class="layui-input-block">
|
||||||
<input type="text" name="base_url" placeholder="请输入Dify API基础地址" value="{$config_info.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>
|
||||||
|
|||||||
@@ -110,6 +110,14 @@
|
|||||||
</div>
|
</div>
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
<script type="text/html" id="statusTpl">
|
||||||
|
{{# if(d.status == 1) {
|
||||||
|
return '<span class="status-active">活跃</span>';
|
||||||
|
} else {
|
||||||
|
return '<span class="status-inactive">已结束</span>';
|
||||||
|
}}}
|
||||||
|
</script>
|
||||||
|
|
||||||
<!-- 简单消息列表模板 -->
|
<!-- 简单消息列表模板 -->
|
||||||
<script type="text/html" id="messageListTpl">
|
<script type="text/html" id="messageListTpl">
|
||||||
<div class="simple-message-list">
|
<div class="simple-message-list">
|
||||||
@@ -151,10 +159,10 @@
|
|||||||
width: '100%',
|
width: '100%',
|
||||||
cols: [[
|
cols: [[
|
||||||
{type: 'checkbox', fixed: 'left'},
|
{type: 'checkbox', fixed: 'left'},
|
||||||
{field: 'conversation_id', title: '会话ID', width: 200, align: 'center'},
|
{field: 'conversation_id', title: '会话ID', width: 240, align: 'center'},
|
||||||
{field: 'user_id', title: '用户ID', width: 150, align: 'center'},
|
{field: 'user_id', title: '用户ID', width: 150, align: 'center'},
|
||||||
{field: 'name', title: '会话名称', width: 180, align: 'center'},
|
{field: 'name', title: '会话名称', width: 180, align: 'center'},
|
||||||
{field: 'status', title: '状态', width: 100, align: 'center' },
|
{field: 'status', title: '状态', width: 100, align: 'center', templet: '#statusTpl' },
|
||||||
{field: 'create_time', title: '创建时间', width: 180, align: 'center'},
|
{field: 'create_time', title: '创建时间', width: 180, align: 'center'},
|
||||||
{field: 'update_time', title: '更新时间', width: 180, align: 'center'},
|
{field: 'update_time', title: '更新时间', width: 180, align: 'center'},
|
||||||
{fixed: 'right', title: '操作', width: 200, align: 'center', toolbar: '#barDemo'}
|
{fixed: 'right', title: '操作', width: 200, align: 'center', toolbar: '#barDemo'}
|
||||||
@@ -171,8 +179,8 @@
|
|||||||
return {
|
return {
|
||||||
"code": res.code,
|
"code": res.code,
|
||||||
"msg": res.msg,
|
"msg": res.msg,
|
||||||
"count": res.data.page_info.total,
|
"count": res.data ? (res.data.page_info ? res.data.page_info.total : 0) : 0,
|
||||||
"data": res.data.conversations
|
"data": res.data ? (res.data.conversations ? res.data.conversations : []) : []
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -153,13 +153,15 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.message-item.user .message-role {
|
.message-item.user .message-role {
|
||||||
color: rgba(255, 255, 255, 0.9);
|
color: rgba(255, 255, 255, 1);
|
||||||
text-align: right;
|
text-align: right;
|
||||||
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
.message-item.assistant .message-role {
|
.message-item.assistant .message-role {
|
||||||
color: #666;
|
color: #333;
|
||||||
text-align: left;
|
text-align: left;
|
||||||
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 状态标签样式 */
|
/* 状态标签样式 */
|
||||||
@@ -336,9 +338,11 @@
|
|||||||
var html = '';
|
var html = '';
|
||||||
if (list.length > 0) {
|
if (list.length > 0) {
|
||||||
list.forEach(function(item) {
|
list.forEach(function(item) {
|
||||||
var role = item.role === 'user' ? '用户' : '机器人';
|
// 使用用户ID作为角色显示
|
||||||
var roleClass = item.role === 'user' ? 'user' : 'assistant';
|
var role = item.user_id || (item.role === 'user' ? '用户' : '机器人');
|
||||||
var avatar = item.role === 'user' ? '<i class="layui-icon layui-icon-user"></i>' : '<i class="layui-icon layui-icon-cpu"></i>';
|
var roleClass = item.user_id ? 'user' : 'assistant';
|
||||||
|
// 用户使用用户图标,机器人使用AI图标
|
||||||
|
var avatar = item.user_id ? '<i class="layui-icon layui-icon-user"></i>' : '<i class="layui-icon layui-icon-chat-fill"></i>';
|
||||||
|
|
||||||
html += '<div class="message-item ' + roleClass + '">';
|
html += '<div class="message-item ' + roleClass + '">';
|
||||||
if (item.role === 'assistant') {
|
if (item.role === 'assistant') {
|
||||||
|
|||||||
Reference in New Issue
Block a user