!109 czh-20260723-测试页字段名toUserValues统一改为toUserValueList

* czh-20260723-测试页字段名toUserValues统一改为toUserValueList
* czh-20260723-即时通测试页适配sendBatch批量发送
This commit is contained in:
陈志浩
2026-07-23 07:07:35 +00:00
parent 15e7e10b83
commit a873950347
+15 -18
View File
@@ -19,9 +19,9 @@
<a-input v-model:value="formData.toUserKeyType" placeholder="Email" />
<span style="color: #8c8c8c; font-size: 12px; margin-left: 8px"> EmailPhone 对应即时通用户关联类型</span>
</a-form-item>
<a-form-item label="用户标识值">
<a-input v-model:value="formData.toUserValue" placeholder="user@example.com" />
<span style="color: #8c8c8c; font-size: 12px; margin-left: 8px">接收人的具体标识值</span>
<a-form-item label="用户标识值(批量)">
<a-input v-model:value="formData.toUserValueList" placeholder="user1@x.com, user2@x.com" />
<span style="color: #8c8c8c; font-size: 12px; margin-left: 8px">逗号分隔支持单个或多个接收人</span>
</a-form-item>
<a-form-item label="消息标题">
<a-input v-model:value="formData.title" placeholder="测试消息标题" />
@@ -46,8 +46,8 @@
<span style="color: #8c8c8c; font-size: 12px; margin-left: 8px">默认 JsonListView</span>
</a-form-item>
<a-form-item label="业务数据 data(可选)">
<a-textarea v-model:value="formData.dataJson" placeholder='{"id":"123","name":"zhangsan"}' :rows="3" />
<span style="color: #8c8c8c; font-size: 12px; margin-left: 8px">JSON 格式发送给即时通的业务数据</span>
<a-textarea v-model:value="formData.data" placeholder='[{"id":"123","name":"zhangsan"}]' :rows="3" />
<span style="color: #8c8c8c; font-size: 12px; margin-left: 8px">JSON 数组字符串 [{"key":"value"}]默认 ""</span>
</a-form-item>
<a-form-item :wrapper-col="{ offset: 4, span: 18 }">
@@ -135,14 +135,14 @@ const formData = reactive({
appId: 'test-app',
appSecret: 'test-secret',
toUserKeyType: 'Email',
toUserValue: 'test@example.com',
toUserValueList: 'test@example.com',
title: '测试消息',
content: '这是一条来自督办系统的测试消息',
linkUrl: '',
linkTitle: '',
linkOpenMode: 'Exe',
dataFormat: 'JsonListView',
dataJson: '',
data: '',
});
const requestInfo = reactive<Record<string, any>>({});
@@ -169,14 +169,14 @@ function handleFillMock() {
formData.appId = 'test-app';
formData.appSecret = 'test-secret';
formData.toUserKeyType = 'Email';
formData.toUserValue = 'test@example.com';
formData.toUserValueList = 'test@example.com';
formData.title = '测试消息';
formData.content = '这是一条来自督办系统的测试消息';
formData.linkUrl = '';
formData.linkTitle = '';
formData.linkOpenMode = 'Exe';
formData.dataFormat = 'JsonListView';
formData.dataJson = '';
formData.data = '';
addLog('info', '已填充 Mock 默认值');
}
@@ -185,13 +185,13 @@ async function handleSend() {
addLog('error', '请填写 API 地址(host');
return;
}
if (!formData.toUserKeyType || !formData.toUserValue) {
if (!formData.toUserKeyType || !formData.toUserValueList) {
addLog('error', '请填写用户标识类型和值');
return;
}
sending.value = true;
addLog('info', `开始发送消息 → ${formData.host}`);
addLog('info', `开始批量发送消息 → ${formData.host}`);
// 清空上次结果
Object.keys(requestInfo).forEach(k => delete requestInfo[k]);
@@ -199,11 +199,8 @@ async function handleSend() {
try {
const res = await defHttp.post({
url: '/ksim/test/send',
data: {
...formData,
data: formData.dataJson ? JSON.parse(formData.dataJson) : null,
},
url: '/ksim/test/sendBatch',
data: formData,
});
if (res?.request) {
@@ -239,14 +236,14 @@ function handleReset() {
formData.appId = 'test-app';
formData.appSecret = 'test-secret';
formData.toUserKeyType = 'Email';
formData.toUserValue = 'test@example.com';
formData.toUserValueList = 'test@example.com';
formData.title = '测试消息';
formData.content = '这是一条来自督办系统的测试消息';
formData.linkUrl = '';
formData.linkTitle = '';
formData.linkOpenMode = 'Exe';
formData.dataFormat = 'JsonListView';
formData.dataJson = '';
formData.data = '';
Object.keys(requestInfo).forEach(k => delete requestInfo[k]);
Object.keys(responseInfo).forEach(k => delete responseInfo[k]);
eventLogs.value = [];