コード例 #1
0
        private async System.Threading.Tasks.Task SelectProjectRefs()
        {
            if (SelectedProject != null)
            {
                try
                {
                    List <ProjectUser> projectUserList = await adminService.ReadAllProjectUsersInProjectAsync(SelectedProject);

                    ProjectUsers.Clear();
                    projectUserList.ForEach(ProjectUsers.Add);

                    List <User> users = await adminService.ReadAllUsersForCompanyAsync(globalModel.CurrentUser.CompanyId);

                    AllCompanyUsers.Clear();
                    users.ForEach(u =>
                    {
                        if (projectUserList.All(pu => pu.UserId != u.UserId))
                        {
                            AllCompanyUsers.Add(u);
                        }
                    });

                    IsProjectSelected = true;
                }
                catch (TimeoutException timeoutEx)
                {
                    _eventAggregator.GetEvent <TimeoutErrorEvent>().Publish(timeoutEx);
                }
            }
            else
            {
                IsProjectSelected = false;
            }
        }
コード例 #2
0
        private async System.Threading.Tasks.Task InviteUser()
        {
            if (!HasErrors)
            {
                if (ProjectUsers.Any(nav => nav.EMail == NewUserEmail) || AllCompanyUsers.Any(nav => nav.EMail == NewUserEmail))
                {
                    ChangeNotification.Raise(new Notification
                    {
                        Title   = Properties.Resources.User_Invitation_Exists_Title,
                        Content = string.Format(Properties.Resources.User_Invitation_Exists_Content, NewUserEmail)
                    });
                }
                else
                {
                    try
                    {
                        User newUser = await adminService.InviteNewUserAsync(NewUserEmail, SelectedProject, globalModel.CurrentUser);

                        ProjectUsers.Add(mapper.Map <ProjectUser>(newUser));
                    }
                    catch (TimeoutException timeoutEx)
                    {
                        _eventAggregator.GetEvent <TimeoutErrorEvent>().Publish(timeoutEx);
                    }
                }
            }
        }
コード例 #3
0
        public async System.Threading.Tasks.Task LoadProjects()
        {
            try
            {
                Projects = await adminService.ReadAdminProjectsForUserAsync(globalModel.CurrentUser);

                ProjectUsers.Clear();
                AllCompanyUsers.Clear();
            }
            catch (TimeoutException timeoutEx)
            {
                _eventAggregator.GetEvent <TimeoutErrorEvent>().Publish(timeoutEx);
            }
        }
コード例 #4
0
        private async System.Threading.Tasks.Task AddUserToProject()
        {
            try
            {
                await adminService.AddUserToProjectAsync(AllCompanySelectedUser, SelectedProject, false);

                ProjectUsers.Add(mapper.Map <ProjectUser>(AllCompanySelectedUser));
                AllCompanyUsers.Remove(AllCompanySelectedUser);
            }
            catch (TimeoutException timeoutEx)
            {
                _eventAggregator.GetEvent <TimeoutErrorEvent>().Publish(timeoutEx);
            }
        }
コード例 #5
0
        private async System.Threading.Tasks.Task RemoveUserFromProject()
        {
            try
            {
                await adminService.RemoveUserFromProjectAsync(ProjectSelectedUser, SelectedProject);

                AllCompanyUsers.Add(ProjectSelectedUser);
                ProjectUsers.Remove(ProjectSelectedUser);
            }
            catch (TimeoutException timeoutEx)
            {
                _eventAggregator.GetEvent <TimeoutErrorEvent>().Publish(timeoutEx);
            }
        }