public async Task <ActionResult <TelephelyDTO> > AddTelephely([FromBody] TelephelyDTO telephely) { string user_id = User.Claims.FirstOrDefault(u => u.Type == ClaimTypes.NameIdentifier).Value; if (!_context.Ceg.Any(c => c.CegadminId.Equals(user_id))) { ModelState.AddModelError("ceghiba", "A felhasználóhoz nem tartozik cég."); return(BadRequest(ModelState)); } var ceg = await _context.Ceg.Where(c => c.CegadminId.Equals(user_id)).FirstAsync(); if (_context.Telephely.Any(t => t.Ceg_id == ceg.Id && t.Cim.Equals(telephely.Cim))) { ModelState.AddModelError("address", "A megadott néven már létezik telephely."); return(BadRequest(ModelState)); } Telephely ujTelephely = new Telephely { Cim = telephely.Cim, Ceg_id = ceg.Id }; _context.Telephely.Add(ujTelephely); await _context.SaveChangesAsync(); var dto = new TelephelyDTO(ujTelephely); return(CreatedAtAction(nameof(GetTelephely), new { id = ujTelephely.Id }, dto)); }
public async Task <ActionResult <TelephelyDTO> > UpdateTelephely([FromBody] TelephelyDTO telephely) { string user_id = User.Claims.FirstOrDefault(u => u.Type == ClaimTypes.NameIdentifier).Value; var cegadmin = await _context.Felhasznalo.FindAsync(user_id); if (!_context.Ceg.Any(c => c.CegadminId.Equals(user_id))) { ModelState.AddModelError("ceghiba", "A felhasználóhoz nem tartozik cég."); return(BadRequest(ModelState)); } if (!TelephelyExists(telephely.Id)) { ModelState.AddModelError("Telephely", "A megadott azonosítóval nem létezik telephely."); return(BadRequest(ModelState)); } if (_context.Telephely.Any(t => t.Cim.Equals(telephely.Cim) && t.Ceg_id == telephely.Ceg_id && t.Id != telephely.Id)) { ModelState.AddModelError("address", "A megadott néven már létezik telephely."); return(BadRequest(ModelState)); } var ceg = await _context.Ceg.Where(c => c.CegadminId.Equals(user_id)).FirstAsync(); if (telephely.Ceg_id != ceg.Id) { ModelState.AddModelError("ceghiba", "Nincs jogosultsága a parancs végrehajtásához."); return(BadRequest(ModelState)); } var frissitendo_telephely = await _context.Telephely.FindAsync(telephely.Id); frissitendo_telephely.Cim = telephely.Cim; await _context.SaveChangesAsync(); var dto = new TelephelyDTO(frissitendo_telephely); return(CreatedAtAction(nameof(GetTelephely), new { id = frissitendo_telephely.Id }, dto)); }