public async Task <ActionResult> SetRolePermission(string role_uid, string permission) { return(await RunActionAsync(async() => { var pers = permission?.JsonToEntity <List <string> >(throwIfException: false); if (!ValidateHelper.IsPlumpString(role_uid) || pers == null) { return GetJsonRes("参数错误"); } var map = pers.Select(x => { var m = new RolePermissionEntity() { RoleID = role_uid, PermissionID = x }; m.Init("dr"); return m; }).ToList(); var res = await this._roleService.SetRolePermissions(role_uid, map); if (res.error) { return GetJsonRes(res.msg); } return GetJsonRes(string.Empty); })); }
public async Task UpdateRoleToPermissesAsync(long roleId, long[] PermissionIds) { using (AdminUserContext ctx = new AdminUserContext()) { BaseService <RoleEntity> roleBs = new BaseService <RoleEntity>(ctx); var role = await roleBs.GetAll().SingleAsync(e => e.Id == roleId); BaseService <RolePermissionEntity> rolePermissionBs = new BaseService <RolePermissionEntity>(ctx); await rolePermissionBs.GetAll().ForEachAsync(e => { if (e.RoleId == roleId) { ctx.RolePermission.Remove(e); } }); BaseService <PermissionEntity> permissionBs = new BaseService <PermissionEntity>(ctx); await permissionBs.GetAll().ForEachAsync(e => { if (PermissionIds.Any(x => x == e.Id)) { RolePermissionEntity en = new RolePermissionEntity(); en.Role = role; en.Permission = e; ctx.RolePermission.Add(en); } }); await ctx.SaveChangesAsync(); } }
/// <summary> /// 设置角色权限 /// </summary> /// <param name="dto"></param> /// <returns></returns> public async Task <StatusResult> SetRolePermissionAsync(SetRolePermissionInputDto dto) { var result = new StatusResult(); var role = await _roleRepository.Where(o => o.Id == dto.RoleId && o.Enabled).AnyAsync(); if (!role) { result.SetErrorMessage("未获取到角色信息"); return(result); } await _rolePermissionRepository.DeleteAsync(o => o.RoleId == dto.RoleId); var data = new List <RolePermissionEntity>(); foreach (var item in dto.PermissionIds) { var model = new RolePermissionEntity() { Id = Snowflake.GenId(), PermissionId = item, RoleId = dto.RoleId }; data.Add(model); } await _rolePermissionRepository.InsertAsync(data); return(result); }
public static RolePermissionEntity ToRolePemissionDataModel(this Permission source) { var result = new RolePermissionEntity(); result.PermissionId = source.Id; return(result); }
public static Permission ToCoreModel(this RolePermissionEntity source) { var result = new Permission(); // result.InjectFrom(source.Permission); result = Mapper.Map <PermissionEntity, Permission>(source.Permission); return(result); }
public bool Delete(RolePermissionEntityViewModel dt, int id) { RolePermissionEntity dr = db.RolePermissionEntities.Where(i => i.rpeID == id).FirstOrDefault(); db.RolePermissionEntities.Remove(dr); var Result = db.SaveChanges(); return(Result == 1); }
public static RolePermissionEntity ToRolePemissionDataModel(this Permission source) { var result = new RolePermissionEntity(); result.PermissionId = source.Id; if (source.AssignedScopes != null) { result.Scopes = new List <PermissionScopeEntity>(source.AssignedScopes.Where(x => !String.IsNullOrEmpty(x.Scope)).Select(x => x.ToDataModel())); } return(result); }
public bool Update(RolePermissionEntityViewModel dt, int id) { RolePermissionEntity dr = db.RolePermissionEntities.Where(i => i.rpeID == id).FirstOrDefault(); dr.rpeID = dt.ID; dr.rpeUserRoleID = dt.UserRoleID; dr.rpeRolePermissionID = dt.RolePermissionID; var Result = db.SaveChanges(); return(Result == 1); }
public int Insert(RolePermissionEntityViewModel dt) { RolePermissionEntity dr = new RolePermissionEntity(); dr.rpeUserRoleID = dt.UserRoleID; dr.rpeRolePermissionID = dt.RolePermissionID; db.RolePermissionEntities.Add(dr); var Result = db.SaveChanges(); return(dr.rpeID); }
public static void Patch(this RolePermissionEntity source, RolePermissionEntity target) { if (target == null) { throw new ArgumentNullException("target"); } if (!source.Scopes.IsNullCollection()) { var comparer = AnonymousComparer.Create((PermissionScopeEntity x) => x.Scope); source.Scopes.Patch(target.Scopes, comparer, (sourceItem, targetItem) => { }); } }
public static Permission ToCoreModel(this RolePermissionEntity source, IPermissionScopeService scopeService) { var result = new Permission(); // result.InjectFrom(source.Permission); result = Mapper.Map <PermissionEntity, Permission>(source.Permission); result.AssignedScopes = source.Scopes.Select(x => new { source = x, target = scopeService.GetScopeByTypeName(x.Type) }) .Where(x => x.target != null) .Select(x => x.source.ToCoreModel(x.target)) .ToArray(); result.AvailableScopes = scopeService.GetAvailablePermissionScopes(result.Id).ToArray(); return(result); }
/// <summary> /// 分配操作权限 /// </summary> public void GrantPermission(UserEntity user, int roleID, int[] permissionIDs) { //1.0 清空该角色原有的操作权限 EntityManager <RolePermissionEntity> manager = new EntityManager <RolePermissionEntity>(); WhereStatement where = new WhereStatement(); where.Add(RolePermissionEntity.FieldRoleID, Comparison.Equals, roleID); manager.Delete(where); //2.0 添加当前选中的操作权限 foreach (int id in permissionIDs) { RolePermissionEntity entity = new RolePermissionEntity(); entity.RoleID = roleID; entity.PermissionID = id; entity.DeletionStateCode = (int)TrueFalse.True; entity.CreateUserId = user.ID.ToString(); entity.CreateBy = user.UserName; entity.CreateOn = DateTime.Now; manager.Insert(entity); } }
public void SaveRolePermission(RolePermissionEntity Permission) { using (RolePermissionDataAccess RolePermission = new RolePermissionDataAccess()) { RolePermission.SaveRolePermission(Permission); } }