public async Task <List <PollingStationSystemUI> > GetPSCommissionSystems(Guid eid, Guid id, PollingStationSystemUI system) { var q = from c in _context.PollingStationCommission join rel in _context.RelPollingStationSystemPollingStationCommission on c.Id equals rel.PollingStationCommissionFk where c.ElectionFk == eid && c.Id == id && rel.PollingStationSystemFk == system.Id select rel; var r = await q.FirstAsync(); _context.RelPollingStationSystemPollingStationCommission.Remove(r); if (!await _context.RelPollingStationSystemPollingStationCommission.Where(s => s.PollingStationSystemFk == system.Id).AnyAsync()) { var s = await _context.PollingStationSystem.FindAsync(system.Id); _context.PollingStationSystem.Remove(s); } await _context.SaveChangesAsync(); var qr = from c in _context.PollingStationCommission where c.ElectionFk == eid && c.Id == id select c; var l = (await qr.FirstAsync()).RelPollingStationSystemPollingStationCommission.ToList().ConvertAll(c => new PollingStationSystemUI(c.PollingStationSystemFkNavigation)); return(l); }
public async Task <List <PollingStationSystemUI> > AddPSCommissionSystems(Guid eid, Guid id, PollingStationSystemUI system) { var ps = new PollingStationSystem(); ps.Id = Guid.NewGuid(); ps.Ipaddress = system.Ipaddress; ps.DigitalFootprint = system.DigitalFootprint; var rel = new RelPollingStationSystemPollingStationCommission(); rel.Id = Guid.NewGuid(); rel.PollingStationCommissionFk = id; rel.PollingStationSystemFk = ps.Id; _context.PollingStationSystem.Add(ps); _context.RelPollingStationSystemPollingStationCommission.Add(rel); await _context.SaveChangesAsync(); var q = from c in _context.PollingStationCommission where c.ElectionFk == eid && c.Id == id select c; var l = (await q.FirstAsync()).RelPollingStationSystemPollingStationCommission.ToList().ConvertAll(c => new PollingStationSystemUI(c.PollingStationSystemFkNavigation)); return(l); }