コード例 #1
0
 public override IEnumerable <Team> Execute(GetUserTeamsQuery query, ICommandAndQueryDispatcher dispatcher)
 {
     return(db.Teams
            .Include(x => x.Owner)
            .Include(x => x.Members.Select(m => m.User))
            .Where(x => x.Owner.Id == query.UserId
                   ||
                   x.Members.Select(m => m.User.Id)
                   .Contains(query.UserId)).ToList());
 }
コード例 #2
0
        public void ThenUserShouldBeFullMemberOfTeamBlah(string userId, int teamId)
        {
            var userTeamsQuery       = new GetUserTeamsQuery(userId);
            IEnumerable <Team> teams = context.Dispatcher.ExecuteQuery(userTeamsQuery);

            teams.Should()
            .Contain(
                t =>
                t.Members.SingleOrDefault(m => m.User.Id == userId && m.Status == MembershipStatus.Confimed) !=
                null);
        }
コード例 #3
0
ファイル: UserTeamsController.cs プロジェクト: xberna16/FIT
 public UserTeamsController(TeamCommunicationDbContext context)
 {
     _context        = context;
     this.factory    = new DbContextFactory();
     this.repo       = new UserTeamRepository(factory);
     this.query      = new GetUserTeamsQuery(factory.CreateDbContext);
     this.facade     = new UserTeamFacade(repo, query);
     this.teamRepo   = new TeamRepository(factory);
     this.teamQuery  = new GetTeamsQuery(factory.CreateDbContext);
     this.teamFacade = new TeamFacade(teamRepo, teamQuery);
     this.userRepo   = new UserRepository(factory);
     this.usersQuery = new GetUsersQuery(factory.CreateDbContext);
     this.userFacade = new UserFacade(userRepo, usersQuery);
 }
コード例 #4
0
ファイル: TeamController.cs プロジェクト: samholder/haccpapp
        //
        // GET: /Team/
        public ActionResult Index()
        {
            IQuery <IEnumerable <Team> > command = new GetUserTeamsQuery(HttpContext.User.Identity.GetUserId());
            IEnumerable <Team>           teams   = dispatcher.ExecuteQuery(command).ToList();

            if (teams.Any())
            {
                List <TeamDetailsViewModel> teamDetailsViewModels =
                    Mapper.Map <IEnumerable <Team>, List <TeamDetailsViewModel> >(teams);
                ApplicationUser currentUser =
                    dispatcher.ExecuteQuery(new GetUserByIdQuery(HttpContext.User.Identity.GetUserId()));
                foreach (TeamDetailsViewModel team in teamDetailsViewModels)
                {
                    team.IsEditable = CurrentUserIsOwnerOrTeamManager(currentUser, team);
                }
                return(View(teamDetailsViewModels));
            }

            ViewBag.Message = "Welcome " + ControllerContext.HttpContext.User.Identity.Name;
            return(View("IndexNoTeams"));
        }
コード例 #5
0
 public UserTeamFacade(UserTeamRepository repository, GetUserTeamsQuery query)
 {
     this.repository = repository;
     this.query      = query;
 }