public static UserPermissions GetPermissions(string userId) { var userObjectPermDA = new UserObjectPermissionDataAdapter(); var list = userObjectPermDA.GetByUserId(userId); if (list != null && list.Count > 0) { return(new UserPermissions { Permissions = list, InheriteFromRole = false }); } var user = GetUserById(userId); var roleSvc = new RoleService(); var rolePermissionList = roleSvc.GetPermissions(user.Role.Id); var result = rolePermissionList.Select(item => new UserObjectPermission() { Id = item.Id, ObjectType = item.ObjectType, User = user, Permission = item.Permission }).ToList(); return(new UserPermissions { InheriteFromRole = true, Permissions = result }); }
public void SetPermission(ObjectPermissions objectPermissions) { var oldPerm = GetPermissions(objectPermissions.ObjectId); var ropAdapter = new RoleObjectPermissionDataAdapter(); foreach (var item in oldPerm.RolesPermissions) { ropAdapter.Delete(item.Id); } var uopAdapter = new UserObjectPermissionDataAdapter(); foreach (var item in oldPerm.UsersPermissions) { uopAdapter.Delete(item.Id); } foreach (var item in objectPermissions.RolesPermissions) { ropAdapter.Insert(item); } foreach (var item in objectPermissions.UsersPermissions) { uopAdapter.Insert(item); } }
public MoneySource Insert(MoneySource moneySource) { var source = _adapter.Insert(moneySource); var userPermissionAdapter = new UserObjectPermissionDataAdapter(); userPermissionAdapter.Insert(new UserObjectPermission { ObjectType = "MoneySource", ObjectId = source.Id, Permission = PermissionEnum.Read | PermissionEnum.Create | PermissionEnum.Edit | PermissionEnum.Delete, User = source.Owner }); return(source); }
public ObjectPermissions GetPermissions(string moneySourceId) { var result = new ObjectPermissions { ObjectId = moneySourceId, ObjectType = "MoneySource", }; var ropAdapter = new RoleObjectPermissionDataAdapter(); result.RolesPermissions = ropAdapter.GetByObjectId(moneySourceId); var uopAdapter = new UserObjectPermissionDataAdapter(); result.UsersPermissions = uopAdapter.GetByObjectId(moneySourceId); return(result); }
public void Delete(string id) { _adapter.Delete(id); var ropAdapter = new RoleObjectPermissionDataAdapter(); var roleList = ropAdapter.GetByObjectId(id); foreach (var item in roleList) { ropAdapter.Delete(item.Id); } var uopAdapter = new UserObjectPermissionDataAdapter(); var userList = uopAdapter.GetByObjectId(id); foreach (var item in userList) { uopAdapter.Delete(item.Id); } }
public static void SetPermissions(string userId, UserPermissions permissions) { var userObjectPermDA = new UserObjectPermissionDataAdapter(); if (permissions.InheriteFromRole) { var list = userObjectPermDA.GetByUserId(userId); foreach (var item in list) { userObjectPermDA.Delete(item.Id); } } else { foreach (var item in permissions.Permissions) { userObjectPermDA.Insert(item); } } }