care.emr.resources.scheduling.slot.spec module

class TokenSlotBaseSpec(*, meta: dict = {}, id: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, availability: Annotated[UUID, UuidVersion(uuid_version=4)], start_datetime: datetime, end_datetime: datetime, allocated: int)

Bases: EMRResource

id: Annotated[UUID, UuidVersion(uuid_version=4)] | None
availability: Annotated[UUID, UuidVersion(uuid_version=4)]
start_datetime: datetime
end_datetime: datetime
allocated: int
classmethod perform_extra_serialization(mapping, obj)
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'allocated': FieldInfo(annotation=int, required=True), 'availability': FieldInfo(annotation=UUID, required=True, metadata=[UuidVersion(uuid_version=4)]), 'end_datetime': FieldInfo(annotation=datetime, required=True), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'start_datetime': FieldInfo(annotation=datetime, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

class BookingStatusChoices(*values)

Bases: str, Enum

proposed = 'proposed'
pending = 'pending'
booked = 'booked'
arrived = 'arrived'
fulfilled = 'fulfilled'
cancelled = 'cancelled'
noshow = 'noshow'
entered_in_error = 'entered_in_error'
checked_in = 'checked_in'
waitlist = 'waitlist'
in_consultation = 'in_consultation'
rescheduled = 'rescheduled'
class TokenBookingBaseSpec(*, meta: dict = {})

Bases: EMRResource

model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'meta': FieldInfo(annotation=dict, required=False, default={})}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

class TokenBookingWriteSpec(*, meta: dict = {}, status: BookingStatusChoices, note: str)

Bases: TokenBookingBaseSpec

status: BookingStatusChoices
note: str
perform_extra_deserialization(is_update, obj)
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'meta': FieldInfo(annotation=dict, required=False, default={}), 'note': FieldInfo(annotation=str, required=True), 'status': FieldInfo(annotation=BookingStatusChoices, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

class TokenBookingMinimumReadSpec(*, meta: dict = {}, token_slot: TokenSlotBaseSpec, booked_on: datetime, status: str, note: str, created_date: datetime, modified_date: datetime)

Bases: TokenBookingBaseSpec

token_slot: TokenSlotBaseSpec
booked_on: datetime
status: str
note: str
created_date: datetime
modified_date: datetime
classmethod perform_extra_serialization(mapping, obj)
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'booked_on': FieldInfo(annotation=datetime, required=True), 'created_date': FieldInfo(annotation=datetime, required=True), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'modified_date': FieldInfo(annotation=datetime, required=True), 'note': FieldInfo(annotation=str, required=True), 'status': FieldInfo(annotation=str, required=True), 'token_slot': FieldInfo(annotation=TokenSlotBaseSpec, required=True)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

class TokenBookingReadSpec(*, meta: dict = {}, id: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, token_slot: TokenSlotBaseSpec, patient: PatientOTPReadSpec, booked_on: datetime, booked_by: UserSpec, status: str, note: str, resource_type: SchedulableResourceTypeOptions, resource: dict = {}, facility: dict = {}, created_by: UserSpec | None = None, updated_by: UserSpec | None = None, created_date: datetime, modified_date: datetime, token: TokenReadSpec | None = None, tags: list[dict] = [], charge_item: dict | None = None)

Bases: TokenBookingBaseSpec

id: Annotated[UUID, UuidVersion(uuid_version=4)] | None
token_slot: TokenSlotBaseSpec
patient: PatientOTPReadSpec
booked_on: datetime
booked_by: UserSpec
status: str
note: str
resource_type: SchedulableResourceTypeOptions
resource: dict
facility: dict
created_by: UserSpec | None
updated_by: UserSpec | None
created_date: datetime
modified_date: datetime
token: TokenReadSpec | None
tags: list[dict]
charge_item: dict | None
classmethod perform_extra_serialization(mapping, obj)
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'booked_by': FieldInfo(annotation=UserSpec, required=True), 'booked_on': FieldInfo(annotation=datetime, required=True), 'charge_item': FieldInfo(annotation=Union[dict, NoneType], required=False, default=None), 'created_by': FieldInfo(annotation=Union[UserSpec, NoneType], required=False, default=None), 'created_date': FieldInfo(annotation=datetime, required=True), 'facility': FieldInfo(annotation=dict, required=False, default={}), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'modified_date': FieldInfo(annotation=datetime, required=True), 'note': FieldInfo(annotation=str, required=True), 'patient': FieldInfo(annotation=PatientOTPReadSpec, required=True), 'resource': FieldInfo(annotation=dict, required=False, default={}), 'resource_type': FieldInfo(annotation=SchedulableResourceTypeOptions, required=True), 'status': FieldInfo(annotation=str, required=True), 'tags': FieldInfo(annotation=list[dict], required=False, default=[]), 'token': FieldInfo(annotation=Union[TokenReadSpec, NoneType], required=False, default=None), 'token_slot': FieldInfo(annotation=TokenSlotBaseSpec, required=True), 'updated_by': FieldInfo(annotation=Union[UserSpec, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

class TokenBookingRetrieveSpec(*, meta: dict = {}, id: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, token_slot: TokenSlotBaseSpec, patient: PatientOTPReadSpec, booked_on: datetime, booked_by: UserSpec, status: str, note: str, resource_type: SchedulableResourceTypeOptions, resource: dict = {}, facility: dict = {}, created_by: UserSpec | None = None, updated_by: UserSpec | None = None, created_date: datetime, modified_date: datetime, token: TokenReadSpec | None = None, tags: list[dict] = [], charge_item: dict | None = None, associated_encounter: dict = {})

Bases: TokenBookingReadSpec

associated_encounter: dict
classmethod perform_extra_serialization(mapping, obj)
model_computed_fields: ClassVar[Dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

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

model_fields: ClassVar[Dict[str, FieldInfo]] = {'associated_encounter': FieldInfo(annotation=dict, required=False, default={}), 'booked_by': FieldInfo(annotation=UserSpec, required=True), 'booked_on': FieldInfo(annotation=datetime, required=True), 'charge_item': FieldInfo(annotation=Union[dict, NoneType], required=False, default=None), 'created_by': FieldInfo(annotation=Union[UserSpec, NoneType], required=False, default=None), 'created_date': FieldInfo(annotation=datetime, required=True), 'facility': FieldInfo(annotation=dict, required=False, default={}), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'modified_date': FieldInfo(annotation=datetime, required=True), 'note': FieldInfo(annotation=str, required=True), 'patient': FieldInfo(annotation=PatientOTPReadSpec, required=True), 'resource': FieldInfo(annotation=dict, required=False, default={}), 'resource_type': FieldInfo(annotation=SchedulableResourceTypeOptions, required=True), 'status': FieldInfo(annotation=str, required=True), 'tags': FieldInfo(annotation=list[dict], required=False, default=[]), 'token': FieldInfo(annotation=Union[TokenReadSpec, NoneType], required=False, default=None), 'token_slot': FieldInfo(annotation=TokenSlotBaseSpec, required=True), 'updated_by': FieldInfo(annotation=Union[UserSpec, NoneType], required=False, default=None)}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.