diff --git a/src/models/codeserverapi.py b/src/models/codeserverapi.py new file mode 100644 index 0000000..3620c18 --- /dev/null +++ b/src/models/codeserverapi.py @@ -0,0 +1,33 @@ +from datetime import datetime +from pydantic import BaseModel, HttpUrl +from enum import Enum + +class LinkType(Enum): + get = "GET" + post = "POST" + put = "PUT" + delete = "DELETE" + +class Attributes(BaseModel): + attributeName: str + attributeValue: list[str] + +class Links(BaseModel): + href: HttpUrl + rel: str + type: LinkType + +class CodeServerItem(BaseModel): + attributes: list[Attributes] + beginDate: datetime + classificationId: str + classificationName: str + conceptCodeId: str + createDate: datetime + expirationDate: datetime + lastModifiedBy: str + lastModifiedDate: datetime + links: list[Links] + status: str + versionId: str + versionName: str diff --git a/src/models/datalocations.py b/src/models/datalocations.py new file mode 100644 index 0000000..c92cb7b --- /dev/null +++ b/src/models/datalocations.py @@ -0,0 +1,12 @@ +from pydantic import BaseModel, HttpUrl, Field +from datetime import datetime + +class DataLocation(BaseModel): + href: HttpUrl + name: str + description: str = "Default description" + +class LocationList(BaseModel): + location: DataLocation + created_at: datetime = Field(default_factory=datetime.now) + updated_at: datetime = Field(default_factory=datetime.now) \ No newline at end of file