/// <summary>
        /// 群主-加人
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public object GM_AddUsers(IGM_AddUsers model)
        {
            var mOGM_AddUsers = new OGM_AddUsers();
            var group         = new IM_Group();
            var users_add     = new List <IM_User>();

            var db_result = 0;

            using (var db = new ModelAC())
            {
                #region db
                group = db.IM_Group.SingleOrDefault(p => p.App_Id == APP_GUID && p.GroupId == model.GroupId);

                users_add = db.IM_User.Where(p => p.App_Id == APP_GUID && model.Accounts.Contains(p.UserId)).ToList();

                foreach (var user in users_add)
                {
                    var mIm_UserGroup = new Im_UserGroup();
                    mIm_UserGroup.IM_User_Id    = user.Id;
                    mIm_UserGroup.IM_Group_Id   = group.Id;
                    mIm_UserGroup.GroupPosition = IM_GroupPosition.Memeber;
                    db.Im_UserGroup.Add(mIm_UserGroup);
                }

                db_result = db.SaveChanges();
                #endregion
            }

            if (db_result > 0)
            {
                mOGM_AddUsers.Success = true;
                mOGM_AddUsers.Msg     = "添加群成员成功!";

                #region 连接组维护
                var app_accounts  = users_add.Select(p => HubKey.App__Account(app: APP, account: p.UserId)).ToList();
                var connectionIDs = Base_GetConnectionIds(app_accounts);

                foreach (var connectionId in connectionIDs)
                {
                    //将连接添加到指定的组
                    Groups.Add(connectionId, group.Id.ToString());
                }
                #endregion

                #region 更新相关群组聊表信息-发送系统通知
                Update_GM_AddUsers(group);
                #endregion

                return(CommonJson.camelObject(mOGM_AddUsers));
            }
            else
            {
                mOGM_AddUsers.Success = false;
                mOGM_AddUsers.Msg     = "添加群成员失败!";

                return(CommonJson.camelObject(mOGM_AddUsers));
            }
        }
        /// <summary>
        /// 通知→群组人员变更
        /// </summary>
        /// <param name="group"></param>
        private void Update_GM_AddUsers(IM_Group group)
        {//通知所有群组成员
            var resMembers    = Get_GroupMembers(group.GroupId);
            var app_accounts  = resMembers.Select(p => HubKey.App__Account(app: APP, account: p.Account)).ToList();
            var connectionIDs = Base_GetConnectionIds(app_accounts);

            foreach (var connectionId in connectionIDs)
            {
                var groupInfo = new OFG_GetGroups()
                {
                    Id            = group.Id.ToString(),
                    GroupId       = group.GroupId,
                    GroupName     = group.GroupName,
                    GroupPosition = IM_GroupPosition.Memeber,//管理员功能暂不实现
                    Members       = resMembers.ToArray <object>(),
                };
                //发送系统通知
                Clients.Client(connectionId).GM_AddUsers(CommonJson.camelObject(groupInfo));
            }
        }
        /// <summary>
        /// 发送-图片消息
        /// </summary>
        /// <returns></returns>
        public object Single_SendPicture(ISingle_SendText model)
        {
            var msg       = new IM_MsgSingle();
            var db_result = 0;

            using (var db = new ModelAC())
            {
                #region db
                msg.App_Id = APP_GUID;

                msg.MsgClientId = model.MsgClientId;
                msg.From_UserId =
                    db.IM_User.SingleOrDefault(p => p.App_Id == APP_GUID && p.UserId == model.From_UserId).Id;
                msg.To_UserId =
                    db.IM_User.SingleOrDefault(p => p.App_Id == APP_GUID && p.UserId == model.To_UserId).Id;

                msg.MsgTime = DateTime.Now;
                msg.IsRead  = false;
                msg.MsgType = model.MsgType;
                msg.MsgBody = model.MsgBody;

                db.IM_MsgSingle.Add(msg);
                db_result = db.SaveChanges();
                #endregion
            }

            var session_result = Single_updateSession(msg);

            if (db_result == 1)
            {
                var mOSingle_SendText = new OSingle_SendText()
                {
                    #region 输出
                    Id          = msg.Id.ToString(),
                    MsgClientId = msg.MsgClientId,
                    From_UserId = model.From_UserId,
                    To_UserId   = model.To_UserId,
                    MsgTime     = msg.MsgTime,
                    IsRead      = msg.IsRead,
                    MsgType     = msg.MsgType,
                    MsgBody     = msg.MsgBody,
                    #endregion
                };
                var jsonResult = CommonJson.camelObject(mOSingle_SendText);

                #region 消息分发
                string to__Account = HubKey.App__Account(app: APP, account: model.To_UserId);
                using (var db = new SignalR_MapUsersModel())
                {
                    var connections = db.Connections.Where(p => p.User_UserName == to__Account && p.Connected == true).ToList();
                    for (int i = 0; i < connections.Count(); i++)
                    {
                        Clients.Client(connections[i].ConnectionID).Single_SendPicture(jsonResult);
                    }
                }
                #endregion

                return(jsonResult);
            }
            else
            {
                return(null);
            }
        }