add lookup in both directions on projects, write small list_projects

This commit is contained in:
Justus Kuhlmann 2025-03-30 17:41:33 +00:00
parent 2b56654d78
commit 50362d0fed

View file

@ -6,9 +6,9 @@ import pandas as pd
# this will implement the search functionality
def _project_aka_lookup(alias):
def _project_lookup_by_alias(db, alias):
# this will lookup the project name based on the alias
conn = sqlite3.connect('backlogger.db')
conn = sqlite3.connect(db)
c = conn.cursor()
c.execute(f"SELECT * FROM 'projects' WHERE alias = '{alias}'")
results = c.fetchall()
@ -20,6 +20,15 @@ def _project_aka_lookup(alias):
return results[0][0]
def _project_lookup_by_id(db, uuid):
conn = sqlite3.connect(db)
c = conn.cursor()
c.execute(f"SELECT * FROM 'projects' WHERE id = '{uuid}'")
results = c.fetchall()
conn.close()
return results
def _db_lookup(db, ensemble, correlator_name, project=None, code=None, parameters=None, created_before=None, created_after=None, updated_before=None, updated_after=None, revision=None):
project_str = project
@ -86,3 +95,17 @@ def find_record(path, ensemble, correlator_name, project=None, code=None, parame
results = filter_results(results, **kwargs)
print("Found " + str(len(results)) + " results")
return results.reset_index()
def find_project(db, name):
return _project_lookup_by_alias(db, name)
def list_projects():
conn = sqlite3.connect('backlogger.db')
c = conn.cursor()
c.execute("SELECT id,aliases FROM projects")
results = c.fetchall()
conn.close()
return results