Files
test-mcp/project_service.py

34 lines
1.2 KiB
Python

from sql_queries import DashboardQueries
class ProjectService:
@staticmethod
def get_available_dates_logic(cursor):
cursor.execute(DashboardQueries.GET_AVAILABLE_DATES)
rows = cursor.fetchall()
return [row['crawl_date'].strftime("%Y.%m.%d") for row in rows if row['crawl_date']]
@staticmethod
def get_project_data_logic(cursor, date_str):
target_date = date_str.replace(".", "-") if date_str and date_str != "-" else None
if not target_date:
cursor.execute(DashboardQueries.GET_LAST_CRAWL_DATE)
res = cursor.fetchone()
target_date = res['last_date']
if not target_date:
return {"projects": []}
cursor.execute(DashboardQueries.GET_PROJECT_LIST, (target_date,))
rows = cursor.fetchall()
projects = []
for r in rows:
name = r['short_nm'] if r['short_nm'] and r['short_nm'].strip() else r['project_nm']
projects.append([
name, r['department'], r['master'],
r['recent_log'], r['file_count'],
r['continent'], r['country']
])
return {"projects": projects}