public IActionResult Update([FromBody] MisUser misUser) { if (ModelState.IsValid && IsCurrentUserActiveGlobalAdmin()) { var dbMisUser = _context.MisUsers.SingleOrDefault(b => b.MisUserID == misUser.MisUserID && b.Deleted == false); if (dbMisUser != null) { dbMisUser.Name = misUser.Name; dbMisUser.IdentityName = misUser.IdentityName; dbMisUser.IsActive = misUser.IsActive; dbMisUser.IsAdmin = misUser.IsAdmin; dbMisUser.CenterID = misUser.CenterID; _context.Entry(dbMisUser).State = EntityState.Modified; _context.SaveChanges(); RemoveUserModifyRights(dbMisUser); foreach (var modifyRight in misUser.ModifyRights) { var newRight = new ModifyRight() { MisUserID = misUser.MisUserID, CenterID = modifyRight.CenterID, CanAdmin = modifyRight.CanAdmin, CanRead = modifyRight.CanRead, CanWrite = modifyRight.CanWrite }; _context.ModifyRights.Add(newRight); } _context.SaveChanges(); dbMisUser.Center = _context.Centers.SingleOrDefault(b => b.CenterID == dbMisUser.CenterID && b.Deleted == false); dbMisUser.ModifyRights = _context.ModifyRights.Where(b => b.ModifyRightID == dbMisUser.MisUserID).ToList(); return(Ok(dbMisUser)); } } return(BadRequest()); }
public IActionResult Create([FromBody] MisUser misUser) { if (ModelState.IsValid && IsCurrentUserActiveGlobalAdmin()) { var newUser = new MisUser() { Name = misUser.Name, IdentityName = misUser.IdentityName, IsActive = misUser.IsActive, IsAdmin = misUser.IsAdmin, CenterID = misUser.CenterID }; newUser.Center = _context.Centers.SingleOrDefault(b => b.CenterID == misUser.CenterID && b.Deleted == false); if (newUser.Center == null) { return(BadRequest()); } _context.MisUsers.Add(newUser); _context.SaveChanges(); foreach (var modifyRight in misUser.ModifyRights) { var newModifyRight = new ModifyRight() { MisUserID = newUser.MisUserID, CenterID = modifyRight.CenterID, CanAdmin = modifyRight.CanAdmin, CanRead = modifyRight.CanRead, CanWrite = modifyRight.CanWrite, }; _context.ModifyRights.Add(newModifyRight); } _context.SaveChanges(); newUser.ModifyRights = _context.ModifyRights.Where(b => b.ModifyRightID == newUser.MisUserID).ToList(); return(Ok(newUser)); } return(BadRequest()); }