/// <summary> /// 20200629 用户授权 通过解密获取unionid 再查询是否是泰便利注册用户 /// </summary> public UserInfoResModel EasyDecryptByDE(WeChatCodeDEModel codeModel, string appId, string appSecret) { UserInfoResModel resModel = new UserInfoResModel(); BaseViewModel model = new BaseViewModel(); Dtol.Easydtol.UserInfo user = new Dtol.Easydtol.UserInfo(); if (codeModel.code == null || codeModel.code == "") { model.ResponseCode = 9; model.Message = "参数为空"; } WeChatInfoModel oiask = JsonConvert.DeserializeObject <WeChatInfoModel>(GetOpenIdAndSessionKeyString(codeModel.code, appId, appSecret)); if (!string.IsNullOrEmpty(oiask.session_key)) { WechatUserInfoResModel res = new WechatUserInfoResModel(); res = Decrypt(codeModel.encryptedData, codeModel.iv, oiask.session_key); if (!string.IsNullOrEmpty(res.unionId)) { V_OpenidUnionid v_Openid = new V_OpenidUnionid(); v_Openid.openid = oiask.openid; v_Openid.unionid = res.unionId; v_OpenidUnionidRepository.Add(v_Openid); v_OpenidUnionidRepository.SaveChanges(); user = GetEasyUser(res.unionId); if (!String.IsNullOrEmpty(user.ID)) { model.ResponseCode = 5; model.Message = "unionid不为空,已注册泰便利"; } else { model.ResponseCode = 6; model.Message = "unionid不为空,未注册泰便利"; } } else { model.ResponseCode = 7; model.Message = "授权未获取unionid"; } } else { model.ResponseCode = 8; model.Message = "授权未获取session_key"; } resModel.baseView = model; resModel.userInfo = user; return(resModel); }
/// <summary> /// 20200510 Easy 用户初次进入自愿者小程序验证用户是否是泰便利注册用户,如果是返回泰便利用户中心信息,如果不是返回空 /// </summary> public Dtol.Easydtol.UserInfo GetEasyUserInfo(string code) { Dtol.Easydtol.UserInfo user_Info = _IWeChatClientRepository.EasyDecrypt(code, _IOptions.Value.appid, _IOptions.Value.secret); //判断 是否注册泰便利 if (user_Info.ID != null) { DEncrypt encrypt = new DEncrypt(); string Name = encrypt.Decrypt(user_Info.Name); string CertificateID = encrypt.Decrypt(user_Info.CertificateID); string Mobile = encrypt.Decrypt(user_Info.Mobile); user_Info.Name = Name; user_Info.CertificateID = CertificateID; user_Info.Mobile = Mobile; } return(user_Info); }
//注册志愿者时 获取 泰便利用户信息 20200510 public virtual Dtol.Easydtol.UserInfo GetEasyUser(string unionid) { Dtol.Easydtol.UserInfo userInfo = new Dtol.Easydtol.UserInfo(); var predicate = WhereExtension.True <Dtol.Easydtol.UserInfo>(); predicate = predicate.And(p => p.Status.Equals("1")); if (!string.IsNullOrEmpty(unionid)) { predicate = predicate.And(p => p.unionid.Equals(unionid)); } var result = EasyDbSet.Where(predicate).ToList(); if (result.Count() > 0) { userInfo = result.First(); } return(userInfo); }
/// <summary> /// 用户初次进入自愿者小程序验证用户是否是泰便利已注册用户,如果是返回泰便利用户中心信息,如果不是返回空 20200510 /// </summary> public Dtol.Easydtol.UserInfo EasyDecrypt(string code, string appId, string appSecret) { Dtol.Easydtol.UserInfo userInfo = new Dtol.Easydtol.UserInfo(); if (code == null || code == "") { return(userInfo); } if (String.IsNullOrEmpty(code)) { return(userInfo); } WeChatInfoModel oiask = JsonConvert.DeserializeObject <WeChatInfoModel>(GetOpenIdAndSessionKeyString(code, appId, appSecret)); if (!String.IsNullOrEmpty(oiask.unionid)) { userInfo = GetEasyUser(oiask.unionid); } return(userInfo); }
/// <summary> /// 20200629 用户初次进入自愿者小程序验证用户是否是泰便利已注册用户,如果是返回泰便利用户中心信息,如果不是返回空 20200510 /// </summary> public UserInfoResModel EasyDecryptByCode(string code, string appId, string appSecret) { UserInfoResModel resModel = new UserInfoResModel(); BaseViewModel model = new BaseViewModel(); Dtol.Easydtol.UserInfo user = new Dtol.Easydtol.UserInfo(); if (code == null || code == "") { model.ResponseCode = 9; model.Message = "参数为空"; resModel.baseView = model; resModel.userInfo = user; return(resModel); } WeChatInfoModel oiask = JsonConvert.DeserializeObject <WeChatInfoModel>(GetOpenIdAndSessionKeyString(code, appId, appSecret)); if (!String.IsNullOrEmpty(oiask.unionid)) { user = GetEasyUser(oiask.unionid); if (!String.IsNullOrEmpty(user.ID)) { model.ResponseCode = 7; model.Message = "unionid不为空,已注册泰便利"; } else { model.ResponseCode = 6; model.Message = "unionid不为空,未注册泰便利"; } resModel.baseView = model; resModel.userInfo = user; } else { if (!String.IsNullOrEmpty(oiask.openid)) { var mm = v_OpenidUnionidRepository.GetByParasOne(oiask.openid); if (mm != null) { user = GetEasyUser(mm.unionid); if (!String.IsNullOrEmpty(user.ID)) { model.ResponseCode = 7; model.Message = "unionid不为空,已注册泰便利"; } else { model.ResponseCode = 6; model.Message = "unionid不为空,未注册泰便利"; } resModel.baseView = model; resModel.userInfo = user; } else { model.ResponseCode = 8; model.Message = "unionid为空,未授权"; resModel.baseView = model; resModel.userInfo = user; } } else { model.ResponseCode = 8; model.Message = "unionid为空,未授权"; resModel.baseView = model; resModel.userInfo = user; } } return(resModel); }