public ActionResult Register(RegisterModel model) { if (ModelState.IsValid) { // Attempt to register the user MembershipCreateStatus createStatus; Membership.CreateUser(model.UserName, model.Password, model.Email, null, null, true, null, out createStatus); if (createStatus == MembershipCreateStatus.Success) { var user = entities.AppUsers.Where(x => x.Username == model.UserName).FirstOrDefault(); user.Addresses = new List <Address>(); user.Addresses.Add(new Address() { City = model.City, State = model.State, Country = model.Country }); entities.SaveChanges(); FormsAuthentication.SetAuthCookie(model.UserName, false /* createPersistentCookie */); return(RedirectToAction("Index", "Home")); } else { ModelState.AddModelError("", ErrorCodeToString(createStatus)); } } // If we got this far, something failed, redisplay form return(View(model)); }
/// <summary> /// 检测用户是否合法并买票 /// </summary> /// <param name="userName"></param> /// <param name="userPassword"></param> /// <param name="ticket"></param> /// <returns></returns> public int buyTicket(string userName, string userPassword, Ticket ticket) { try { using (AppDbEntities context = new AppDbEntities()) { bool isOk = false; string userPasswordTmp = MD5.generateMD5(userPassword); var users = from t in context.UserInfoes where t.UserName == userName && t.Password == userPasswordTmp select t; foreach (var item in users) { if (item.MoneySum - ticket.TotalPrice < 0) { return(-1);//金额不足返回-1 } else { item.MoneySum -= ticket.TotalPrice; //创建购票细节对象 DateTime dt = DateTime.Now; UserDetails userDetail = new UserDetails() { Name = item.Name, UserName = item.UserName, LineNumber = ticket.LineNumber, StartStation = ticket.Source, EndStation = ticket.Destination, TicketsNum = ticket.Number, Time = dt, Money = ticket.TotalPrice, StartTag = ticket.SourceNum, EndTag = ticket.DestinationNum, TicketsState = "未使用" }; context.UserDetails.Add(userDetail); isOk = true; } } if (isOk) { context.SaveChanges(); return(1);//购票成功返回1 } } } catch (Exception ee) { // MessageBox.Show(ee.Message+"路线号:"+ticket.LineNumber+"起始站号:"+ticket.SourceNum+"终点站号:"+ticket.DestinationNum); return(0); //异常出错返回0 } return(2); //用户信息出错返回2 }
public override MembershipUser CreateUser(string username, string password, string email, string passwordQuestion, string passwordAnswer, bool isApproved, object providerUserKey, out MembershipCreateStatus status) { ValidatePasswordEventArgs args = new ValidatePasswordEventArgs(username, password, true); OnValidatingPassword(args); if (args.Cancel) { status = MembershipCreateStatus.InvalidPassword; return(null); } if (RequiresUniqueEmail && !string.IsNullOrEmpty(GetUserNameByEmail(email))) { status = MembershipCreateStatus.DuplicateEmail; return(null); } MembershipUser user = GetUser(username, true); if (user == null) { var userObj = new AppUser(); userObj.Username = username; userObj.Password = GetMD5Hash(password); userObj.Email = email; userObj.DateCreated = DateTime.UtcNow; userObj.LastActivityDate = DateTime.UtcNow; entities.AppUsers.Add(userObj); entities.SaveChanges(); status = MembershipCreateStatus.Success; return(GetUser(username, true)); } else { status = MembershipCreateStatus.DuplicateUserName; } return(null); }
private void in_MouseDown(object sender, MouseButtonEventArgs e) { if (isUser) { bool isOk = false; using (AppDbEntities context = new AppDbEntities()) { var q = from t in context.UserDetails where t.UserName == tbUserName.Text && t.TicketsState == "未使用" select t; foreach (var v in q) { v.TicketsState = "进站"; isOk = true; } if (isOk) { isIn = true; //数据显示 tictetsState(tbUserName.Text); context.SaveChanges(); //成功图标显示 imgIsSuccess.Source = new BitmapImage(new Uri("/images/成功.png", UriKind.Relative)); imgIsSuccess.ToolTip = "进站成功"; } else { imgIsSuccess.Source = new BitmapImage(new Uri("/images/失败.png", UriKind.Relative)); imgIsSuccess.ToolTip = "未购票或已进站"; } } } else { imgIsSuccess.Source = new BitmapImage(new Uri("/images/失败.png", UriKind.Relative)); imgIsSuccess.ToolTip = "不存在此用户"; } //输入框清空 tbUserName.Text = ""; imgIsSuccess.Visibility = System.Windows.Visibility.Visible; }
/// <summary> /// 开通账户 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void openImmediate_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { sex_nan.Focus(); try { string user_name = userName.Text; string user_passwrod = MD5.generateMD5(userPassword.Password); string user_realName = realName.Text.Replace(" ", ""); string user_sex = ""; if (sex_nan.IsChecked == true) { user_sex = "男"; } else if (sex_nv.IsChecked == true) { user_sex = "女"; } // DateTime user_birthday = DateTime.Parse(birthday.Text); string user_birthday = birthday.Text; string user_idCard = idCard.Text; string user_address = address.Text.Replace(" ", ""); string user_phone = phoneNumber.Text; decimal user_money = 0; decimal.TryParse(money.Text, out user_money); UserInfoes user = new UserInfoes() { UserName = user_name, Password = user_passwrod, Name = user_realName, Sex = user_sex, Birthday = user_birthday, OpenTime = DateTime.Now, IdCard = user_idCard, Address = user_address, PhoneNumber = user_phone, MoneySum = user_money }; if (infoIsOk(user)) { using (AppDbEntities context = new AppDbEntities()) { try { context.UserInfoes.Add(user); if (CheckUser.rechargeToCo(user.MoneySum)) { context.SaveChanges(); MessageBox.Show("开户成功"); setStateNormal(); } } catch (Exception ex) { MessageBox.Show(ex.Message); } } } } catch (Exception ee) { MessageBox.Show("开户失败:" + ee.Message); } }
/// <summary> /// 出站按钮 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void out_MouseDown(object sender, MouseButtonEventArgs e) { isSkip = true; outMoney = 0; if (isUser) { if (!isOut) { if (isOut) { } bool isOk = false; //坐过站 if (outNum > 0) { //超过金额计算 outMoney = 1 + (outNum - 1) / 6; using (AppDbEntities context = new AppDbEntities()) { var q1 = from f in context.UserDetails where f.UserName == tbUserName.Text && f.TicketsState == "进站" select f; foreach (var v1 in q1) { outMoney *= v1.TicketsNum; } var q2 = from t in context.UserInfoes where t.UserName == tbUserName.Text select t; foreach (var v2 in q2) { if (v2.MoneySum >= outMoney) { v2.MoneySum -= outMoney; leftMoney = (int)v2.MoneySum; isMoney = true; isOk = true; isYanshi = false; } else { isYanshi = true; isMoney = true; isOk = true; //数据显示 tictetsState(tbUserName.Text); imgIsSuccess.Source = new BitmapImage(new Uri("/images/警告.png", UriKind.Relative)); imgIsSuccess.ToolTip = "账户余额不足"; } } //账户余额足够支付 if (isMoney && !isYanshi) { payState(); if (isOk) { isOut = true; //数据显示 tictetsState(tbUserName.Text); //存储至数据库 context.SaveChanges(); //成功图标显示 imgIsSuccess.Source = new BitmapImage(new Uri("/images/成功.png", UriKind.Relative)); imgIsSuccess.ToolTip = "出站成功"; } else { imgIsSuccess.Source = new BitmapImage(new Uri("/images/失败.png", UriKind.Relative)); imgIsSuccess.ToolTip = "未进站或已出站"; } } //账户余额不足够支付 else { unPayState(); } } } //未超坐站或已经支付过超坐的钱 if (outNum == 0 || isMoney) { using (AppDbEntities context = new AppDbEntities()) { var q = from t in context.UserDetails where t.UserName == tbUserName.Text && t.TicketsState == "进站" select t; foreach (var v in q) { v.TicketsState = "出站"; isOk = true; } if (isOk) { isOut = true; //数据显示 tictetsState(tbUserName.Text); context.SaveChanges(); //成功图标显示 imgIsSuccess.Source = new BitmapImage(new Uri("/images/成功.png", UriKind.Relative)); imgIsSuccess.ToolTip = "出站成功"; } else { imgIsSuccess.Source = new BitmapImage(new Uri("/images/失败.png", UriKind.Relative)); imgIsSuccess.ToolTip = "未购票或已出站"; } } } } else { imgIsSuccess.Source = new BitmapImage(new Uri("/images/失败.png", UriKind.Relative)); imgIsSuccess.ToolTip = "未购票或已出站"; } } else { imgIsSuccess.Source = new BitmapImage(new Uri("/images/失败.png", UriKind.Relative)); imgIsSuccess.ToolTip = "不存在此用户"; } if (isOut && !isMoney) { //输入框清空 tbUserName.Text = ""; } imgIsSuccess.Visibility = System.Windows.Visibility.Visible; }