code: def _get_jobs(self, query: ASTNode = None):
      jobs_controller = JobsController()
  
      project_name = None
      if (
          isinstance(query, Select)
          and type(query.where) == BinaryOperation
          and query.where.op == "="
          and query.where.args[0].parts == ["project"]
          and isinstance(query.where.args[1], Constant)
      ):
          project_name = query.where.args[1].value
  
      data = jobs_controller.get_list(project_name)
  
      columns = self.information_schema["JOBS"]
      columns_lower = [col.lower() for col in columns]
  
      # to list of lists
      data = [[row[k] for k in columns_lower] for row in data]
  
      return pd.DataFrame(data, columns=columns)
  
imports: from functools import partial
  import pandas
  from mindsdb_sql.parser.ast import BinaryOperation, Constant, Identifier, Select, Join, Union, Insert, Delete
  from mindsdb_sql.parser.ast.base import ASTNode
  from mindsdb.api.executor.datahub.classes.tables_row import TABLES_ROW_TYPE, TablesRow
  from mindsdb.api.executor.datahub.datanodes.datanode import DataNode
  from mindsdb.api.executor.datahub.datanodes.integration_datanode import IntegrationDataNode
  from mindsdb.api.executor.datahub.datanodes.project_datanode import ProjectDataNode
  from mindsdb.api.executor import exceptions
  from mindsdb.api.executor.utilities.sql import query_df
  from mindsdb.interfaces.agents.agents_controller import AgentsController
  from mindsdb.interfaces.database.projects import ProjectController
  from mindsdb.interfaces.jobs.jobs_controller import JobsController
  from mindsdb.interfaces.skills.skills_controller import SkillsController
  from mindsdb.utilities import log
label_desc: Use image node_id 11 for calling the InformationSchemaDataNode obj's underlying member method code with example usage: obj._get_jobs(query) and returns: pd