public JsonResult GetUserByWeiXinMP(string unionid, string openid) { int result = 0; string operateip = Common.Common.GetRequestIP(); Dictionary <string, object> resultObj = new Dictionary <string, object>(); var model = OrganizationBusiness.GetUserByOtherAccount(EnumAccountType.WeiXin, unionid, operateip, openid); if (model != null) { //未注销 if (model.Status.Value == 1) { result = 1; Dictionary <string, object> userObj = new Dictionary <string, object>(); //string domainUrl = Request.Url.Scheme + "://" + Request.Url.Host; userObj.Add("userID", model.UserID); userObj.Add("clientID", model.ClientID); userObj.Add("name", model.Name); userObj.Add("avatar", model.Avatar); resultObj.Add("user", userObj); } else { result = 2; } } resultObj.Add("result", result); return(new JsonResult { Data = resultObj, JsonRequestBehavior = JsonRequestBehavior.AllowGet }); }
//微信账户注册 public ActionResult WinXinRegisterMember() { string operateip = Common.Common.GetRequestIP(); int result; if (Session["WeiXinTokenInfo"] != null) { string tokenInfo = Session["WeiXinTokenInfo"].ToString(); string[] tokenArr = tokenInfo.Split('|'); if (tokenArr.Length == 3) { string access_token = tokenArr[0]; string openid = tokenArr[1]; var memberResult = WeiXin.Sdk.Passport.GetUserInfo(access_token, openid); string userid = ""; var clientid = ClientBusiness.InsertClient(EnumRegisterType.WeiXin, EnumAccountType.WeiXin, memberResult.unionid, "", memberResult.nickname, memberResult.nickname, "", "", "", "", "", "", "", "", out result, out userid); if (!string.IsNullOrEmpty(clientid)) { var current = OrganizationBusiness.GetUserByOtherAccount(EnumAccountType.WeiXin, memberResult.unionid, operateip); Session.Remove("WeiXinTokenInfo"); Session["ClientManager"] = current; return(Redirect("/Home/Index")); } } } return(Redirect("/Home/Login")); }
//微信回调地址 public ActionResult WeiXinCallBack(string code, string state) { string operateip = Common.Common.GetRequestIP(); var userToken = WeiXin.Sdk.Token.GetAccessToken(code); if (string.IsNullOrEmpty(userToken.errcode)) { var model = OrganizationBusiness.GetUserByOtherAccount(EnumAccountType.WeiXin, userToken.unionid, operateip); //已注册 if (model != null) { //未注销 if (model.Status.Value == 1) { Session["ClientManager"] = model; if (string.IsNullOrEmpty(state)) { return(Redirect("/Home/Index")); } else { return(Redirect(state)); } } else { if (model.Status.Value == 9) { Response.Write("<script>alert('您的账户已注销,请切换其他账户登录');location.href='/Home/login';</script>"); Response.End(); } else { return(Redirect("/Home/Login")); } } } else { //Response.Write("<script>alert('您的账户还没绑定微信,请在账户设置里绑定微信后登录');location.href='/Home/login';</script>"); //Response.End(); Session["WeiXinTokenInfo"] = userToken.access_token + "|" + userToken.openid + "|" + userToken.unionid; return(Redirect("/Home/WeiXinSelectLogin")); } } return(Redirect("/Home/Login")); }
public ActionResult MDCallBack(string code, string state) { string operateip = Common.Common.GetRequestIP(); var userToken = AlibabaSdk.OauthBusiness.GetUserToken(code); if (userToken.error_code <= 0) { var model = OrganizationBusiness.GetUserByOtherAccount(EnumAccountType.Ali, userToken.memberId, operateip); //已注册 if (model != null) { //未注销 if (model.Status.Value == 1) { Session["ClientManager"] = model; AliOrderBusiness.BaseBusiness.UpdateAliOrderDownloadPlanToken(model.ClientID, userToken.access_token, userToken.refresh_token); if (string.IsNullOrEmpty(state)) { return(Redirect("/Home/Index")); } else { return(Redirect(state)); } } else { if (model.Status.Value == 9) { Response.Write("<script>alert('您的账户已注销,请切换其他账户登录');location.href='/Home/login';</script>"); Response.End(); } else { return(Redirect("/Home/Login")); } } } else { Session["AliTokenInfo"] = userToken.access_token + "|" + userToken.refresh_token + "|" + userToken.memberId; return(Redirect("/Home/AliSelectLogin")); } } return(Redirect("/Home/Login")); }
//微信绑定回调地址 public ActionResult WeiXinLoginCallBack(string code, string state) { string operateip = Common.Common.GetRequestIP(); var userToken = WeiXin.Sdk.Token.GetAccessToken(code); if (string.IsNullOrEmpty(userToken.errcode)) { var model = OrganizationBusiness.GetUserByOtherAccount(EnumAccountType.WeiXin, userToken.unionid, operateip); //未绑定 if (model == null) { model = (Users)Session["ClientManager"]; bool flag = OrganizationBusiness.BindOtherAccount(EnumAccountType.WeiXin, model.UserID, userToken.unionid, model.ClientID); } else { if (model.Status.Value == 1) { Session["ClientManager"] = model; Response.Write("<script>alert('您的账户已绑定过微信');location.href='/Home/login';</script>"); Response.End(); } else { if (model.Status.Value == 9) { Response.Write("<script>alert('您的账户已注销,请切换其他账户登录');location.href='/Home/login';</script>"); Response.End(); } else { return(Redirect("/Home/Login")); } } } } return(View()); }
//阿里账户注册 public ActionResult AliRegisterMember() { string operateip = Common.Common.GetRequestIP(); int result; if (Session["AliTokenInfo"] != null) { string tokenInfo = Session["AliTokenInfo"].ToString(); string[] tokenArr = tokenInfo.Split('|'); if (tokenArr.Length == 3) { string access_token = tokenArr[0]; string refresh_token = tokenArr[1]; string memberId = tokenArr[2]; var memberResult = AlibabaSdk.UserBusiness.GetMemberDetail(access_token, memberId); var member = memberResult.result.toReturn[0]; string userid = ""; string clientid = ClientBusiness.InsertClient(EnumRegisterType.Ali, EnumAccountType.Ali, memberId, "", member.companyName, member.sellerName, member.mobilePhone, member.email, "", "", "", "", "", "", out result, out userid); if (!string.IsNullOrEmpty(clientid)) { var current = OrganizationBusiness.GetUserByOtherAccount(EnumAccountType.Ali, member.memberId, operateip); AliOrderBusiness.BaseBusiness.AddAliOrderDownloadPlan(current.UserID, member.memberId, access_token, refresh_token, current.ClientID); Session.Remove("AliTokenInfo"); Session["ClientManager"] = current; return(Redirect("/Home/Index")); } } } return(Redirect("/Home/Login")); }