public IActionResult AddMembers(AddMembersVM vm) { //TODO: Test this var service = vm.Service; var selectedProfiles = vm.Profiles.Where(p => p.IsSelected == true); foreach (var profile in selectedProfiles) { var request = new ServiceRequest(); request.ProfileID = profile.ProfileID; request.ServiceID = service.ServiceID; var Getservice = (from s in repository.GetAllServices() where s.ServiceID == request.ServiceID select s).FirstOrDefault <Service>(); var GetProfile = (from p in pRepository.GetAllProfiles() where p.ProfileID == request.ProfileID select p).FirstOrDefault <Profile>(); request.ProfileR = GetProfile; request.ServiceR = Getservice; GetProfile.ServiceRequests.Add(request); pRepository.Update(GetProfile); } return(RedirectToAction("AllServices", "ServicePlan")); }
public ViewResult AddMembers(int serviceID) { //TODO: Test this var service = (from s in repository.GetAllServices() where s.ServiceID == serviceID select s).FirstOrDefault <Service>(); var profiles = pRepository.GetAllProfiles().ToList(); var filteredProfiles = new List <Profile>(); bool test = false; foreach (var p in profiles) { if (p.ServiceRequests.Count == 0) { filteredProfiles.Add(p); continue; } foreach (var sr in p.ServiceRequests) { if (sr.ServiceID != serviceID) { test = true; } else if (sr.ServiceID == serviceID && sr.ProfileID == p.ProfileID) { test = false; break; } } if (test == true) { filteredProfiles.Add(p); } } var vm = new AddMembersVM(); vm.Service = (service); vm.Profiles = filteredProfiles; return(View(vm)); }