Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions csfunctions/objects/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
from .engineering_change import EngineeringChange
from .file import File
from .part import BOMItem, Material, Part
from .person import Person
from .workflow import Workflow

Object = Annotated[
Expand All @@ -23,6 +24,7 @@
ObjectPropertyValue,
Briefcase,
Workflow,
Person,
],
Field(discriminator="object_type"),
]
Expand All @@ -40,4 +42,5 @@
"Briefcase",
"Workflow",
"BaseObject",
"Person",
]
1 change: 1 addition & 0 deletions csfunctions/objects/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ class ObjectType(str, Enum):
OBJECT_PROPERTY_VALUE = "object_property_value"
WORKFLOW = "workflow"
BRIEFCASE = "briefcase"
PERSON = "person"


class BaseObject(BaseModel):
Expand Down
22 changes: 22 additions & 0 deletions csfunctions/objects/person.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
from typing import Literal

from pydantic import Field

from csfunctions.objects.base import BaseObject, ObjectType


class Person(BaseObject):
object_type: Literal[ObjectType.PERSON] = ObjectType.PERSON

personalnummer: str = Field(..., description="Personal Number")
name: str = Field(..., description="System-Name")
firstname: str | None = Field(None, description="First Name")
lastname: str | None = Field(None, description="Last Name")
gender: str | None = Field(None, description="Gender")
title: str | None = Field(None, description="Title")
initials: str | None = Field(None, description="Initials")
active_account: bool | None = Field(None, description="Active Account")
org_id: str | None = Field(None, description="Organization ID")
abt_nummer: str | None = Field(None, description="Department Number")
e_mail: str | None = Field(None, description="Email")
telefon: str | None = Field(None, description="Phone")
Loading