35 lines
809 B
Python
35 lines
809 B
Python
from datetime import datetime
|
|
|
|
from pydantic import BaseModel, Field
|
|
|
|
|
|
class DocumentCreate(BaseModel):
|
|
title: str = Field(min_length=1, max_length=255)
|
|
version: str | None = None
|
|
secrecy_level: str = "internal"
|
|
owner_dept: str | None = None
|
|
description: str | None = None
|
|
tags: list[str] = []
|
|
|
|
|
|
class DocumentUpdate(BaseModel):
|
|
title: str | None = None
|
|
version: str | None = None
|
|
secrecy_level: str | None = None
|
|
status: str | None = None
|
|
owner_dept: str | None = None
|
|
description: str | None = None
|
|
tags: list[str] | None = None
|
|
|
|
|
|
class DocumentResponse(BaseModel):
|
|
id: int
|
|
title: str
|
|
version: str | None
|
|
adp_doc_id: str | None
|
|
secrecy_level: str
|
|
status: str
|
|
owner_dept: str | None
|
|
tags: list[str]
|
|
created_at: datetime
|