protected void Page_Load(object sender, EventArgs e) { string token = XCCloudManaUserTokenBusiness.SetToken("15307199901", "100027", "100027", 0); string s = token; Response.Write(token); }
public static void XCCloudManaUserInit() { try { XCCloudManaUserTokenBusiness.Init(); LogHelper.SaveLog(TxtLogType.SystemInit, "XcManaUserInit Sucess"); } catch (Exception ex) { LogHelper.SaveLog(TxtLogType.SystemInit, "XcManaUserInit..." + Utils.GetException(ex)); } }
//验证签名 private bool CheckSignKey(SignKeyEnum signKeyEnum, Dictionary <string, object> dicParas, out string signkeyToken, out string errMsg) { errMsg = string.Empty; signkeyToken = string.Empty; if (signKeyEnum == SignKeyEnum.MobileToken) { string mobile = string.Empty; string mobileToken = Utils.GetDictionaryValue <string>(dicParas, "mobileToken").ToString(); string storeId = Utils.GetDictionaryValue <string>(dicParas, "storeId").ToString(); //如果是手机token if (MobileTokenBusiness.ExistToken(mobileToken, out mobile)) { MobileTokenModel mobileTokenTokenModel = new MobileTokenModel(mobile); dicParas.Add(Constant.MobileTokenModel, mobileTokenTokenModel); return(true); } else { errMsg = "手机令牌无效"; return(false); } } else if (signKeyEnum == SignKeyEnum.XCGameMemberToken) { string token = dicParas["memberToken"].ToString(); //验证token XCGameMemberTokenModel memberTokenKeyModel = MemberTokenBusiness.GetMemberTokenModel(token); if (memberTokenKeyModel == null) { errMsg = "token无效"; return(false); } else { dicParas.Add(Constant.XCGameMemberTokenModel, memberTokenKeyModel); return(true); } } else if (signKeyEnum == SignKeyEnum.XCGameMemberOrMobileToken) { string mobile = string.Empty; string mobileToken = Utils.GetDictionaryValue <string>(dicParas, "mobileToken").ToString(); string memberToken = Utils.GetDictionaryValue <string>(dicParas, "memberToken").ToString(); if (string.IsNullOrEmpty(mobileToken) && string.IsNullOrEmpty(memberToken)) { errMsg = "手机令牌或会员令牌不正确"; return(false); } else if (!string.IsNullOrEmpty(mobileToken) && string.IsNullOrEmpty(memberToken)) { //如果是手机token if (MobileTokenBusiness.ExistToken(mobileToken, out mobile)) { MobileTokenModel mobileTokenTokenModel = new MobileTokenModel(mobile); dicParas.Add(Constant.MobileTokenModel, mobileTokenTokenModel); return(true); } else { errMsg = "手机令牌无效"; return(false); } } else if (!string.IsNullOrEmpty(memberToken) && string.IsNullOrEmpty(mobileToken)) { XCGameMemberTokenModel memberTokenModel = MemberTokenBusiness.GetMemberTokenModel(memberToken); if (memberTokenModel != null) { dicParas.Add(Constant.XCGameMemberTokenModel, memberTokenModel); return(true); } else { errMsg = "会员令牌无效"; return(false); } } else if (!string.IsNullOrEmpty(memberToken) && !string.IsNullOrEmpty(mobileToken)) { //手机token验证 if (!MobileTokenBusiness.ExistToken(mobileToken, out mobile)) { errMsg = "手机令牌无效"; return(false); } MobileTokenModel mobileTokenModel = new MobileTokenModel(mobile); dicParas.Add(Constant.MobileTokenModel, mobileTokenModel); //会员token XCGameMemberTokenModel memberTokenModel = MemberTokenBusiness.GetMemberTokenModel(memberToken); if (memberTokenModel == null) { errMsg = "会员令牌无效"; return(false); } dicParas.Add(Constant.XCGameMemberTokenModel, memberTokenModel); //会员token和手机token手机号对比 if (!memberTokenModel.Mobile.Equals(mobileTokenModel.Mobile)) { errMsg = "手机令牌和会员令牌手机号不一致"; return(false); } return(true); } return(true); } else if (signKeyEnum == SignKeyEnum.XCGameUserCacheToken) { string mobile = dicParas.ContainsKey("mobile") ? dicParas["mobile"].ToString() : string.Empty; string UserName = dicParas.ContainsKey("UserName") ? dicParas["UserName"].ToString() : string.Empty; string PassWord = dicParas.ContainsKey("PassWord") ? dicParas["PassWord"].ToString() : string.Empty; string storeId = dicParas.ContainsKey("storeId") ? dicParas["storeId"].ToString() : string.Empty; if (string.IsNullOrEmpty(storeId)) { errMsg = "门店Id不能为空"; return(false); } if (string.IsNullOrEmpty(UserName)) { errMsg = "用户名不能为空"; return(false); } if (string.IsNullOrEmpty(PassWord)) { errMsg = "密码不能为空"; return(false); } if (string.IsNullOrEmpty(mobile)) { errMsg = "手机号码不能为空"; return(false); } return(true); } else if (signKeyEnum == SignKeyEnum.XCCloudUserCacheToken) { string token = dicParas["userToken"].ToString(); //验证token XCCloudUserTokenModel userTokenKeyModel = XCCloudUserTokenBusiness.GetUserTokenModel(token); if (userTokenKeyModel == null) { errMsg = "token无效"; return(false); } else { dicParas.Add(Constant.XCCloudUserTokenModel, userTokenKeyModel); return(true); } } else if (signKeyEnum == SignKeyEnum.MethodToken) { return(true); } else if (signKeyEnum == SignKeyEnum.XCGameAdminToken) { string userToken = dicParas.ContainsKey("userToken") ? dicParas["userToken"].ToString() : string.Empty; string configUnionId = System.Configuration.ConfigurationManager.AppSettings["BossUnionId"].ToString(); string unionId = string.Empty; if (!UnionIdTokenBusiness.ExistToken(userToken, out unionId)) { errMsg = "用户令牌无效"; return(false); } if (!configUnionId.Contains(unionId)) { errMsg = "用户没有授权"; return(false); } return(true); } else if (signKeyEnum == SignKeyEnum.XCGameManaUserToken) { string userToken = dicParas.ContainsKey("userToken") ? dicParas["userToken"].ToString() : string.Empty; XCCloudManaUserTokenModel userTokenModel = XCCloudManaUserTokenBusiness.GetManaUserTokenModel(userToken); if (userTokenModel == null) { errMsg = "用户没有授权"; return(false); } dicParas.Add(Constant.XCGameManaUserToken, userTokenModel); return(true); } else if (signKeyEnum == SignKeyEnum.XCGameManamAdminUserToken) { string userToken = dicParas.ContainsKey("userToken") ? dicParas["userToken"].ToString() : string.Empty; XCGameManaAdminUserTokenModel tokenModel = XCGameManaAdminUserTokenBusiness.GetTokenModel(userToken); if (tokenModel == null) { errMsg = "用户没有授权"; return(false); } dicParas.Add(Constant.XCGameManamAdminUserToken, tokenModel); return(true); } else { string token = dicParas["token"].ToString(); string signKey = dicParas["signkey"].ToString(); errMsg = string.Empty; signkeyToken = "default"; return(true); } }
public object registerUser(Dictionary <string, object> dicParas) { try { string storeId = dicParas.ContainsKey("storeId") ? dicParas["storeId"].ToString() : string.Empty; string mobile = dicParas.ContainsKey("mobile") ? dicParas["mobile"].ToString() : string.Empty; string smsCode = dicParas.ContainsKey("smsCode") ? dicParas["smsCode"].ToString() : string.Empty; string errMsg = string.Empty; int userId = 0; if (string.IsNullOrEmpty(storeId)) { return(ResponseModelFactory.CreateModel(isSignKeyReturn, Return_Code.T, "", Result_Code.F, "门店号码不正确")); } if (string.IsNullOrEmpty(mobile)) { return(ResponseModelFactory.CreateModel(isSignKeyReturn, Return_Code.T, "", Result_Code.F, "手机号码不正确")); } if (string.IsNullOrEmpty(smsCode)) { return(ResponseModelFactory.CreateModel(isSignKeyReturn, Return_Code.T, "", Result_Code.F, "请输入验证码")); } //验证短信验证码 string key = mobile + "_" + smsCode; if (!FilterMobileBusiness.IsTestSMS && !FilterMobileBusiness.ExistMobile(mobile)) { if (!SMSCodeCache.IsExist(key)) { return(ResponseModelFactory.CreateModel(isSignKeyReturn, Return_Code.T, "", Result_Code.F, "短信验证码无效")); } } if (SMSCodeCache.IsExist(key)) { SMSCodeCache.Remove(key); } //验证门店是否有效 StoreBusiness sb = new StoreBusiness(); StoreCacheModel storeModel = null; if (!sb.IsEffectiveStore(storeId, ref storeModel, out errMsg)) { return(ResponseModelFactory.CreateModel(isSignKeyReturn, Return_Code.T, "", Result_Code.F, errMsg)); } if (storeModel.StoreDBDeployType == 0) { //验证用户在分库是否存在 XCCloudService.BLL.IBLL.XCGame.IUserService userService = BLLContainer.Resolve <XCCloudService.BLL.IBLL.XCGame.IUserService>(storeModel.StoreDBName); var gameUserModel = userService.GetModels(p => p.Mobile.Equals(mobile, StringComparison.OrdinalIgnoreCase)).FirstOrDefault <XCCloudService.Model.XCGame.u_users>(); if (gameUserModel == null) { return(ResponseModelFactory.CreateModel(isSignKeyReturn, Return_Code.T, "", Result_Code.F, "未查询到该用户")); } userId = gameUserModel.UserID; } else if (storeModel.StoreDBDeployType == 1) { string sn = System.Guid.NewGuid().ToString().Replace("-", ""); UDPSocketCommonQueryAnswerModel answerModel = null; string radarToken = string.Empty; if (DataFactory.SendDataUserPhoneQuery(sn, storeModel.StoreID.ToString(), storeModel.StorePassword, mobile, out radarToken, out errMsg)) { } else { return(ResponseModelFactory.CreateModel(isSignKeyReturn, Return_Code.T, "", Result_Code.F, errMsg)); } answerModel = null; int whileCount = 0; while (answerModel == null && whileCount <= 25) { //获取应答缓存数据 whileCount++; System.Threading.Thread.Sleep(1000); answerModel = UDPSocketCommonQueryAnswerBusiness.GetAnswerModel(sn, 1); } if (answerModel != null) { UserPhoneQueryResultNotifyRequestModel model = (UserPhoneQueryResultNotifyRequestModel)(answerModel.Result); //移除应答缓存数据 UDPSocketCommonQueryAnswerBusiness.Remove(sn); if (model.Result_Code == "0") { return(ResponseModelFactory.CreateModel(isSignKeyReturn, Return_Code.T, "", Result_Code.F, "未查询到该用户")); } } else { return(ResponseModelFactory.CreateModel(isSignKeyReturn, Return_Code.T, "", Result_Code.F, "系统没有响应")); } userId = 0;//本地库用0 } else { return(ResponseModelFactory.CreateModel(isSignKeyReturn, Return_Code.T, "", Result_Code.F, "门店配置无效")); } //验证用户在总库是否已注册 XCCloudService.BLL.IBLL.XCGameManager.IUserService userServiceManager = BLLContainer.Resolve <XCCloudService.BLL.IBLL.XCGameManager.IUserService>(); var userRegisterModel = userServiceManager.GetModels(p => p.Mobile.Equals(mobile) && p.StoreId.Equals(storeId)).FirstOrDefault <XCCloudService.Model.XCGameManager.t_user>(); if (userRegisterModel == null) { //添加注册用户 XCCloudService.Model.XCGameManager.t_user t_user = new XCCloudService.Model.XCGameManager.t_user(); t_user.Mobile = mobile; t_user.StoreId = storeId; t_user.CreateTime = System.DateTime.Now; t_user.OpenId = ""; if (!userServiceManager.Add(t_user)) { return(ResponseModelFactory.CreateModel(isSignKeyReturn, Return_Code.T, "", Result_Code.F, "添加注册用户失败")); } } //获取用户token //云库不用userId string token = XCCloudManaUserTokenBusiness.SetToken(mobile, storeId, storeModel.StoreName, userId); List <XCCloudManaUserTokenResultModel> list = null; XCCloudManaUserTokenBusiness.GetUserTokenModel(mobile, ref list); var obj = new { userToken = token, storeList = list }; return(ResponseModelFactory.CreateAnonymousSuccessModel(isSignKeyReturn, obj)); } catch (Exception e) { throw e; } }