コード例 #1
0
        /// <summary>
        /// 接收到好友申请
        /// </summary>
        /// <param name="joinGroupPackage"></param>
        /// <returns></returns>
        public static async Task RecvJoinGroup(Model.JoinGroupPackage joinGroupPackage)
        {
            //  var lst = await SDKProperty.SQLiteConn.Table<DB.JoinGroupDB>().Where(j => j.groupId == joinGroup.groupId && j.userId == joinGroup.userId).ToListAsync();
            var item = await SDKProperty.SQLiteConn.FindAsync <DB.JoinGroupDB>(j => j.groupId == joinGroupPackage.data.groupId && j.userId == joinGroupPackage.data.userId);

            if (item != null)
            {
                return;
            }
            else
            {
                DB.JoinGroupDB joinGroup = new DB.JoinGroupDB()
                {
                    msgId            = joinGroupPackage.id,
                    JoinGroupPackage = Util.Helpers.Json.ToJson(joinGroupPackage),
                    userId           = joinGroupPackage.data.userId,
                    groupId          = joinGroupPackage.data.groupId
                };
                try
                {
                    await SDKProperty.SQLiteConn.InsertAsync(joinGroup);
                }
                catch (Exception ex)
                {
                    SDKClient.logger.Content("接收好友申请").Error($"消息处理异常:error:{ex.Message},stack:{ex.StackTrace};\r\n");
                }
            }
        }
コード例 #2
0
        public static async Task <bool> DeleteJoinGroupItem(Model.JoinGroupPackage Package)
        {
            int i = await SDKProperty.SQLiteConn.ExecuteAsync($"delete from JoinGroupDB where groupId={Package.data.groupId} and userId={Package.data.userId} ");

            return(i > 0 ? true : false);
            //var lst = await SDKProperty.SQLiteConn.Table<DB.JoinGroupDB>().Where(j => j.groupId == Package.data.groupId && j.userId == Package.data.userId).ToListAsync();
            //foreach (var item in lst)
            //{
            //    await SDKProperty.SQLiteConn.DeleteAsync(item);
            //}
        }
コード例 #3
0
        public static async Task <DB.messageDB> SendMsgtoDB(Model.JoinGroupPackage package)
        {
            DB.messageDB msg = new DB.messageDB()
            {
                from         = package.from,
                to           = package.to,
                msgTime      = package.time.Value,
                msgId        = package.id,
                body         = Util.Helpers.Json.ToJson(package.data),
                optionRecord = package.data.isAccepted == true?1:0,//
                roomId       = package.data.groupId,
                Source       = Util.Helpers.Json.ToJson(package),
                roomType     = 1
            };
            if (!package.data.isAccepted)
            {
                msg.content = $"[{package.data.userName}] 申请进入群聊";
            }
            else
            {
                if (package.data.userId != SDKClient.Instance.property.CurrentAccount.userID)
                {
                    msg.content = $"[{package.data.userName}] 进入群聊";
                }
                else
                {
                    msg.content = $"你进入群聊";
                }
            }

            msg.msgType = nameof(SDKProperty.MessageType.notification);
            try
            {
                await SDKProperty.SQLiteConn.InsertAsync(msg);

                return(msg);
            }
            catch (Exception ex)
            {
                SDKClient.logger.Error($"消息处理异常:error:{ex.Message},stack:{ex.StackTrace};\r\n");
                return(null);
            }
        }