Fixed entire calendar layout + chat layout + chat history
This commit is contained in:
@@ -1,8 +1,14 @@
|
||||
# modules/nlp/service.py
|
||||
|
||||
from sqlalchemy.orm import Session
|
||||
from sqlalchemy import desc # Import desc for ordering
|
||||
from google import genai
|
||||
import json
|
||||
from datetime import datetime, timezone
|
||||
from typing import List # Import List
|
||||
|
||||
# Import the new model and Enum
|
||||
from .models import ChatMessage, MessageSender
|
||||
# from core.config import settings
|
||||
|
||||
# client = genai.Client(api_key=settings.GOOGLE_API_KEY)
|
||||
@@ -70,6 +76,27 @@ Here is some context for you:
|
||||
Here is the user request:
|
||||
|
||||
"""
|
||||
|
||||
# --- Chat History Service Functions ---
|
||||
|
||||
def save_chat_message(db: Session, user_id: int, sender: MessageSender, text: str):
|
||||
"""Saves a chat message to the database."""
|
||||
db_message = ChatMessage(user_id=user_id, sender=sender, text=text)
|
||||
db.add(db_message)
|
||||
db.commit()
|
||||
db.refresh(db_message)
|
||||
return db_message
|
||||
|
||||
def get_chat_history(db: Session, user_id: int, limit: int = 50) -> List[ChatMessage]:
|
||||
"""Retrieves the last 'limit' chat messages for a user."""
|
||||
return db.query(ChatMessage)\
|
||||
.filter(ChatMessage.user_id == user_id)\
|
||||
.order_by(desc(ChatMessage.timestamp))\
|
||||
.limit(limit)\
|
||||
.all()[::-1] # Reverse to get oldest first for display order
|
||||
|
||||
# --- Existing NLP Service Functions ---
|
||||
|
||||
def process_request(request: str):
|
||||
"""
|
||||
Process the user request using the Google GenAI API.
|
||||
|
||||
Reference in New Issue
Block a user