care.emr.resources.consent.spec module

class ConsentStatusChoices(*values)

Bases: str, Enum

draft = 'draft'
active = 'active'
inactive = 'inactive'
not_done = 'not_done'
entered_in_error = 'entered_in_error'
class VerificationType(*values)

Bases: str, Enum

family = 'family'
validation = 'validation'
class DecisionType(*values)

Bases: str, Enum

deny = 'deny'
permit = 'permit'
class CategoryChoice(*values)

Bases: str, Enum

research = 'research'
patient_privacy = 'patient_privacy'
treatment = 'treatment'
dnr = 'dnr'
comfort_care = 'comfort_care'
acd = 'acd'
adr = 'adr'
class ConsentVerificationSpec(*, verified: bool, verified_by: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, verification_date: datetime | None = None, verification_type: VerificationType, note: str | None = None)

Bases: BaseModel

verified: bool
verified_by: Annotated[UUID, UuidVersion(uuid_version=4)] | None
verification_date: datetime | None
verification_type: VerificationType
note: str | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ConsentBaseSpec(*, meta: dict = {}, id: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)] | None = None, status: ~care.emr.resources.consent.spec.ConsentStatusChoices, category: ~care.emr.resources.consent.spec.CategoryChoice, date: ~datetime.datetime, period: ~care.emr.resources.base.PeriodSpec = <class 'dict'>, encounter: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)], decision: ~care.emr.resources.consent.spec.DecisionType, note: str | None = None)

Bases: EMRResource

id: Annotated[UUID, UuidVersion(uuid_version=4)] | None
status: ConsentStatusChoices
category: CategoryChoice
date: datetime
period: PeriodSpec
encounter: Annotated[UUID, UuidVersion(uuid_version=4)]
decision: DecisionType
note: str | None
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ConsentCreateSpec(*, meta: dict = {}, id: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)] | None = None, status: ~care.emr.resources.consent.spec.ConsentStatusChoices, category: ~care.emr.resources.consent.spec.CategoryChoice, date: ~datetime.datetime, period: ~care.emr.resources.base.PeriodSpec = <class 'dict'>, encounter: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)], decision: ~care.emr.resources.consent.spec.DecisionType, note: str | None = None)

Bases: ConsentBaseSpec

validate_period_and_date()
perform_extra_deserialization(is_update, obj)
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ConsentUpdateSpec(*, meta: dict = {}, id: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, status: ConsentStatusChoices | None = None, category: CategoryChoice | None = None, date: datetime | None = None, period: PeriodSpec | None = None, encounter: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, decision: DecisionType | None = None, note: str | None = None)

Bases: ConsentBaseSpec

status: ConsentStatusChoices | None
category: CategoryChoice | None
date: datetime | None
period: PeriodSpec | None
encounter: Annotated[UUID, UuidVersion(uuid_version=4)] | None
decision: DecisionType | None
note: str | None
perform_extra_deserialization(is_update, obj)
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ConsentListSpec(*, meta: dict = {}, id: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)] | None = None, status: ~care.emr.resources.consent.spec.ConsentStatusChoices, category: ~care.emr.resources.consent.spec.CategoryChoice, date: ~datetime.datetime, period: ~care.emr.resources.base.PeriodSpec = <class 'dict'>, encounter: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)], decision: ~care.emr.resources.consent.spec.DecisionType, note: str | None = None, source_attachments: list[dict] = [], verification_details: list[dict] = [])

Bases: ConsentBaseSpec

source_attachments: list[dict]
verification_details: list[dict]
classmethod perform_extra_serialization(mapping, obj)
model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class ConsentRetrieveSpec(*, meta: dict = {}, id: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)] | None = None, status: ~care.emr.resources.consent.spec.ConsentStatusChoices, category: ~care.emr.resources.consent.spec.CategoryChoice, date: ~datetime.datetime, period: ~care.emr.resources.base.PeriodSpec = <class 'dict'>, encounter: ~typing.Annotated[~uuid.UUID, ~pydantic.types.UuidVersion(uuid_version=4)], decision: ~care.emr.resources.consent.spec.DecisionType, note: str | None = None, source_attachments: list[dict] = [], verification_details: list[dict] = [])

Bases: ConsentListSpec

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].