File size: 638 Bytes
a561338 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
from pydantic import BaseModel
from typing import List
from datetime import datetime
from app.schemas.plagiarism_schemas import MatchDetail
class ReportSummary(BaseModel):
id: str # MongoDB’s ObjectId as string
name: str
date: datetime
similarity: float # highest sentence‐level similarity (0–100)
sources: List[str] # unique list of source titles used
word_count: int
time_spent: str # e.g. "00:00"
flagged: bool # true if similarity > 70%
class ReportDetail(BaseModel):
id: str
name: str
content: str
plagiarism_data: List[MatchDetail] |