Files
xk-doctor-wx/utils/chat/messagePreview.js
李琦 eacca1bf7b 1. 开方线上功能基本完成
2. 修复了一些抽屉组件的滑动失效问题
2026-05-14 14:29:51 +08:00

55 lines
1.4 KiB
JavaScript

/**
* 会话列表「最后一条消息」预览文案(与患者端 ChatManager.getMessagePreview 对齐)
* @param {Object} message
* @returns {string}
*/
export function getMessagePreview(message) {
if (!message || message.message_type === undefined) {
return '您有一条新消息';
}
const messageType = message.message_type;
const content = message.message_content;
switch (messageType) {
case 0:
return content != null ? String(content) : '';
case 1:
return '[图片]';
case 2:
return '[语音消息]';
case 3:
return '[视频]';
case 4:
return '[处方单]';
case 5:
return '[文件]';
case 6:
return '[视频通话]';
case 7:
return '[语音通话]';
case 9:
try {
const parsed = typeof content === 'object' ? content : JSON.parse(content);
if (parsed.type === 'price_update') {
return parsed.message || '[价格更新]';
}
if (parsed.type === 'price_adjust') {
return parsed.message || '[价格调整]';
}
return '[系统消息]';
} catch (e) {
return '[系统消息]';
}
case 10:
return '[挂号信息]';
case 11:
return '[就诊信息]';
case 12:
return '[商品推荐]';
case 13:
return '[问诊已结束]';
default:
return '您有一条新消息';
}
}