private async void Add_Click(object sender, EventArgs e) { if (functionRoleBindingSource.DataSource != null) { Role role = comboBox1.SelectedItem as Role; if (role != null) { foreach (DataGridViewRow row in dataGridView1.SelectedRows) { Function f = row.DataBoundItem as Function; if (f != null) { FunctionRole fr = db.FunctionRoles.Where(p => p.FunctionID == f.FunctionID && p.RolesID == role.RolesID).SingleOrDefault(); if (fr == null) { FunctionRole obj = new FunctionRole() { RolesID = role.RolesID, FunctionID = f.FunctionID }; db.FunctionRoles.Add(obj); } } } await db.SaveChangesAsync(); functionRoleBindingSource.DataSource = db.FunctionRoles.Where(r => r.RolesID == role.RolesID).ToList(); } } }
//открепить функцию роли пользователя public void RemoveFunctionRole(FunctionRole obj) { using (DataEntities db = new DataEntities()) { db.FunctionRoles.Attach(obj); db.FunctionRoles.Remove(obj); db.SaveChanges(); } }
public FunctionRole GetFunction(string serialid) { FunctionRole rect = null; try { ISqlMapper mapper = Mapper.Instance(); rect = (FunctionRole)mapper.QueryForObject("SelectFunctionRole", serialid); } catch (Exception ex) { Logger.Error(ex); } return(rect); }
public bool Update(FunctionRole obj) { bool rect = false; try { ISqlMapper mapper = Mapper.Instance(); mapper.Update("UpdateFunctionRole", obj); rect = true; } catch (Exception ex) { Logger.Error(ex); } return(rect); }
//закрепить функцию роли пользователя public void AddFunctionRole(Function function, Role role) { using (DataEntities db = new DataEntities()) { FunctionRole fr = db.FunctionRoles.Where(p => p.FunctionId == function.Id && p.RoleId == role.Id).SingleOrDefault(); if (fr == null) { FunctionRole obj = new FunctionRole() { RoleId = role.Id, FunctionId = function.Id }; db.FunctionRoles.Add(obj); db.SaveChanges(); } } }
//открепить функцию роли пользователя private void btnRemove_Click(object sender, EventArgs e) { if (functionRoleBindingSource.DataSource != null) { Role role = cboRole.SelectedItem as Role; if (role != null) { foreach (DataGridViewRow row in dataGridViewFunctionRole.SelectedRows) { FunctionRole fr = row.DataBoundItem as FunctionRole; if (fr != null) { AuthServices.RemoveFunctionRole(fr); functionRoleBindingSource.Remove(fr); } } } } }
private async void Remove_Click(object sender, EventArgs e) { if (functionRoleBindingSource.DataSource != null) { Role role = comboBox1.SelectedItem as Role; if (role != null) { foreach (DataGridViewRow row in dataGridView2.SelectedRows) { FunctionRole fr = row.DataBoundItem as FunctionRole; if (fr != null) { db.FunctionRoles.Remove(fr); functionRoleBindingSource.Remove(fr); } } await db.SaveChangesAsync(); } } }
/// <summary> /// 初始化权限独特属性 /// </summary> public Permission_Page(string data) : base(data) { if (string.IsNullOrWhiteSpace(data)) { PageUrl = ""; OpenMode = PageOpenMode.No; RelyOn = FunctionRole.System; } else { JObject jobj = JObject.Parse(data); if (jobj["PageUrl"] == null || jobj["PageUrl"].ToString() == "") { PageUrl = ""; } else { PageUrl = (String)jobj["PageUrl"]; } if (jobj["OpenMode"] == null || jobj["OpenMode"].ToString() == "") { OpenMode = PageOpenMode.No; } else { OpenMode = (PageOpenMode)((int)jobj["OpenMode"]); } if (jobj["RelyOn"] == null || jobj["RelyOn"].ToString() == "") { RelyOn = FunctionRole.System; } else { RelyOn = (FunctionRole)((int)jobj["RelyOn"]); } } }
public void AddFunctionToRole(FunctionRole functionRole) { _functionRoleRepository.Add(functionRole); }
//открепить функцию роли пользователя public static void RemoveFunctionRole(FunctionRole obj) { authobject.RemoveFunctionRole(obj); }
public async Task <ServiceResponseBase> UpdateFunctionTree(TreeData models, AccountViewModel account) { try { //var reFunctions = await GetList(); var roleFuncs = await _accessManagementContext.FunctionRole .Where(o => o.RoleId == Convert.ToInt32(models.Id)).ToListAsync(); foreach (var roleFunc in roleFuncs) { var function = await _accessManagementContext.Function.FirstOrDefaultAsync(o => o.Id == roleFunc.FunctionId); var _function = models.DataTree.FirstOrDefault(o => o.id == function.Code); if (_function == null) { _accessManagementContext.FunctionRole.Remove(roleFunc); } else { #region 更新functions string opNames = ""; foreach (var d in _function.children) { if (d.id.Contains("OpName1")) { opNames += "OpName1,"; } if (d.id.Contains("OpName2")) { opNames += "OpName2,"; } if (d.id.Contains("OpName3")) { opNames += "OpName3,"; } if (d.id.Contains("OpName4")) { opNames += "OpName4,"; } if (d.id.Contains("OpName5")) { opNames += "OpName5,"; } if (d.id.Contains("OpName6")) { opNames += "OpName6,"; } if (d.id.Contains("OpName7")) { opNames += "OpName7,"; } if (d.id.Contains("OpName8")) { opNames += "OpName8,"; } if (d.id.Contains("OpName9")) { opNames += "OpName9,"; } if (d.id.Contains("OpName10")) { opNames += "OpName10,"; } } #endregion roleFunc.OpNames = opNames.Remove(opNames.Count() - 1); } } var functionIds = roleFuncs.Select(o => o.FunctionId).ToList(); var functionCodes = await _accessManagementContext.Function.Where(o => functionIds.Contains(o.Id)) .Select(o => o.Code).ToListAsync(); var _models = models.DataTree.Where(o => !functionCodes.Contains(o.id)).ToList(); foreach (var model in _models) { var function = await _accessManagementContext.Function. Where(o => o.Code == model.id && o.CompanyId == account.CompanyId).FirstOrDefaultAsync(); if (function == null) { continue; } var functionRole = new FunctionRole() { RoleId = Convert.ToInt32(models.Id), FunctionId = function.Id }; string opNames = ""; foreach (var d in model.children) { if (d.id.Contains("OpName1")) { opNames += "OpName1,"; } if (d.id.Contains("OpName2")) { opNames += "OpName2,"; } if (d.id.Contains("OpName3")) { opNames += "OpName3,"; } if (d.id.Contains("OpName4")) { opNames += "OpName4,"; } if (d.id.Contains("OpName5")) { opNames += "OpName5,"; } if (d.id.Contains("OpName6")) { opNames += "OpName6,"; } if (d.id.Contains("OpName7")) { opNames += "OpName7,"; } if (d.id.Contains("OpName8")) { opNames += "OpName8,"; } if (d.id.Contains("OpName9")) { opNames += "OpName9,"; } if (d.id.Contains("OpName10")) { opNames += "OpName10,"; } } functionRole.OpNames = opNames.Remove(opNames.Count() - 1); _accessManagementContext.FunctionRole.Add(functionRole); } await _accessManagementContext.SaveChangesAsync(); return(new ServiceResponseBase() { Status = Status.ok }); } catch (Exception ex) { _logger.LogError(ex.Message, ex); return(new ServiceResponseBase() { Status = Status.error, Message = ex.Message }); } }