/// <summary> /// 登录 /// </summary> /// <param name="user"></param> /// <param name="password"></param> /// <param name="imei"></param> /// <returns></returns> public static int LoginByDevice(string user, string password, string imei) { if (!SnsCenterUser.CheckDevice(imei)) { throw (new Exception("禁止登录")); } int userId = 0; var snsCenterUser = new SnsCenterUser(user, password, imei); var snsUser = snsCenterUser.GetUserInfo(user); if (snsUser == null || snsUser.UserId <= 0) { userId = snsCenterUser.InsertSnsUser(); SnsCenterUser.AddLoginLog(imei, user); //过期移除 PassportExpired passportExpired; imeiMap.TryRemove(imei, out passportExpired); return(userId); } if (snsCenterUser.ValidatePassport(snsUser)) { return(snsUser.UserId); } SnsCenterUser.AddLoginLog(imei, user); return(userId); }
/// <summary> /// 登录 /// </summary> /// <param name="user"></param> /// <param name="password"></param> /// <param name="imei"></param> /// <param name="userType"></param> /// <param name="isCustom">use custom passport</param> /// <returns></returns> public static long LoginByDevice(string user, string password, string imei, out RegType userType, bool isCustom = false) { if (!SnsCenterUser.CheckDevice(imei)) { throw (new Exception("禁止登录")); } long userId = 0; try { var snsCenterUser = new SnsCenterUser(user, password, imei); var snsUser = snsCenterUser.GetUserInfo(user); if (snsUser == null || snsUser.UserId <= 0) { Guid gid; userType = Guid.TryParse(password, out gid) ? RegType.Guest : RegType.Normal; snsCenterUser.RegType = userType; userId = snsCenterUser.InsertSnsUser(isCustom); //过期移除 PassportExpired passportExpired; bool result = string.IsNullOrEmpty(imei) ? imeiMap.TryRemove(user, out passportExpired) : imeiMap.TryRemove(imei, out passportExpired); return(userId); } userType = snsUser.RegType; if (snsCenterUser.ValidatePassport(snsUser)) { return(snsUser.UserId); } } finally { SnsCenterUser.AddLoginLog(imei, user); } return(userId); }
/// <summary> /// 登录 /// </summary> /// <param name="user"></param> /// <param name="password"></param> /// <param name="deviceID"></param> /// <returns></returns> public static int LoginByDevice(string user, string password, string deviceID) { if (!SnsCenterUser.CheckDevice(deviceID)) { throw (new Exception("禁止登录")); } SnsCenterUser snsCenterUser = new SnsCenterUser(user, password, deviceID); int userID = snsCenterUser.GetUserId(); if (userID == 0 && !snsCenterUser.IsExist()) { userID = snsCenterUser.InsertSnsUser(); } SnsCenterUser.AddLoginLog(deviceID, user); return(userID); }