public ActionResult UpdateSysRole(int id) { RoleOperation uo = new RoleOperation(); Role u = uo.Get(id); return(View(u)); }
public ActionResult DeleteSysRole(int id) { RoleOperation uo = new RoleOperation(); return(Content(uo.Delete(id))); }
public JsonResult SaveConfigureOperation(FormCollection form) { JsonResultBO result = new JsonResultBO(true); int roleId = int.Parse(form["ROLE_ID"]); try { List <RoleOperation> obsoluteData = _roleOperationService.FindBy(x => x.RoleId == roleId).ToList(); _roleOperationService.DeleteRange(obsoluteData); IEnumerable <long> operationIds = form["OPERATION"].ToListNumber <long>(); List <RoleOperation> configData = new List <RoleOperation>(); foreach (var operationId in operationIds) { RoleOperation config = new RoleOperation() { OperationId = operationId, RoleId = roleId, IsAccess = 1, CreatedDate = DateTime.Now, UpdatedDate = DateTime.Now }; configData.Add(config); } SQLHelper.BulkInsert <RoleOperation>(configData); } catch (Exception ex) { result.Status = false; result.Message = "Cập nhật quyền không thành công"; _iLog.Error($"Cập nhật quyền cho vai trò Id = {roleId} không thành công", ex); } return(Json(result)); }
public bool AddOperation(Guid roleId, Guid operationId) { try { var roleOperationBO = new RoleOperationBO(); var roleOperation = roleOperationBO.Get(this.ConnectionHandler, roleId, operationId); if (roleOperation == null) { var operationMenu = new RoleOperation { OperationId = operationId, RoleId = roleId }; if (!roleOperationBO.Insert(this.ConnectionHandler, operationMenu)) { throw new Exception("خطایی در ذخیره منوی عملیات وجود دارد"); } } return(true); } catch (KnownException ex) { Log.Save(ex.Message, LogType.ApplicationError, ex.Source, ex.StackTrace); throw new KnownException(ex.Message, ex); } catch (Exception ex) { Log.Save(ex.Message, LogType.ApplicationError, ex.Source, ex.StackTrace); throw new KnownException(ex.Message, ex); } }
public ActionResult UpdateSysRoleSub(Role model) { RoleOperation uo = new RoleOperation(); uo.Update(model); return(JavaScript("pagesub();")); }
protected virtual void OnOperationAddedToRoleEvent(RoleOperation opr) { var handler = OperationAddedToRoleEvent; if (handler != null) { handler(opr); } }
/// <summary> /// 保存操作 /// </summary> /// <param name="sourceStr"></param> /// <returns></returns> //public Result SaveOperation(string sourceStr, Guid moduleID) //{ // Result result = new Result { IsSucess = true }; // var opsOriginal = operationBll.GetModuleOperation(moduleID);//原有op // var opsCurrent = JsonConvert.DeserializeObject<List<Operation_Readonly_Model>>(sourceStr);//目前op // try // { // var opsToAdd = (from o in opsCurrent // where string.IsNullOrEmpty(o.ID) // select o).ToList(); // var opsToDel = (from o in opsOriginal // where !(from checkedOp in opsCurrent select checkedOp.ID).Contains(o.ID.ToString()) // select o).ToList(); // var opsToUpdate = (from o in opsCurrent // where !string.IsNullOrEmpty(o.ID) // select o).ToList(); // if (opsToAdd.Count != 0) // { // int index = opsOriginal.Count == 0 ? 1 : opsOriginal.OrderByDescending(o => o.OrderNum).FirstOrDefault().OrderNum; // opsToAdd.ToList().ForEach(o => // { // var newid = Guid.NewGuid(); // o.ID = newid.ToString(); // operationBll.Add(o.ToEntity(index++)); // //与管理员角色关联 // string[] defaultRoleNames = System.Configuration.ConfigurationManager.AppSettings["DefaultRole"].Split(';'); // foreach (string name in defaultRoleNames) // { // var curRole = new DZAFCPortal.Authorization.DAL.RoleService().FirstOrDefault(r => r.Name == name); // if (curRole == null) // continue; // RoleOperation rel = new RoleOperation // { // OperationID = newid, // RoleID = curRole.ID // }; // roleOperationBll.Add(rel); // } // }); // } // if (opsToDel.Count != 0) // { // opsToDel.ToList().ForEach(o => // { // operationBll.Remove(o); // roleOperationBll.RemoveRelationWithOpID(o.ID);// 关联Role关系删除 // urlBll.RemoveAll(o.ID); //关联url删除 // }); // } // if (opsToUpdate.Count != 0) // { // int index = opsOriginal.OrderByDescending(o => o.OrderNum).FirstOrDefault().OrderNum; // opsToUpdate.ToList().ForEach(o => // { // var entity = operationBll.GetByOpeationID(new Guid(o.ID)); // entity.Name = o.Name; // operationBll.Update(entity); // }); // } // result.Message = "操作修改保存成功!"; // } // catch (Exception ex) // { // result.IsSucess = false; // result.Message = "保存异常,详细信息为" + ex.Message; // } // return result; //} public Result SaveOperation(string sourceStr, string moduleID) { var op = JsonConvert.DeserializeObject <Operation_Readonly_Model>(sourceStr); Result result = new Result { IsSucess = true }; try { if (string.IsNullOrEmpty(op.ID)) { var newid = Guid.NewGuid().ToString(); op.ID = newid; operationBll.Add(op.ToEntity()); //与管理员角色关联 var defaultRoleNames = DZAFCPortal.Config.AppSettings.DefaultRoles; foreach (string name in defaultRoleNames) { var curRole = new DZAFCPortal.Authorization.DAL.RoleService().GenericService.FirstOrDefault(r => r.Name == name); if (curRole == null) { continue; } RoleOperation rel = new RoleOperation { OperationID = newid, RoleID = curRole.ID }; roleOperationBll.Add(rel); } } else { //update var operationEntity = operationBll.GetByOpeationID(op.ID); operationEntity.Name = op.Name; operationEntity.Code = op.Code; operationEntity.OrderNum = op.OrderNum; operationEntity.IsEnable = op.IsEnable; operationEntity.IsDelete = op.IsDelete; operationEntity.ControlID = op.Code; operationBll.Update(operationEntity); } result.Message = "Success!"; } catch (Exception ex) { result.IsSucess = false; result.Message = "保存异常,详细信息为" + ex.Message; } return(result); }
public ActionResult InsertSysRoleSub(Role u) { RoleOperation uo = new RoleOperation(); u.CreateTime = DateTime.Now; u.IsDelete = false; u.Type = 1; uo.Insert(u); return(JavaScript("pagesub();")); }
public string SetRoleOperation(string roleID, List <string> lstOperationID, string createAccount) { //List<string> lstOpera = new OperationBLL().GetAllOperation().Select(p => p.ID).ToList(); //todo:验证该人有没有权限 List <RoleOperation> lstRoleOperation_ToDelete = service.GenericService.GetAll(p => p.RoleID == roleID).ToList(); foreach (var item in lstRoleOperation_ToDelete) { service.GenericService.Delete(item); } //update by 唐万祯 at 2014/08/07 //修改通过 复选框获取其选中的操作方法 //修正为通过ID查找操作,再在操作中取出与该操作模块以及ControlID一致的操作 var opService = new OperationService(); List <string> lstOpID = new List <string>(); foreach (var id in lstOperationID) { var op = opService.GenericService.GetModel(id); var tempIds = opService.GenericService.GetAll(p => p.ModuleID == op.ModuleID && p.ControlID == op.ControlID).Select(p => p.ID).ToList(); if (tempIds != null && tempIds.Count > 0) { lstOpID.AddRange(tempIds); } } //delete by 唐万祯 at 2014/08/08 //new OperationBLL().GetAllOperation().Where(p => lstOperationID.Contains(p.ControlID)).Select(p => p.ID).ToList(); try { foreach (var operationID in lstOpID) { RoleOperation ro = new RoleOperation(); ro.ID = Guid.NewGuid().ToString(); ro.RoleID = roleID; ro.OperationID = operationID; ro.CreateTime = DateTime.Now; ro.Creator = createAccount; service.Add(ro); } int res = service.GenericService.Save(); return("true"); } catch (Exception ex) { return("error:" + ex.Message); } }
public ActionResult SysRoleList(SearchCodition searchCoditon) { TempData["searchCoditon"] = searchCoditon; RoleOperation uo = new RoleOperation(); List <Role> list = uo.GetList(searchCoditon.SearchName, searchCoditon.PageIndex, searchCoditon.PageSize); int count = uo.GetCount(); if (Request.IsAjaxRequest()) { return(PartialView("SysRoleTable", new PagedList <Role>(list, searchCoditon.PageIndex, searchCoditon.PageSize, count))); } return(PartialView(new SearchCodition())); }
/// <summary> /// 当前地址是否有权限 /// </summary> /// <param name="path"></param> /// <param name="authorizeKey"></param> /// <returns></returns> public bool HasPermit(string path, string authorizeKey) { if (IsAdmin) { return(true); } if (RoleOperation != null) { return (RoleOperation.FindAll( a => !String.IsNullOrEmpty(a.MODULE_URL) && a.MODULE_URL.ToLower() == path.Trim('~').ToLower() && a.OPERATION_CODE == authorizeKey) .Count > 0); } return(false); }
public string getDefaultPermission() { RoleOperation ro = new RoleOperation(); List <Role> data = ro.getRoles(); ModuleDetails md = new ModuleDetails(); List <ModuleDetails> det = new List <ModuleDetails>(); foreach (var d in data) { det.Add(new ModuleDetails { Module = d.Roles, status = "off" }); } string js = JsonConvert.SerializeObject(det); return(js); }
// // GET: /Role/ public ActionResult SysRoleList() { RoleOperation uo = new RoleOperation(); SearchCodition searchCoditon = new SearchCodition() { PageSize = 20 }; List <Role> list = uo.GetList(); int count = uo.GetCount(); ViewBag.list = new PagedList <Role>(list, searchCoditon.PageIndex, searchCoditon.PageSize, count); return(View(searchCoditon)); }
// // GET: /User/ public ActionResult SysUserList() { UserOperation uo = new UserOperation(); RoleOperation rolebll = new RoleOperation(); SysUserSearchCodition searchCoditon = new SysUserSearchCodition() { PageSize = 20 }; List <User> list = uo.GetList(); int count = uo.GetCount(); ViewBag.list = new PagedList <User>(list, searchCoditon.PageIndex, searchCoditon.PageSize, count); ViewBag.roles = rolebll.GetList("", 1, 100); return(View(searchCoditon)); }
/// <summary> /// 保存角色分配功能操作 /// 功能操作列表必须是当前角色所有的功能操作集合 /// </summary> /// <param name="roleId">角色Id</param> /// <param name="operationIdList">操作Id集合</param> public virtual void SetRoleOperation(long roleId, List <long> operationIdList) { RoleOperationRepository roleOperationRepository = RepositoryFacade.ResolveInstance <RoleOperationRepository>(); var roleOperationList = roleOperationRepository.GetByRoleIdList(new List <long> { roleId }).Concrete().ToList(); var changeRoleOpertaionList = roleOperationRepository.NewList(); //处理删除的操作 foreach (var item in roleOperationList) { if (operationIdList.All(id => id != item.OperationId)) { changeRoleOpertaionList.Add(item); item.PersistenceStatus = PersistenceStatus.Deleted; } } var addRole = new Role { Id = roleId }; //处理新增操作 foreach (var item in operationIdList) { if (roleOperationList.All(o => o.OperationId != item)) { RoleOperation roleOpertaion = new RoleOperation(); roleOpertaion.Role = addRole; roleOpertaion.Operation = new ResourceOperation() { Id = item }; roleOpertaion.PersistenceStatus = PersistenceStatus.New; changeRoleOpertaionList.Add(roleOpertaion); } } if (changeRoleOpertaionList.Count > 0) { roleOperationRepository.Save(changeRoleOpertaionList); } }
/// <summary> /// 获取页面有哪些权限 /// </summary> /// <param name="path"></param> /// <returns></returns> public AuthorizeKey GetPagePermit(string path) { var authorizeKey = new AuthorizeKey(); if (IsAdmin) { authorizeKey.CanAdd = true; authorizeKey.CanDelete = true; authorizeKey.CanUpdate = true; return(authorizeKey); } //判断用户权限 if (RoleOperation != null) { authorizeKey.CanAdd = RoleOperation.FindAll( a => !String.IsNullOrEmpty(a.MODULE_URL) && a.MODULE_URL.ToLower() == path.Trim('~').ToLower() && a.OPERATION_CODE == AuthorizeKey.Add) .Count > 0; authorizeKey.CanDelete = RoleOperation.FindAll( a => !String.IsNullOrEmpty(a.MODULE_URL) && a.MODULE_URL.ToLower() == path.Trim('~').ToLower() && a.OPERATION_CODE == AuthorizeKey.Delete).Count > 0; authorizeKey.CanUpdate = RoleOperation.FindAll( a => !String.IsNullOrEmpty(a.MODULE_URL) && a.MODULE_URL.ToLower() == path.Trim('~').ToLower() && a.OPERATION_CODE == AuthorizeKey.Update).Count > 0; authorizeKey.CanOpen = RoleOperation.FindAll( a => !String.IsNullOrEmpty(a.MODULE_URL) && a.MODULE_URL.ToLower() == path.Trim('~').ToLower() && a.OPERATION_CODE == AuthorizeKey.Open).Count > 0; } return(authorizeKey); }
public async Task <HttpResponseMessage> UpdateOperations(AccessRoleVM accessRoles) { try { using (var roleOperationBusiness = BusinessContext.GetBusinessRule <RoleOperation>(this.BusinessRule.OperationAccess, this.BusinessRule.UnitOfWork)) { var dbRoleOprOerations = await roleOperationBusiness.Queryable().Where(roleOpr => roleOpr.RoleId == accessRoles.RoleId).ToListAsync(); var currentRoleOperationIds = accessRoles.RoleOperations.Select(s => s.OperationId); var dbRoleOprOperationIds = dbRoleOprOerations.Select(dbRoleOpr => dbRoleOpr.OperationId); var roleOprOperationIdsForDelete = dbRoleOprOperationIds.Except(currentRoleOperationIds); foreach (var roleOprOperaionID in roleOprOperationIdsForDelete) { RoleOperation roleOperation = dbRoleOprOerations.FirstOrDefault(dbRoleOpr => dbRoleOpr.OperationId == roleOprOperaionID); roleOperationBusiness.Delete(roleOperation); } // currentRoleOperationIds = role.RoleOperations.Where(roleOpr => currentRoleOperationIds.Contains(roleOpr.OperationId)).Select(roleOpr => roleOpr.OperationId).ToList(); var roleOperationIdsForInsert = accessRoles.RoleOperations.Select(currentRoleOpr => currentRoleOpr.OperationId).Except(dbRoleOprOperationIds); foreach (var roleOprIdForInsert in roleOperationIdsForInsert) { RoleOperation roleOperationForInsert = new RoleOperation() { OperationId = roleOprIdForInsert, RoleId = accessRoles.RoleId }; roleOperationBusiness.Insert(roleOperationForInsert); } await roleOperationBusiness.SaveChangesAsync(); return(Request.CreateResponse(HttpStatusCode.OK, new { resultCode = (int)ResultCode.Successful, data = accessRoles.RoleId })); } } catch (Exception ex) { return(await this.HandleExceptionAsync(ex)); } }
public JsonResult Save(string operations, int? id) { if (operations == null || id == null || !id.HasValue) { return Json(new { success = false, message = "更新失败", status = "error" }); } JavaScriptSerializer serializer = new JavaScriptSerializer(); IList<int> operationids = serializer.Deserialize<IList<int>>(operations); Role role = Role.Load(id.Value); if (role == null) { return Json(new { success = false, message = "更新失败,请检查输入", status = "error" }); } IList<Operation> existOperation = role.Operations; foreach (var n in operationids) { Operation operation = Operation.Load(n); if (operation == null) continue; RoleOperation roleOperation = RoleOperation.Load(new RoleOperationKey() { RoleId = id.Value, OperationId = n }); if (roleOperation == null) { roleOperation = new RoleOperation(); roleOperation.Id = new RoleOperationKey() { OperationId = n, RoleId = id.Value }; //roleOperation.Status = 0; roleOperation.Save(); } else { existOperation.Remove(operation); } } foreach (var d in existOperation) { RoleOperation roleOperation = RoleOperation.Load(new RoleOperationKey() { OperationId = d.Id, RoleId = id.Value }); roleOperation.DeleteOnSave(); roleOperation.Save(); } return Json(new { success = true, message = "更新成功", status = "success" }); }
public IAsyncResult BeginExecuteRoleOperation(string subscriptionID, string serviceName, string deploymentName, string roleInstanceName, RoleOperation roleOperation, AsyncCallback callback, object state) { throw new NotImplementedException(); }
public static void InitDbData(AuthorizationContext context) { #region -----添加Application------ //后台 var application_background = new Applications(); application_background.ID = Guid.NewGuid().ToString(); application_background.IsEnable = true; application_background.Code = "NyAdmin"; application_background.Name = "后台管理"; context.Application.Add(application_background); //前台 var application_front = new Applications(); application_front.ID = Guid.NewGuid().ToString(); application_front.IsEnable = true; application_front.Code = "NyClient"; application_front.Name = "前台管理"; context.Application.Add(application_front); #endregion #region -----添加角色------ var role = new Role(); role.ID = Guid.NewGuid().ToString(); role.ApplicationID = application_background.ID; role.Name = "超级管理员"; role.Code = "cjgly"; role.IsDelete = false; role.IsEnable = true; context.Role.Add(role); //create zhanxl //编排人员 var role1 = new Role(); role1.ID = Guid.NewGuid().ToString(); role1.ApplicationID = application_background.ID; role1.Name = "编排人员"; role1.Code = "GZBPRY"; role1.IsDelete = false; role1.IsEnable = true; context.Role.Add(role1); //反馈人员 var role2 = new Role(); role2.ID = Guid.NewGuid().ToString(); role2.ApplicationID = application_background.ID; role2.Name = "反馈人员"; role2.Code = "FKRY"; role2.IsDelete = false; role2.IsEnable = true; context.Role.Add(role2); //领导 var role3 = new Role(); role3.ID = Guid.NewGuid().ToString(); role3.ApplicationID = application_background.ID; role3.Name = "领导"; role3.Code = "LD"; role3.IsDelete = false; role3.IsEnable = true; context.Role.Add(role3); var roleBgs = new Role(); roleBgs.ID = Guid.NewGuid().ToString(); roleBgs.ApplicationID = application_background.ID; roleBgs.Name = "会务管理办公室"; roleBgs.Code = "hwglbgs"; roleBgs.IsDelete = false; roleBgs.IsEnable = true; context.Role.Add(roleBgs); #endregion #region ------添加用户------- User user = new User { Account = "spadmin", NamePY = "spadmin", ID = Guid.NewGuid().ToString(), FirstName = "admin", LastName = "sp", DisplayName = "管理员", Address = "", Email = "", MobilePhone = "", Gender = 1, Status = 1, CreateTime = DateTime.Now, ModifyTime = DateTime.Now, OrganizationID = Guid.NewGuid().ToString(), }; context.User.Add(user); #endregion #region -------添加用户和角色的关系--------- var roleUser = new RoleUser(); roleUser.ID = Guid.NewGuid().ToString(); roleUser.RoleID = role.ID; roleUser.UserID = user.ID; context.RoleUser.Add(roleUser); #endregion #region -------添加ModuleGroup------ var modulGroup = new ModuleGroup() { ID = Guid.NewGuid().ToString(), Name = "权限管理", Summary = "权限管理", Icon = "ico", OrderNum = 99, }; context.ModuleGroup.Add(modulGroup); #endregion #region --------添加Module 以及其关联------- var moduleManage = new Module() { ID = Guid.NewGuid().ToString(), Name = "模块管理", Code = "mokuaiguanli", Url = "/Authorization/Modules/ModuleManagement.aspx", IsEnable = true, IsDelete = false, OrderNum = 1, ModuleGroup_ID = modulGroup.ID, ApplicationID = application_background.ID }; context.Module.Add(moduleManage); var OperationManage = new Module() { ID = Guid.NewGuid().ToString(), Name = "操作管理", Code = "caozuoguanli", Url = "/Authorization/Operations/OperationManagement.aspx", IsEnable = true, IsDelete = false, OrderNum = 2, ModuleGroup_ID = modulGroup.ID, ApplicationID = application_background.ID }; context.Module.Add(OperationManage); #endregion #region ----添加Operation及与Role关联------ /*********添加Operation***********/ //模块管理 --> '管理'操作 var Op_ModuleManage = new Operation { ID = Guid.NewGuid().ToString(), Name = "管理", Code = "ModuleManage_Manage_01", OrderNum = 1, ControlID = "ModuleManage_Manage_01", IsEnable = true, IsDelete = false, CreateTime = DateTime.Now, ModifyTime = DateTime.Now, ModuleID = moduleManage.ID }; context.Operation.Add(Op_ModuleManage); //操作管理 --> '管理'操作 var Op_OperationManage = new Operation { ID = Guid.NewGuid().ToString(), Name = "管理", Code = "OperationManage_Manage_01", OrderNum = 1, ControlID = "OperationManage_Manage_01", IsEnable = true, IsDelete = false, CreateTime = DateTime.Now, ModifyTime = DateTime.Now, ModuleID = OperationManage.ID }; context.Operation.Add(Op_OperationManage); /*********添加Operation与Role的关联***********/ var oP_modulemanage_Role_RL = new RoleOperation { ID = Guid.NewGuid().ToString(), OperationID = Op_ModuleManage.ID, RoleID = role.ID, CreateTime = DateTime.Now, ModifyTime = DateTime.Now }; context.RoleOperation.Add(oP_modulemanage_Role_RL); var oP_operationmanage_Role_RL = new RoleOperation { ID = Guid.NewGuid().ToString(), OperationID = Op_OperationManage.ID, RoleID = role.ID, CreateTime = DateTime.Now, ModifyTime = DateTime.Now }; context.RoleOperation.Add(oP_operationmanage_Role_RL); #endregion context.SaveChanges(); }
public void Add(RoleOperation model) { service.GenericService.Add(model); service.GenericService.Save(); }
public ActionResult Login(LoginViewModel model) { try { if (!ModelState.IsValid) { return(View(model)); } MemberOperation memberDataOperation = new MemberOperation(); RoleOperation roleDataOperation = new RoleOperation(); if (memberDataOperation.CheckUserData(model)) { LoginUser user = new LoginUser(); //登入會員的角色編號 var tmpRole = from c in memberDataOperation.Get() where model.Email == c.Email select c.Role_No; foreach (var item in tmpRole) { if (item.Equals(1)) { user.Identity = Identity.User; } else if (item.Equals(2)) { user.Identity = Identity.Admin; } } //登入會員的名稱 user.UserName = memberDataOperation.user.Name; //登入會員的帳號 user.UserEmail = memberDataOperation.user.Email.ToString(); FormsAuthManager authManager = new FormsAuthManager(); authManager.SignIn(user); switch (user.Identity) { case Identity.User: return(RedirectToAction("Index", "Home")); case Identity.Admin: return(RedirectToAction("Index", "Admin")); default: return(RedirectToAction("Index", "Home")); } } else { ModelState.AddModelError("", "無效的帳號或密碼。"); return(View()); } } catch (Exception ex) { TempData["Msg"] = ex.ToString(); return(View()); } }