public ActionResult Join(NewJoining newJoining) { if (newJoining.OrderID != 0) { string id = User.Identity.GetUserId(); AbstractUser user = db.AllUsers.OfType <AuthorizedUser>().Where(x => x.AppUser.Id == id).FirstOrDefault(); if (user == null) { user = new UnauthorizedUser(); user.FirstName = newJoining.UserFirstName; user.LastName = newJoining.UserLastName; db.AllUsers.Add(user); db.SaveChanges(); } if (newJoining.UserFirstName == null || newJoining.UserLastName == null) { newJoining.UserFirstName = user.FirstName; newJoining.UserLastName = user.LastName; } Order order = db.Orders.Where(x => x.Id == newJoining.OrderID).FirstOrDefault(); Joining joining = new Joining(); joining.Order = order; joining.OrderId = order.Id; joining.User = user; joining.UserId = user.Id; joining.Text = newJoining.Text; db.Joinings.Add(joining); db.SaveChanges(); order.Joinings.Add(joining); db.SaveChanges(); user.Joinings.Add(joining); db.SaveChanges(); } return(RedirectToAction("Index", "Order")); }
public void CreateUnauthorizedUser(UnauthorizedUser user) { Random random = new Random(); user.VerificationCode = random.Next(); var result = _databaseContext.UnauthorizedUsers.Add(user); _databaseContext.SaveChanges(); }
protected override void Seed(ApplicationDbContext context) { UnauthorizedUser u = new UnauthorizedUser(); u.FirstName = "kek1"; u.LastName = "kek2"; context.AllUsers.Add(u); context.SaveChanges(); }
public ActionResult Create(NewOrder model) { Order order = new Order(); AbstractUser user = null; if (User.Identity.IsAuthenticated) { string id = User.Identity.GetUserId(); IEnumerable <AuthorizedUser> u = db.AllUsers.OfType <AuthorizedUser>(); user = u.FirstOrDefault(x => x.AppUserId == id); if (model.IsPrivate) { order.IsPrivate = true; } } else { user = new UnauthorizedUser(); user.FirstName = model.FirstName; user.LastName = model.LastName; db.AllUsers.Add(user); db.SaveChanges(); } order.Creator = user; order.CreatorId = user.Id; order.Address = model.Address; order.CompletionDateTime = DateTime.Parse(model.Date + " " + model.Time); order.OrderPlace = model.Place; order.IsPrivate = model.IsPrivate; db.Orders.Add(order); db.SaveChanges(); Joining join = new Joining(); join.Order = order; join.OrderId = order.Id; join.Text = model.TextOfOrder; join.User = user; join.UserId = user.Id; db.Joinings.Add(join); db.SaveChanges(); user.Orders.Add(order); db.SaveChanges(); return(RedirectToAction("Index")); }
public void Send(string name, string text, int OrderId) { // Call the addNewMessageToPage method to update clients. Order order = db.Orders.FirstOrDefault(x => x.Id == OrderId); if (order == null) { return; } AbstractUser user = db.AllUsers.OfType <AuthorizedUser>().FirstOrDefault(x => x.AppUser.UserName == name); if (user != null) { name = user.LastName + " " + user.FirstName; } else { user = new UnauthorizedUser(); user.FirstName = name; user.LastName = "√"; db.AllUsers.Add(user); db.SaveChanges(); } Message message = new Message(); message.Text = text; message.OrderId = OrderId; message.Order = order; message.CreationDateTime = DateTime.Now; message.User = user; message.UserId = user.Id; user.Messages.Add(message); order.Messages.Add(message); db.Messages.Add(message); db.SaveChanges(); Clients.All.addNewMessageToPage(name, text); }
public async Task ReceiveVerifyPhoneNumberCode(UnauthorizedUser unauthUser, string code) { if (unauthUser.Code == code) { _dbContext.UnauthorizedUsers.Remove(unauthUser); _dbContext.Users.Add(new User { ChatId = unauthUser.ChatId, Username = unauthUser.Username, PhoneNumber = unauthUser.PhoneNumber }); await _dbContext.SaveChangesAsync(); await Bot.Api.SendTextMessageAsync (unauthUser.ChatId, _configService.Config.UserSubscribed, replyMarkup : ReplyMarkupRemoveKeyboard); await _logger.LogAuth(LogConst.CorrectCodeSuccessAuth, _phoneHelper.Format(unauthUser.PhoneNumber)); await _newLogger.LogByType(MessageTypes.Auth, LogConst.CorrectCodeSuccessAuth, unauthUser.PhoneNumber); } else { await Bot.Api.SendTextMessageAsync (unauthUser.ChatId, "Некорректный код"); await _logger.LogAuth($"{LogConst.IncorrectCode}. Отправлено на телефон: {unauthUser.Code}, пользователь ввел {code}", _phoneHelper.Format(unauthUser.PhoneNumber)); await _newLogger.LogByType(MessageTypes.Auth, $"{LogConst.IncorrectCode}. Отправлено на телефон: {unauthUser.Code}, пользователь ввел {code}", unauthUser.PhoneNumber); } }