Kaynağa Gözat

配置修改

yeshijie 7 yıl önce
ebeveyn
işleme
960d938952
1 değiştirilmiş dosya ile 55 ekleme ve 4 silme
  1. 55 4
      src/server/models/client/wechat.client.js

+ 55 - 4
src/server/models/client/wechat.client.js

@ -61,7 +61,6 @@ class WechatClient extends RedisModel {
        if (message&&(message.content_type == CONTENT_TYPES.PlainText ||
            message.content_type == CONTENT_TYPES.Image ||
            message.content_type == CONTENT_TYPES.Audio||
            message.content_type == CONTENT_TYPES.PrescriptionCheck ||
            message.content_type == CONTENT_TYPES.PrescriptionBloodStatus ||
            message.content_type == CONTENT_TYPES.PrescriptionFollowupContent)) {
            let patientClient = clientCache.findById(targetUserId);
@ -83,7 +82,20 @@ class WechatClient extends RedisModel {
                }
            } else {
                log.info("User's wechat endpoint is not online, sending via wechat template message. User id: ", targetUserId);
                WechatClient.sendViaMessageTemplate(targetUserId, targetUserName, message);
                var isSendWXTem = true;//是否发送微信模板
                if(message.content_type == CONTENT_TYPES.PrescriptionBloodStatus||message.content_type == CONTENT_TYPES.PrescriptionFollowupContent){
                    var content = JSON.parse(message.content);
                    if(content.isSendWxTemplate){
                        message.content = content.text;
                    }else {
                        isSendWXTem = false;
                    }
                }
                if(isSendWXTem){
                    WechatClient.sendViaMessageTemplate(targetUserId, targetUserName, message);
                }
            }
        } else if(message.content_type == CONTENT_TYPES.TopicEnd){
            let patientClient = clientCache.findById(targetUserId);
@ -226,7 +238,26 @@ class WechatClient extends RedisModel {
        }
        var count = 0;
        if(doctorClient&&sendClient&&sendClient.sessionId==doctorClient.sessionId){
        if(message.content_type == CONTENT_TYPES.PrescriptionBloodStatus ||message.content_type == CONTENT_TYPES.PrescriptionFollowupContent){
            //续方消息特殊处理
            if(doctorClient&&message.session_id==doctorClient.sessionId){
                WechatClient.updateParticipantLastFetchTime(doctorClient.sessionId, doctorId, ObjectUtil.timestampToLong(message.timestamp));
                doctorClient.socket.emit('message', {
                    id: message.id,
                    session_id: message.session_id,
                    sender_id: message.sender_id,
                    sender_name: message.sender_name,
                    content_type: message.content_type,
                    content: message.content,
                    timestamp: ObjectUtil.timestampToLong(message.timestamp),
                    type: message.content_type,          // legacy support
                    name: message.sender_name,
                });
            }else{
                count++;
            }
        }else if(doctorClient&&sendClient&&sendClient.sessionId==doctorClient.sessionId){
            WechatClient.updateParticipantLastFetchTime(doctorClient.sessionId, doctorId, ObjectUtil.timestampToLong(message.timestamp));
            doctorClient.socket.emit('message', {
                id: message.id,
@ -243,8 +274,28 @@ class WechatClient extends RedisModel {
            count++;
        }
        //发送pc端
        if(pc_doctorClient&&sendClient&&sendClient.sessionId==pc_doctorClient.sessionId){
        if(message.content_type == CONTENT_TYPES.PrescriptionBloodStatus ||message.content_type == CONTENT_TYPES.PrescriptionFollowupContent){
            //续方消息特殊处理
            if(pc_doctorClient&&message.session_id==pc_doctorClient.sessionId){
                WechatClient.updateParticipantLastFetchTime(pc_doctorClient.sessionId, doctorId, ObjectUtil.timestampToLong(message.timestamp));
                pc_doctorClient.socket.emit('message', {
                    id: message.id,
                    session_id: message.session_id,
                    sender_id: message.sender_id,
                    sender_name: message.sender_name,
                    content_type: message.content_type,
                    content: message.content,
                    timestamp: ObjectUtil.timestampToLong(message.timestamp),
                    type: message.content_type,          // legacy support
                    name: message.sender_name,
                });
            }else{
                count++;
            }
        }else if(pc_doctorClient&&sendClient&&sendClient.sessionId==pc_doctorClient.sessionId){
            WechatClient.updateParticipantLastFetchTime(pc_doctorClient.sessionId, doctorId, ObjectUtil.timestampToLong(message.timestamp));
            pc_doctorClient.socket.emit('message', {
                id: message.id,