Exemplo n.º 1
0
        public async Task <IActionResult> Add(int id, TeamConfigClassificationsViewModel teamConfigClassificationsVM)
        {
            if (ModelState.IsValid)
            {
                ClassificationAssignedToTeam classificationAssignedToTeam = new ClassificationAssignedToTeam()
                {
                    ClassificationId = id,
                    TeamId           = teamConfigClassificationsVM.Team.Id,
                    Classification   = await _db.Classifications.FindAsync(id),
                    Team             = await _db.Teams.FindAsync(teamConfigClassificationsVM.Team.Id)
                };


                foreach (var classAssigned in _db.ClassificationAssignedToTeam)
                {
                    if (classAssigned.ClassificationId == classificationAssignedToTeam.ClassificationId && classAssigned.TeamId == classificationAssignedToTeam.TeamId)
                    {
                        return(RedirectToAction("Index", new { id = teamConfigClassificationsVM.Team.Id }));
                    }
                }


                await _db.ClassificationAssignedToTeam.AddAsync(classificationAssignedToTeam);


                TempData["Msg"] = "Classification has been added successfully";

                await _db.SaveChangesAsync();

                return(RedirectToAction("Index", new { id = teamConfigClassificationsVM.Team.Id }));
            }

            return(RedirectToAction("Index", "Team"));
        }
Exemplo n.º 2
0
        //GET
        /// <summary>Provides a list of <see cref="Classification"/> objects assigned to the specified <see cref="Team"/></summary>
        /// <param name="id">The specified <see cref="Team"/> id.</param>
        public async Task <IActionResult> Index(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }


            var team = await _db.Teams.FindAsync(id);

            if (team == null)
            {
                return(NotFound());
            }

            TeamConfigClassificationsViewModel teamConfigClassificationsVM = new TeamConfigClassificationsViewModel();

            teamConfigClassificationsVM.Team = team;
            teamConfigClassificationsVM.AllClassifications = new List <Classification>();

            foreach (var classification in _db.Classifications)
            {
                teamConfigClassificationsVM.AllClassifications.Add(classification);
            }

            teamConfigClassificationsVM.ClassificationsAssignedToTeam = new List <Classification>();
            foreach (var classAssigned in _db.ClassificationAssignedToTeam)
            {
                foreach (var classification in teamConfigClassificationsVM.AllClassifications)
                {
                    if (classAssigned.ClassificationId == classification.Id && classAssigned.TeamId == teamConfigClassificationsVM.Team.Id)
                    {
                        teamConfigClassificationsVM.ClassificationsAssignedToTeam.Add(classAssigned.Classification);
                    }
                }
            }

            return(View(teamConfigClassificationsVM));
        }
Exemplo n.º 3
0
        public async Task <IActionResult> DeleteConfirmed(int id, TeamConfigClassificationsViewModel teamConfigClassificationsVM)
        {
            ClassificationAssignedToTeam classificationAssignedToTeam = new ClassificationAssignedToTeam()
            {
                ClassificationId = id,
                TeamId           = teamConfigClassificationsVM.Team.Id,
                Classification   = await _db.Classifications.FindAsync(id),
                Team             = await _db.Teams.FindAsync(teamConfigClassificationsVM.Team.Id)
            };

            foreach (var classAssigned in _db.ClassificationAssignedToTeam)
            {
                if (classAssigned.ClassificationId == classificationAssignedToTeam.ClassificationId && classAssigned.TeamId == classificationAssignedToTeam.TeamId)
                {
                    _db.ClassificationAssignedToTeam.Remove(classAssigned);
                    TempData["Msg"] = "Classification has been removed successfully";
                }
            }

            await _db.SaveChangesAsync();

            return(RedirectToAction("Index", new { id = teamConfigClassificationsVM.Team.Id }));
        }