private void OnAccountRegisterResponse(byte[] buffer) { AccountRegisterResponseProto proto = AccountRegisterResponseProto.GetProto(buffer); if (!proto.IsSuccess) { TipsUtil.ShowTextTips(1000105); } else { //注册成功 //TipsUtil.ShowTextTips("用户编号 = " + proto.UserId); if (m_RegisterWindow != null) { Stat.Register(proto.UserId, m_RegisterWindow.IFAccount.text); PlayerPrefsUtil.SetAccountID(proto.UserId); PlayerPrefsUtil.SetAccountUserName(m_RegisterWindow.IFAccount.text); PlayerPrefsUtil.SetAccountPwd(m_RegisterWindow.IFPwd.text); m_RegisterWindow.CloseAndOpenNext(Window.GameServerEnter); } else { Stat.Register(proto.UserId, PlayerPrefsUtil.GetAccountUserName()); WindowManager.Instance.OpenWindow(Window.GameServerEnter); } } }
private void OnAccountRegisterRequest(Role role, byte[] buffer) { AccountRegisterRequestProto proto = AccountRegisterRequestProto.GetProto(buffer); //Console.WriteLine(proto.Account + " " + proto.Pwd + " " + proto.Channel); AccountRegisterResponseProto responseProto = Register(proto.Account, proto.Pwd, proto.Channel, proto.DeviceIdentifier, proto.DeviceModel); //AccountCacheModel.Instance.Register role.ClientSocket.SendMsg(responseProto.ToArray()); }
public AccountRegisterResponseProto Register(string userName, string pwd, string chennelId, string deviceIdentifier, string deviceModel) { AccountRegisterResponseProto retProto = new AccountRegisterResponseProto(); //1.判断用户名是否存在 //2.如果存在添加数据 using (SqlConnection conn = new SqlConnection(DBConn.DBAccount)) { conn.Open(); //开启事务 只打开一次数据库 SqlTransaction trans = conn.BeginTransaction(); List <AccountEntity> list = GetListWithTran(this.TableName, "Id", "UserName='******'", trans: trans, isAutoStatus: false); Console.WriteLine(list.Count); //Console.WriteLine(list[0].Mobile + " " + list[0].Mail+" "+ list[0].Status); if (list == null || list.Count == 0) { //说明用户名不存在 可以添加数据 AccountEntity entity = new AccountEntity(); entity.Status = Mmcoy.Framework.AbstractBase.EnumEntityStatus.Released; entity.UserName = userName; entity.Pwd = pwd; entity.ChannelId = chennelId; entity.LastLogOnServerTime = DateTime.Now; entity.CreateTime = DateTime.Now; entity.UpdateTime = DateTime.Now; entity.DeviceIdentifier = deviceIdentifier; entity.DeviceModel = deviceModel; MFReturnValue <object> ret = this.Create(trans, entity); if (!ret.HasError) { retProto.IsSuccess = true; retProto.UserId = (int)ret.OutputValues["Id"]; trans.Commit(); } else { retProto.IsSuccess = false; retProto.MsgCode = 102; trans.Rollback(); } } else { retProto.IsSuccess = false; retProto.MsgCode = 102; } } return(retProto); }
public static AccountRegisterResponseProto GetProto(byte[] buffer) { AccountRegisterResponseProto proto = new AccountRegisterResponseProto(); using (MMO_MemoryStream ms = new MMO_MemoryStream(buffer)) { proto.IsSuccess = ms.ReadBool(); if (proto.IsSuccess) { proto.UserId = ms.ReadInt(); } else { proto.MsgCode = ms.ReadInt(); } } return(proto); }