public static List <Module> GetPermissionModules(string componentId) { List <Module> list = new List <Module>(); DataRowView[] array = ((ModuleCache) new ModuleCache().GetData()).dvModuleBy_ComId.FindRows(componentId); for (int i = 0; i < array.Length; i++) { DataRowView dataRowView = array[i]; Module module = new Module(); Module @object = ModuleUtils.GetObject(dataRowView.Row); bool flag = ModuleUtils.IsRequirePermission(@object); if (flag) { list.Add(@object); } } return(list); }
public static UserModulePermission GetUserModulePermission(string userId, int amId) { UserModulePermission modulePermission = new UserModulePermission(); User user = UserUtils.GetUser(userId); bool flag = user == null; UserModulePermission result; if (flag) { result = modulePermission; } else { Module module = ModuleUtils.GetModule(amId); bool flag2 = module == null; if (flag2) { result = modulePermission; } else { modulePermission.UserId = user.UserId; modulePermission.AmId = module.MdId; bool flag3 = (user.Type == UserType.S && amId >= 102010001 && amId <= 102019999) || !ModuleUtils.IsRequirePermission(module); if (flag3) { modulePermission.View = (modulePermission.Insert = (modulePermission.Edit = (modulePermission.Delete = (modulePermission.Print = (modulePermission.Design = true))))); result = modulePermission; } else { Permission permission = PermissionUtils.GetPermission(PermissionType.U, userId, amId); bool flag4 = permission != null; if (flag4) { modulePermission.Insert = permission.Insert; modulePermission.Edit = permission.Edit; modulePermission.Delete = permission.Delete; modulePermission.Print = permission.Print; modulePermission.View = permission.View; modulePermission.Design = permission.Design; modulePermission.View = (modulePermission.Insert || modulePermission.Edit || modulePermission.Delete || modulePermission.Print || modulePermission.View || modulePermission.Design); } foreach (RoleUser roleUser in RoleUserUtils.GetRoles(userId)) { Permission permission2 = PermissionUtils.GetPermission(PermissionType.R, roleUser.RoleId, amId); bool flag5 = permission2 != null; if (flag5) { modulePermission.Insert = (permission2.Insert || modulePermission.Insert); modulePermission.Edit = (permission2.Edit || modulePermission.Edit); modulePermission.Delete = (permission2.Delete || modulePermission.Delete); modulePermission.Print = (permission2.Print || modulePermission.Print); modulePermission.View = (permission2.View || modulePermission.View); modulePermission.Design = (permission2.Design || modulePermission.Design); modulePermission.View = (modulePermission.Insert || modulePermission.Edit || modulePermission.Delete || modulePermission.Print || modulePermission.View || modulePermission.Design); } } result = modulePermission; } } } return(result); }