Exemplo n.º 1
0
        public async Task <IActionResult> UpdateHospitalList()
        {
            var personsQuery   = _context.Persons as IQueryable <Person>;
            var hospitalsQuery = _context.Hospitals as IQueryable <Hospital>;
            var hospitals      = hospitalsQuery.ToList();

            personsQuery = personsQuery.Include(p => p.HospitalChoices);
            var persons = personsQuery.ToList();

            foreach (var person in persons)
            {
                var choices            = person.HospitalChoices.Select(c => c.HospitalId);
                var remainingHospitals = hospitals.Where(h => !choices.Any(c => c == h.Id));
                var count = choices.Count();
                foreach (var remHospital in remainingHospitals)
                {
                    count++;
                    var relationship = new PersonHospitalRelationship
                    {
                        PreferenceNumber = count,
                        PersonId         = person.Id,
                        HospitalId       = remHospital.Id
                    };
                    _context.Add(relationship);
                    await _context.SaveChangesAsync();
                }
            }
            return(RedirectToAction("Preference", "People"));
        }
Exemplo n.º 2
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,PreferenceNumber,PersonId,HospitalId")] PersonHospitalRelationship personHospitalRelationship)
        {
            if (id != personHospitalRelationship.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(personHospitalRelationship);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!PersonHospitalRelationshipExists(personHospitalRelationship.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["HospitalId"] = new SelectList(_context.Hospitals, "Id", "Id", personHospitalRelationship.HospitalId);
            ViewData["PersonId"]   = new SelectList(_context.Persons, "Id", "Id", personHospitalRelationship.PersonId);
            return(View(personHospitalRelationship));
        }
Exemplo n.º 3
0
        public async Task <IActionResult> Create([Bind("Id,PreferenceNumber,PersonId,HospitalId")] PersonHospitalRelationship personHospitalRelationship)
        {
            if (ModelState.IsValid)
            {
                _context.Add(personHospitalRelationship);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["HospitalId"] = new SelectList(_context.Hospitals, "Id", "Id", personHospitalRelationship.HospitalId);
            ViewData["PersonId"]   = new SelectList(_context.Persons, "Id", "Id", personHospitalRelationship.PersonId);
            return(View(personHospitalRelationship));
        }