Пример #1
0
        private void OnLogin_AppliesResponse(Datagram datagram)
        {
            AppliesResponse res = datagram.UnSerialData <AppliesResponse>();

            if (RunningDatas.RequestTable.TryGetValue(datagram.RequestID, out RequestSender value))
            {
                value.RequestCallback(res);
            }
        }
Пример #2
0
        private void OnAppliesRequest(Datagram datagram)
        {
            FriendGroupApplyRequest request = datagram.UnSerialData <FriendGroupApplyRequest>();

            KXTUserAppliesPackage[] applies = UserAppliesReader.ReadApplies(request.UserID);

            List <AppliesResponse.ApplyPackage> list = new List <AppliesResponse.ApplyPackage>();

            foreach (KXTUserAppliesPackage i in applies)
            {
                UserInfoPackage user = new UserInfoPackage();
                SQLDB.SelectUserInfor(i.ApplierID, out user);

                list.Add(new AppliesResponse.ApplyPackage
                {
                    TargetType      = i.TargetType,
                    TargetID        = i.GroupID,
                    ApplierID       = i.ApplierID,
                    ApplierName     = user.Name,
                    ApplierDescribe = user.Describe,
                    ApplierPicture  = (byte)user.Photo,
                    ApplyTime       = i.ApplyTime,
                    Message         = i.Message
                });
            }

            AppliesResponse response = new AppliesResponse
            {
                Applies = list.ToArray()
            };

            datagram.DataType    = DatagramType.Client;
            datagram.MessageType = LoginMessageType.AppliesResponse;
            datagram.Datas       = response.ToByteArray();

            if (!Send(datagram.ToByteArray()))
            {
                Notify(IKXTServer.LogLevel.Error, "数据发送异常");
                Close();
            }
        }