public static bool GetIsSecurityOperation(ZIsSecurityOperations isSecurityOperations, ZSecurityOperations operation) { bool result = false; switch (operation) { case ZSecurityOperations.Search: result = isSecurityOperations.IsSearch; break; case ZSecurityOperations.Create: result = isSecurityOperations.IsCreate; break; case ZSecurityOperations.Read: result = isSecurityOperations.IsRead; break; case ZSecurityOperations.Update: result = isSecurityOperations.IsUpdate; break; case ZSecurityOperations.Delete: result = isSecurityOperations.IsDelete; break; } return(result); }
public static bool IsDelete(ZIsSecurityOperations isSecurityOperations, ZOperationResult operationResult) { bool result = true; if (!isSecurityOperations.IsDelete) { result = false; operationResult.AddOperationError("", MessageNotAuthorized(isSecurityOperations.Activity, ZSecurityOperations.Delete)); } return(result); }
public ZIsSecurityOperations GetOperations(string activity) { ZIsSecurityOperations isSecurityOperations = new ZIsSecurityOperations(); isSecurityOperations.IsSearch = true; isSecurityOperations.IsCreate = true; isSecurityOperations.IsRead = true; isSecurityOperations.IsUpdate = true; isSecurityOperations.IsDelete = true; isSecurityOperations.IsExport = true; isSecurityOperations.IsImport = true; isSecurityOperations.IsExecute = true; return(isSecurityOperations); }
public static bool GetIsSecurityOperationByName(ZIsSecurityOperations isSecurityOperations, string name) { return(GetIsSecurityOperation(isSecurityOperations, GetSecurityOperationByAcronym(name))); }
public static bool GetIsSecurityOperationByAcronym(ZIsSecurityOperations isSecurityOperations, string acronym) { return(GetIsSecurityOperation(isSecurityOperations, GetSecurityOperationByAcronym(acronym))); }
public ZIsSecurityOperations GetOperations(string activity) { ZIsSecurityOperations result = new ZIsSecurityOperations(); result.Activity = activity; if (IdentityHelper.IsAdministrator) { result.IsSearch = true; result.IsCreate = true; result.IsRead = true; result.IsUpdate = true; result.IsDelete = true; result.IsExport = true; result.IsImport = true; result.IsExecute = true; return(result); } if (!String.IsNullOrEmpty(activity)) { string operationSearchAcronym = SecurityHelper.GetSecurityOperationAcronym(ZSecurityOperations.Search); string operationCreateAcronym = SecurityHelper.GetSecurityOperationAcronym(ZSecurityOperations.Create); string operationReadAcronym = SecurityHelper.GetSecurityOperationAcronym(ZSecurityOperations.Read); string operationUpdateAcronym = SecurityHelper.GetSecurityOperationAcronym(ZSecurityOperations.Update); string operationDeleteAcronym = SecurityHelper.GetSecurityOperationAcronym(ZSecurityOperations.Delete); IGenericRepository <ActivityRole> repositoryActivityRole = UnitOfWork.GetRepository <ActivityRole>(); IGenericRepository <Activity> repositoryActivity = UnitOfWork.GetRepository <Activity>(); IGenericRepository <UserRole> repositoryUserRole = UnitOfWork.GetRepository <UserRole>(); IQueryable <ActivityRole> activityRoles = from ActivityRole in repositoryActivityRole.Query from Activity in repositoryActivity.Query from UserRole in repositoryUserRole.Query where ActivityRole.ActivityId == Activity.Id && Activity.Name == activity && ActivityRole.RoleId == UserRole.RoleId && UserRole.UserId == IdentityHelper.UserId select ActivityRole; foreach (ActivityRole activityRole in activityRoles.ToList()) { string operations = activityRole.Operations.ToUpper(); result.IsSearch = result.IsSearch || operations.Contains(operationSearchAcronym); result.IsCreate = result.IsCreate || operations.Contains(operationCreateAcronym); result.IsRead = result.IsRead || operations.Contains(operationReadAcronym); result.IsUpdate = result.IsUpdate || operations.Contains(operationUpdateAcronym); result.IsDelete = result.IsDelete || operations.Contains(operationDeleteAcronym); } } return(result); }