public void UpdateRoleFeatures(RoleFeaturesViewModel data) { var roleId = data.Role.Id; var currRole = _roleRepository.Query(p => p.Id == roleId).FirstOrDefault(); if (currRole != null) { currRole.Name = data.Role.Name; _roleRepository.Update(currRole); SaveRoleFeatures(); } else { var roleInsert = new IdentityRole(); roleInsert.Id = roleId; roleInsert.Name = data.Role.Name; _roleRepository.Add(roleInsert); SaveRoleFeatures(); } //// delete role //_roleRepository.Delete(r => r.Id == roleId); //SaveRoleFeatures(); //// add new role //var roleInsert = new IdentityRole(); //roleInsert.Id = roleId; //roleInsert.Name = data.Role.Name; //_roleRepository.Add(roleInsert); //SaveRoleFeatures(); // delete role features _roleFeaturesRepository.Delete(r => r.RoleId == roleId); SaveRoleFeatures(); // add new role features var count = data.RoleFeaturesList.Count; for (var iloop = 0; iloop < count; iloop++) { var roleFeatures = new RoleFeatures(); roleFeatures.RoleId = roleId; roleFeatures.UnusedFeatureC = data.RoleFeaturesList[iloop].UnusedFeatureC; _roleFeaturesRepository.Add(roleFeatures); } SaveRoleFeatures(); }
public RoleFeaturesViewModel GetRoleFeatures(string roleId) { var result = new RoleFeaturesViewModel(); result.IsAdd = true; result.Role.Id = roleId; // set role name var role = _roleRepository.Query(r => r.Id == roleId).FirstOrDefault(); if (role != null) { result.Role.Name = role.Name; result.Role.RoleIndex = FindIndex(roleId); result.IsAdd = false; } result.AuthorizedRoleFeatureList = GetAuthorizedRoleFeatures(roleId); return(result); }
public void Post(RoleFeaturesViewModel data) { _roleFeaturesService.UpdateRoleFeatures(data); }