Browse Source

Merge branch 'im-internet-hospital' of huangwenjie/im.doctor into im-internet-hospital

huangwenjie 6 years ago
parent
commit
045cd6f9fd

+ 4 - 2
src/server/endpoints/v2/session.endpoint.js

@ -484,17 +484,19 @@ router.get(APIv2.Sessions.SessionUnreadMessages, function (req, res) {
/**
 * 获取所有会话未读消息数。
 *
 * 请求URL:/sessions/unread_message_count?user_id=xyz
 * 请求URL:/sessions/unread_message_count?user_id=xyz&type=1
 */
router.get(APIv2.Sessions.SessionsUnreadMessageCount, function (req, res) {
    let userId = req.query.user_id;
    let type = req.query.type;
    let sessions = new Sessions();
    ControllerUtil.regModelEventHandler(sessions, res);
    sessions.getAllSessionsUnreadMessageCount(userId);
    sessions.getAllSessionsUnreadMessageCount(userId,type);
});
/**
 * 获取指定会话未读消息数
 *

+ 14 - 2
src/server/models/sessions/sessions.js

@ -1245,7 +1245,7 @@ class Sessions extends RedisModel {
    /**
     * 获取所有会话的未读消息数。
     */
    getAllSessionsUnreadMessageCount(userId,handler) {
    getAllSessionsUnreadMessageCount(userId,type,handler) {
        let self = this;
        let count = 0;
        let patientCount = 0;
@ -1274,7 +1274,17 @@ class Sessions extends RedisModel {
            }
            for (let j in res) {
                //是否过滤指定类型
                if( type != null){
                    if(type != res[j].type){
                        continue;
                    }
                }
                if (res[j].type == SESSION_TYPES.SYSTEM) {
                    if (j == res.length - 1) {
                        if(handler){
                            handler(err,count);
@ -1284,6 +1294,8 @@ class Sessions extends RedisModel {
                    }
                    continue;
                }
                callback(res, j, res[j]);
            }
        });
@ -1850,7 +1862,7 @@ class Sessions extends RedisModel {
                });
                //im消息
                let sessions = new Sessions();
                sessions.getAllSessionsUnreadMessageCount(targetUserId,function (err,res) {
                sessions.getAllSessionsUnreadMessageCount(targetUserId,null,function (err,res) {
                    if(res){
                        count += res;
                    }