public StartTurnOffPageDialogLogic(IPageDialogPresenter presenter) { this.presenter = presenter; avm = new AuthorizationViewModel(); avm.AuthorizationEndEvent += (user) => { Statics.CurrentUser.Instance.User = user; EndEvent?.Invoke(PageDialogResult.Completed); }; avm.RegistrationRequiredEvent += () => { if (rvm == null) { rvm = new RegistrationViewModel(); rvm.CancelEvent += () => { presenter.ShowPage(avm); }; rvm.RegistrationCompleteEvent += () => { presenter.ShowPage(avm); }; } presenter.ShowPage(rvm); }; }
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); }
private void EndDialogResult(PageDialogResult result) { if (result == PageDialogResult.Completed) { ReceiveUpdate?.Invoke(); UpdatePropertyes(); } presenter.ShowPage(this); }
public void StartDialog() { EditTaskViewModel etvm = new EditTaskViewModel(currentTask); etvm.EditResult += (res) => { EndEvent?.Invoke(res); }; presenter.ShowPage(etvm); }
public void StartDialog() { NewTaskViewModel ntwm = new NewTaskViewModel(); ntwm.CreateResult += (res) => { if (res == PageDialogResult.Canceled) { EndEvent?.Invoke(res); } else { newTask = ntwm.NewTask; ResolutionAndDateViewModel rdvm = new ResolutionAndDateViewModel(); rdvm.PerfomerResult += (result) => { if (result == PageDialogResult.Canceled) { EndEvent?.Invoke(result); } else { newTask.Performers = new List <Performer>(); newTask.Performers.Add(new Performer() { User = CurrentUser.Instance.User, Message = rdvm.Message, PeriodOfExecution = rdvm.Period, WorkTask = newTask }); DB.TaskDataBase.Instance.WorkTasks.Add(newTask); if (DB.TaskDataBase.Instance.SafeSaveChanges()) { EndEvent?.Invoke(result); } } }; presenter.ShowPage(rdvm); } }; presenter.ShowPage(ntwm); }
public void StartDialog() { presenter.ShowPage(avm); }