from fastapi import APIRouter , Depends from config import get_settings from indexing.indexingController import IndexingController base_router = APIRouter(tags=["base"]) @base_router.get("/health") async def health_check(settings = Depends(get_settings)): return {"status": "ok", "app_name": settings} # @base_router.post("/all_docs") # async def get_all_docs(): # indexing_controller = IndexingController() # all_docs = indexing_controller.vector_store.get_all_documents() # return { # "total_docs": len(all_docs), # "documents": all_docs # } @base_router.get("/all_files") async def get__files(): indexing_controller = IndexingController() all_files = indexing_controller.vector_store.get_all_files() return { "total_files": len(all_files), "files": all_files,} @base_router.get("/remove_file") async def remove_file(filename: str,username: str ,course: str): indexing_controller = IndexingController() result = indexing_controller.vector_store.remove_points_by_file(filename,username,course) return { "status": "success" if result else "failure", "message": f"File '{filename}' removed." if result else f"File '{filename}' not found." } @base_router.get("/user/docs") async def get_user_docs(username: str): indexing_controller = IndexingController() user_docs = indexing_controller.vector_store.all_user_files_bookmarks(username) return { "total_docs": len(user_docs), "documents": user_docs}