public ActionResult AddMemberToHouseHold(NewHouseholdMember newhhMember)
        {
            if (ModelState.IsValid) {
                _services.AddMemberToHousehold(newhhMember);

                //TempData["message"] = string.Format("{0} has been saved", newhhMember.MemberId);
                //ViewBag.HouseHoldId = newhhMember.HouseHoldId;
                //var members = _services.GetHouseHoldMemers(newhhMember.HouseHoldId, 1, 10);
                //return PartialView("_AddNewHouseholdMember", newhhMember);

                string url = Url.Action("HouseholdMembers", "HouseHold", new { houseHoldId = newhhMember.HouseHoldId, houseHoldLeaderMemberId = newhhMember.HouseHoldLeaderMemberId });
                return Json(new { success = true, url = url });
            }
            return PartialView("_AddNewHouseholdMember", newhhMember);
        }
        public ActionResult AddMemberToHouseHold(int houseHoldId, int houseHoldLeaderMemberId)
        {
            var list = _services.GetHeadOfFamilyMembers(houseHoldId, houseHoldLeaderMemberId).ToList();
            //List<SelectListItem> items = list.Select(item => new SelectListItem
            //{
            //    Text = item.FullName, Value = item.MemberId.ToString()
            //}).ToList();

            //ViewBag.HeadOfFamilyMembers = new SelectList(list, "MemberId", "FullName");
            //var items = new SelectList(list, "MemberId", "FullName").ToList();
            //items.Insert(0, (new SelectListItem { Text = "", Value = "0" }));
            ViewBag.HouseHoldId = houseHoldId;
            var newHhMember = new NewHouseholdMember() {
                HouseHoldId = houseHoldId,
                HouseHoldLeaderMemberId = houseHoldLeaderMemberId,
                HeadOfFamilyMembersList = new SelectList(list, "MemberId", "FullName", houseHoldLeaderMemberId)
            };
            return PartialView("_AddNewHouseholdMember", newHhMember);
        }
 public int AddMemberToHousehold(NewHouseholdMember newhhMember)
 {
     var familyMembers = GetFamilyMembersByHeadOfFamilyMemberId(newhhMember.MemberId);
     int membersAdded = 0;
     using (var scope = new TransactionScope()) {
         //var dbHhMember = BuildHouseHoldMember(newhhMember.HouseHoldId, newhhMember.MemberId);
         //_unitOfWork.HouseHoldMemberRepository.Insert(dbHhMember);
         //_unitOfWork.Save();
         //membersAdded++;
         foreach (var member in familyMembers) {
             HouseHoldMember dbHhMember;
             switch (member.MemberOf) {
                 case "KFC":
                 case "YFC":
                 case "PRE-K":
                     dbHhMember = BuildHouseHoldMember(newhhMember.HouseHoldId, member.MemberId);
                     _unitOfWork.HouseHoldMemberRepository.Insert(dbHhMember);
                     _unitOfWork.Save();
                     membersAdded++;
                     break;
                 default:
                     if (member.MemberId == newhhMember.MemberId) {
                         dbHhMember = BuildHouseHoldMember(newhhMember.HouseHoldId, member.MemberId);
                         _unitOfWork.HouseHoldMemberRepository.Insert(dbHhMember);
                         _unitOfWork.Save();
                     }
                     else if (member.SpouseMemberId == newhhMember.MemberId) {
                         dbHhMember = BuildHouseHoldMember(newhhMember.HouseHoldId, member.MemberId);
                         _unitOfWork.HouseHoldMemberRepository.Insert(dbHhMember);
                         _unitOfWork.Save();
                         membersAdded++;
                     }
                     break;
             }
         }
         scope.Complete();
         return membersAdded;
     }
 }