public ActionResult Register(WeChatRegister model) { WeChatResult viewModel = new WeChatResult { userinfo = new Wx_login_userinfo { openid = model.openid, nickname = model.nickname, sex = model.sex, language = model.language, country = model.country, province = model.province, headimgurl = model.headimgurl, unionid = model.unionid, }, result = 1 }; //ModelState.AddModelError("", "用户名不存在");//错误显示 UserInfo dbsuer = new UserInfo(); var create = dbsuer.WxRegister(model); if (create.result == 0 || create.result == -1) { //0重复 -1用户名不能包含汉字 string str = ""; if (create.resultEmail == 0 || create.resultName == 0 || create.resultPhone == 0) { if (create.resultEmail == 0) { str += "邮箱,"; } if (create.resultName == 0) { str += "用户名,"; } if (create.resultPhone == 0) { str += "电话,"; } ModelState.AddModelError("", str + "已存在,请重新填写"); return(View("CallBack", viewModel)); } else { ModelState.AddModelError("", "用户名只能包含字母和数字或下划线"); return(View("CallBack", viewModel)); } } else { //用户登录 var logresult = dbsuer.Login(create.userinfo); if (logresult == 1) { return(Redirect("/home")); } else { ModelState.AddModelError("", "服务器原因注册失败"); return(View()); } } }
/// <summary> /// 微信用户注册 /// </summary> /// <param name="model"></param> /// <returns></returns> public WXRegResult WxRegister(WeChatRegister model) { WXRegResult result = new WXRegResult(); //用户名是否重复 if (UserManager.Users.Where(t => t.UserName == model.username).Count() > 0) { result.resultName = 0; } else { result.resultName = 1; } //邮箱是否重复 if (UserManager.Users.Where(t => t.Email == model.email).Count() > 0) { if (model.email == null) { result.resultEmail = 1; } else { result.resultEmail = 0; } } else { result.resultEmail = 1; } //电话是否重复 if (UserManager.Users.Where(t => t.PhoneNumber == model.phone).Count() > 0) { if (model.phone == null) { result.resultPhone = 1; } else { result.resultPhone = 0; } } else { result.resultPhone = 1; } //重复返回错误结果 if (result.resultEmail == 0 || result.resultName == 0 || result.resultPhone == 0) { result.result = 0; return(result); } //没有重复进行用户注册 M_JiangliUser user = new M_JiangliUser() { UserName = model.username, Email = model.email, PhoneNumber = model.phone, openid = model.openid, unionid = model.unionid, Gender = int.Parse(model.sex), address = model.country == null ? "" : model.country + "-" + model.province == null ? "" : model.province, nickName = model.nickname, RegisterDate = DateTime.Now, Weight = 100, DateOfLast = DateTime.Now, Avatar_url = model.headimgurl, }; var createResult = UserManager.Create(user); if (createResult.Succeeded) { var update = UserManager.Users.Where(t => t.UserName == model.username).FirstOrDefault(); update.Avatar_url = model.headimgurl; var updateresult = UserManager.Update(update); result.userinfo = UserManager.Users.Where(t => t.UserName == model.username).FirstOrDefault(); result.result = 1; return(result); } else { result.result = -1; return(result); } }