Exemple #1
0
        public ActionResult AddHeistMember(int?heistID)
        {
            tblHeist heist = GetHeistByID(heistID);

            var _skillsList = heist.tblHeistSkills.OrderBy(m => m.HeistID).ToArray();

            HeistModel hm = new HeistModel();

            //Getting skills
            hm.HeistSkills = new List <HeistSkillModel>();
            for (int i = 0; i < _skillsList.Count(); i++)
            {
                HeistSkillModel mod = new HeistSkillModel
                {
                    HeistID   = _skillsList[i].HeistID,
                    SkillID   = _skillsList[i].SkillsID,
                    Name      = _skillsList[i].Name,
                    Level     = _skillsList[i].SkillLevel,
                    MembersNo = (Int16)_skillsList[i].MembersNo
                };

                hm.HeistSkills.Add(mod);
            }

            //getting members
            var _allMembers = GetMatchingMembers(heistID);

            List <HeistMemberModel> _list = _allMembers.ToList();

            hm.HeistMembers = _allMembers as List <HeistMemberModel>;

            ViewBag.MatchingMembers = new SelectList(_list);

            return(View());
        }
Exemple #2
0
        public ActionResult AddHeistMember(HeistMemberModel model)
        {
            tblHeist heist = GetHeistByID(model.HeistID);

            var _skillsList = heist.tblHeistSkills.OrderBy(m => m.HeistID).ToArray();

            HeistModel hm = new HeistModel();

            //Getting skills
            hm.HeistSkills = new List <HeistSkillModel>();
            for (int i = 0; i < _skillsList.Count(); i++)
            {
                HeistSkillModel mod = new HeistSkillModel
                {
                    HeistID   = _skillsList[i].HeistID,
                    SkillID   = _skillsList[i].SkillsID,
                    Name      = _skillsList[i].Name,
                    Level     = _skillsList[i].SkillLevel,
                    MembersNo = (Int16)_skillsList[i].MembersNo
                };

                hm.HeistSkills.Add(mod);
            }

            //getting members
            var _allMembers = GetMatchingMembers(model.HeistID);

            List <HeistMemberModel> _list = _allMembers.ToList();

            hm.HeistMembers = _allMembers as List <HeistMemberModel>;

            ViewBag.MatchingMembers = new SelectList(_list);

            tblHeistMembers member = new tblHeistMembers();

            member.HeistID       = model.HeistID;
            member.MemberID      = Convert.ToInt32(model.Name);
            member.ActiveInHeist = true;

            db.tblHeistMembers.Add(member);

            tblMember mem = new tblMember();

            mem = db.tblMember.SingleOrDefault(m => m.MemberID == member.MemberID);
            mem.ActiveInHeist = true;

            db.SaveChanges();

            return(RedirectToAction("Details", "Heist", new { @id = model.HeistID }));
        }
Exemple #3
0
        public List <HeistSkillModel> GetHeistSkills(int?heistID)
        {
            tblHeist heist = GetHeistByID(heistID);

            List <tblHeistSkills> heistSkills = heist.tblHeistSkills.OrderBy(m => m.HeistID).ToList();

            List <HeistSkillModel> hsm = new List <HeistSkillModel>();

            for (int i = 0; i < heistSkills.Count(); i++)
            {
                HeistSkillModel mod = new HeistSkillModel();

                mod.SkillID   = heistSkills[i].SkillsID;
                mod.Name      = heistSkills[i].Name;
                mod.Level     = heistSkills[i].SkillLevel;
                mod.MembersNo = (Int16)heistSkills[i].MembersNo;

                hsm.Add(mod);
            }

            return(hsm);
        }
Exemple #4
0
        public List <HeistMemberModel> GetMatchingMembers(int?heistID)
        {
            tblHeist heist = GetHeistByID(heistID);

            var _skillsList = heist.tblHeistSkills.OrderBy(m => m.HeistID).ToArray();

            HeistModel hm = new HeistModel();

            hm.HeistID = heist.HeistID;

            //Setting skills
            hm.HeistSkills = new List <HeistSkillModel>();
            for (int i = 0; i < _skillsList.Count(); i++)
            {
                HeistSkillModel mod = new HeistSkillModel
                {
                    HeistID   = _skillsList[i].HeistID,
                    SkillID   = _skillsList[i].SkillsID,
                    Name      = _skillsList[i].Name,
                    Level     = _skillsList[i].SkillLevel,
                    MembersNo = (Int16)_skillsList[i].MembersNo
                };

                hm.HeistSkills.Add(mod);
            }

            //Setting members
            List <HeistMemberModel> matchingMembers = new List <HeistMemberModel>();

            var _allMembers = db.tblMember.Where(m => m.ActiveInHeist != true).ToArray();

            hm.HeistMembers = new List <HeistMemberModel>();

            for (int i = 0; i < hm.HeistSkills.Count(); i++)  //iterating skills determined for heist
            {
                for (int j = 0; j < _allMembers.Count(); j++) //iterating predetermined members
                {
                    var temp = _allMembers[j].MemberID;

                    List <tblMemberSkills> memberSkills = db.tblMemberSkills.Where(m => m.MemberID == temp).ToList(); //getting each member's skills

                    for (int m = 0; m < memberSkills.Count(); m++)
                    {
                        if (hm.HeistSkills[i].Name == memberSkills[m].Name && hm.HeistSkills[i].Level.Length <= memberSkills[m].SkillLevel.Length) //matching heist skills to member's skills
                        {
                            HeistMemberModel member = new HeistMemberModel();

                            member.HeistID  = heist.HeistID;
                            member.MemberID = _allMembers[j].MemberID;
                            member.Name     = _allMembers[j].Name;

                            bool contains = false;
                            for (int k = 0; k < matchingMembers.Count(); k++)
                            {
                                if (matchingMembers[k].Name == member.Name)
                                {
                                    contains = true;
                                }
                            }

                            if (contains != true)
                            {
                                matchingMembers.Add(member);
                            }
                        }
                    }
                }
            }

            return(matchingMembers);
        }