public async Task <IActionResult> UpdateCeg([FromForm] CegKepDTO ceg) { string user_id = User.Claims.FirstOrDefault(u => u.Type == ClaimTypes.NameIdentifier).Value; var szuperadmin = await _context.Felhasznalo.FindAsync(user_id); if (!_context.Felhasznalo.Any(f => f.Id.Equals(ceg.CegadminId))) { ModelState.AddModelError("email", "A megadott azonosítóhoz nem tartozik felhasználó. " + ceg.CegadminId); return(BadRequest(ModelState)); } if (_context.Ceg.Any(c => c.CegadminId.Equals(ceg.CegadminId) && c.Id != ceg.Id)) { ModelState.AddModelError("email", "A megadott felhasználó már egy másik cég adminja."); return(BadRequest(ModelState)); } if (!CegExists(ceg.Id)) { ModelState.AddModelError("ceg", "A megadott azonosítóval nem létezik cég."); return(BadRequest(ModelState)); } var frissitendo_ceg = await _context.Ceg.FindAsync(ceg.Id); var regi_admin = await _context.Felhasznalo.FindAsync(ceg.CegadminId); regi_admin.jogosultsagi_szint = 1; var uj_admin = await _context.Felhasznalo.FindAsync(ceg.CegadminId); uj_admin.jogosultsagi_szint = 3; frissitendo_ceg.CegadminId = ceg.CegadminId; frissitendo_ceg.nev = ceg.Nev; if (System.IO.File.Exists(Path.Combine(webHostEnvironment.WebRootPath, frissitendo_ceg.ImagePath)) && ceg.image != null) { System.IO.File.Delete(Path.Combine(webHostEnvironment.WebRootPath, frissitendo_ceg.ImagePath)); } var imagePath = await UploadFileGeneratePath(ceg.image, ceg.Id.ToString()); frissitendo_ceg.ImagePath = imagePath; await _context.SaveChangesAsync(); var dto = new CegDTO(frissitendo_ceg); return(CreatedAtAction(nameof(GetCeg), new { id = frissitendo_ceg.Id }, dto)); }
public async Task <ActionResult <CegKepDTO> > AddCeg([FromForm] CegKepDTO ceg) { string user_id = User.Claims.FirstOrDefault(u => u.Type == ClaimTypes.NameIdentifier).Value; var szuperadmin = await _context.Felhasznalo.FindAsync(user_id); if (!_context.Felhasznalo.Any(f => f.Id.Equals(ceg.CegadminId))) { ModelState.AddModelError(nameof(ceg.CegadminId), "A megadott azonosítóhoz nem tartozik felhasználó."); return(BadRequest(ModelState)); } if (_context.Ceg.Any(c => c.CegadminId.Equals(ceg.CegadminId))) { ModelState.AddModelError("email", "A megadott felhasználó már egy másik cég adminja."); return(BadRequest(ModelState)); } var cegadmin = await _context.Felhasznalo.FindAsync(ceg.CegadminId); cegadmin.jogosultsagi_szint = 3; Ceg ujCeg = new Ceg(); ujCeg.nev = ceg.Nev; ujCeg.CegadminId = ceg.CegadminId; Console.WriteLine(ujCeg.ImagePath); _context.Ceg.Add(ujCeg); await _context.SaveChangesAsync(); var ceg_ujra = await _context.Ceg.Where(c => c.CegadminId.Equals(ceg.CegadminId)).FirstAsync(); var image_path = await UploadFileGeneratePath(ceg.image, ceg_ujra.Id.ToString()); if (image_path != null) { ceg_ujra.ImagePath = image_path; } else { ceg_ujra.ImagePath = "http://via.placeholder.com/160x160"; } await _context.SaveChangesAsync(); var dto = new CegDTO(ujCeg); return(CreatedAtAction(nameof(GetCeg), new { id = ujCeg.Id }, dto)); }