Esempio n. 1
0
        public async Task <IActionResult> GetTickets(Guid?teamId)
        {
            var urlParams = new Dictionary <string, string>
            {
                { "ownerOnly", "false" }
            };
            var teams          = (await _communicationService.GetAsync <IEnumerable <TeamApiModel> >("user/teams", urlParams, FormHeaders(JsonType), "teamapi")).ToList();
            var teamViewModels = Mapper.Map <IList <TeamViewModel> >(teams);

            var teamBoard = new TeamBoardViewModel {
                Teams = teamViewModels
            };

            if (teamId.HasValue && teamViewModels.Any(model => model.Id == teamId.Value))
            {
                teamBoard.SelectedTeam = teamViewModels.First(model => model.Id == teamId.Value);
            }
            else
            {
                teamBoard.SelectedTeam = teamViewModels.FirstOrDefault();
            }

            if (teamBoard.SelectedTeam != null)
            {
                var ticketBoard = await GetTicketsForTeam(teamBoard.SelectedTeam.Id);

                teamBoard.SelectedTeamTickets = ticketBoard;
            }

            return(Json(teamBoard));
        }
Esempio n. 2
0
        public async Task <IActionResult> List(BackLogViewModel model, Guid?teamId)
        {
            var urlParams = new Dictionary <string, string>
            {
                { "ownerOnly", "false" }
            };
            var teams          = (await _communicationService.GetAsync <IEnumerable <TeamApiModel> >("user/teams", urlParams, FormHeaders(JsonType), "teamapi")).ToList();
            var teamViewModels = Mapper.Map <IList <TeamViewModel> >(teams);

            var teamBoard = new TeamBoardViewModel {
                Teams = teamViewModels
            };

            if (teamId.HasValue && teamViewModels.Any(m => m.Id == teamId.Value))
            {
                teamBoard.SelectedTeam = teamViewModels.First(m => m.Id == teamId.Value);
            }
            else
            {
                teamBoard.SelectedTeam = teamViewModels.FirstOrDefault();
            }

            if (teamBoard.SelectedTeam != null)
            {
                var tickets = await GetTicketsForTeam(teamBoard.SelectedTeam.Id);

                foreach (var ticketViewModel in tickets)
                {
                    ticketViewModel.TeamId = teamBoard.SelectedTeam.Id;
                }
                var countTickets  = tickets.Count;
                var pageViewModel = new PageViewModel(countTickets, model.Page, model.PageSize);

                var backlogViewModel = new BackLogViewModel
                {
                    SelectedTeam       = teamViewModels.FirstOrDefault(),
                    Teams              = teamViewModels,
                    Tickets            = tickets,
                    SelectedStatuses   = model.SelectedStatuses,
                    SelectedPriorities = model.SelectedPriorities,
                    PageViewModel      = pageViewModel,
                    TeamId             = model.TeamId
                };

                return(View(backlogViewModel));
            }

            return(View(new BackLogViewModel()));
        }