예제 #1
0
        public ActionResult SearchUser(string searchValue)
        {
            SelectUserViewModel model = new SelectUserViewModel();

            model.Users = _context.Users.Where(u => u.UserName.Contains(searchValue ?? "")).ToList();
            return(PartialView("_SelectUserPartial", model));
        }
        public async Task <IActionResult> Users(SelectUserViewModel holder)
        {
            var user = await _userManager.GetUserAsync(User);

            var    userId       = user.Id;
            string secondUserId = holder.secondUserId;
            string combinedId   = _combiner.CombineIds(userId, secondUserId);

            return(RedirectToAction("Chat", new { combinedId }));
        }
예제 #3
0
        public void StartDialog()
        {
            SelectUserViewModel suvm = new SelectUserViewModel();

            suvm.UserResult += (result) =>
            {
                if (result)
                {
                    var user = suvm.SelectedUser;
                    if (currentTask.Performers.FirstOrDefault(p => p.User.ID == user.ID) != null)
                    {
                        MessageBox.Show("Пользователь " + user.FIO + " уже есть в списке исполнителей.");
                        presenter.ShowPage(suvm);
                    }
                    else
                    {
                        ResolutionAndDateViewModel rdvm = new ResolutionAndDateViewModel();
                        rdvm.PerfomerResult += (res) =>
                        {
                            if (res == PageDialogResult.Canceled)
                            {
                                EndEvent?.Invoke(res);
                            }
                            else
                            {
                                currentTask.Performers.Add(new Performer()
                                {
                                    User              = user,
                                    Message           = rdvm.Message,
                                    PeriodOfExecution = rdvm.Period,
                                    WorkTask          = currentTask
                                });
                                if (DB.TaskDataBase.Instance.SafeSaveChanges())
                                {
                                    EndEvent?.Invoke(res);
                                }
                            }
                        };
                        presenter.ShowPage(rdvm);
                    }
                }
                else
                {
                    EndEvent?.Invoke(PageDialogResult.Canceled);
                }
            };
            presenter.ShowPage(suvm);
        }