private void OnUpdateEmailVerify(Datagram datagram) { UpdateEmailVerify req = datagram.UnSerialData <UpdateEmailVerify>(); UpdateEmailResponse response = new UpdateEmailResponse(); if (EmailRequestCache.TryRemove(req.NextLabel, out EmailRequestPackage value)) { if (InternalTools.VerificateCode(value.Verify, req.Verifies)) { Guid guid = Guid.NewGuid(); if (SQLDB.UpdateEmail(value.UserID, value.Email)) { response.NextLabel = guid; } } } datagram.DataType = DatagramType.Client; datagram.MessageType = LoginMessageType.UpdateEmailResult; datagram.Datas = response.ToByteArray(); if (!Send(datagram.ToByteArray())) { Notify(IKXTServer.LogLevel.Error, "数据发送异常"); Close(); } }
private void OnUpdatePWVerifyReq(Datagram datagram) { UpdatePWVerifyReq req = datagram.UnSerialData <UpdatePWVerifyReq>(); UpdatePWResponse response = new UpdatePWResponse(); if (EmailRequestCache.TryRemove(req.NextLabel, out EmailRequestPackage value)) { if (InternalTools.VerificateCode(value.Verify, req.Verifies)) { Guid guid = Guid.NewGuid(); if (OperationFinishCache.TryAdd ( guid, new KeyValuePair <string, DateTime>(value.Email, DateTime.Now) )) { response.NextLabel = guid; } } } datagram.DataType = DatagramType.Client; datagram.MessageType = LoginMessageType.UpdatePWVerifyRes; datagram.Datas = response.ToByteArray(); if (!Send(datagram.ToByteArray())) { Notify(IKXTServer.LogLevel.Error, "数据发送异常"); Close(); } }
private void OnUpdatePWFinishReq(Datagram datagram) { UpdatePWFinishReq req = datagram.UnSerialData <UpdatePWFinishReq>(); UpdatePWResponse response = new UpdatePWResponse(); if (OperationFinishCache.TryGetValue ( req.NextLabel, out KeyValuePair <string, DateTime> value )) { string user_id = InternalTools.GetNewUserID(); if (SQLDB.UpdatePassword(value.Key, req.Password)) { response.NextLabel = Guid.NewGuid(); } } datagram.DataType = DatagramType.Client; datagram.MessageType = LoginMessageType.UpdatePWFinishRes; datagram.Datas = response.ToByteArray(); if (!Send(datagram.ToByteArray())) { Notify(IKXTServer.LogLevel.Error, "数据发送异常"); Close(); } }
private void OnUpdateEmailReq(Datagram datagram) { UpdateEmailReq req = datagram.UnSerialData <UpdateEmailReq>(); UpdateEmailResponse response = new UpdateEmailResponse(); if (!SQLDB.CheckEmail(req.UserEmail)) { if (SQLDB.SelectUserInfor(req.UserID, out UserInfoPackage info)) { Guid request_id = Guid.NewGuid(); byte[] ver_code = InternalTools.GenerateVerification(); if (EmailRequestCache.TryAdd(request_id, new EmailRequestPackage { UserID = info.ID, Email = req.UserEmail, Verify = ver_code, Time = DateTime.Now })) { if ( InternalTools.SendUpdateEmailVerificateEmail ( req.UserEmail, InternalTools.GenerateVerification(ver_code) ) ) { response.NextLabel = request_id; } } } } datagram.DataType = DatagramType.Client; datagram.MessageType = LoginMessageType.UpdateEmailRes; datagram.Datas = response.ToByteArray(); if (!Send(datagram.ToByteArray())) { Notify(IKXTServer.LogLevel.Error, "数据发送异常"); Close(); } }
private void OnRegistFinishReq(Datagram datagram) { RegistFinishReq req = datagram.UnSerialData <RegistFinishReq>(); RegistResponse response = new RegistResponse(); if (OperationFinishCache.TryGetValue ( req.NextLabel, out KeyValuePair <string, DateTime> value )) { string user_id = InternalTools.GetNewUserID(); if (SQLDB.Register(new RegisterPackage { ID = user_id, Name = req.Name, Email = value.Key, Describe = req.Describe, Password = req.Password, Phone = null, Photo = req.Picture })) { response.NextLabel = DataConvert.GetGuid(user_id); UserInfoReader.CreateUser(user_id); UserAppliesReader.CreateUser(user_id); CloudReader.AddUser(user_id); System.IO.Directory.CreateDirectory(CloudRootPath + "\\" + IKXTServer.DataConvert.GetGuid(user_id).ToString()); } } datagram.DataType = DatagramType.Client; datagram.MessageType = LoginMessageType.RegistFinishRes; datagram.Datas = response.ToByteArray(); if (!Send(datagram.ToByteArray())) { Notify(IKXTServer.LogLevel.Error, "数据发送异常"); Close(); } }