care.emr.resources.account.spec module

class AccountStatusOptions(*values)

Bases: str, Enum

active = 'active'
inactive = 'inactive'
entered_in_error = 'entered_in_error'
on_hold = 'on_hold'
class AccountBillingStatusOptions(*values)

Bases: str, Enum

open = 'open'
carecomplete_notbilled = 'carecomplete_notbilled'
billing = 'billing'
closed_baddebt = 'closed_baddebt'
closed_voided = 'closed_voided'
closed_completed = 'closed_completed'
closed_combined = 'closed_combined'
class AccountSpec(*, meta: dict = {}, id: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, status: AccountStatusOptions, billing_status: AccountBillingStatusOptions, name: str, service_period: PeriodSpec, description: str | None = None)

Bases: EMRResource

Base model for Account

id: Annotated[UUID, UuidVersion(uuid_version=4)] | None
status: AccountStatusOptions
billing_status: AccountBillingStatusOptions
name: str
service_period: PeriodSpec
description: str | None
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]] = {'billing_status': FieldInfo(annotation=AccountBillingStatusOptions, required=True), 'description': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'name': FieldInfo(annotation=str, required=True), 'service_period': FieldInfo(annotation=PeriodSpec, required=True), 'status': FieldInfo(annotation=AccountStatusOptions, 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 AccountCreateSpec(*, meta: dict = {}, id: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, status: AccountStatusOptions, billing_status: AccountBillingStatusOptions, name: str, service_period: PeriodSpec, description: str | None = None, patient: Annotated[UUID, UuidVersion(uuid_version=4)])

Bases: AccountSpec

Account create specification

patient: Annotated[UUID, UuidVersion(uuid_version=4)]
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]] = {'billing_status': FieldInfo(annotation=AccountBillingStatusOptions, required=True), 'description': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'name': FieldInfo(annotation=str, required=True), 'patient': FieldInfo(annotation=UUID, required=True, metadata=[UuidVersion(uuid_version=4)]), 'service_period': FieldInfo(annotation=PeriodSpec, required=True), 'status': FieldInfo(annotation=AccountStatusOptions, 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 AccountReadSpec(*, meta: dict = {}, id: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, status: AccountStatusOptions, billing_status: AccountBillingStatusOptions, name: str, service_period: PeriodSpec, description: str | None = None, patient: dict, total_net: Decimal, total_gross: Decimal, total_paid: Decimal, total_balance: Decimal, calculated_at: datetime, created_date: datetime, modified_date: datetime)

Bases: AccountSpec

Account read specification

patient: dict
total_net: Decimal
total_gross: Decimal
total_paid: Decimal
total_balance: Decimal
calculated_at: datetime
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]] = {'billing_status': FieldInfo(annotation=AccountBillingStatusOptions, required=True), 'calculated_at': FieldInfo(annotation=datetime, required=True), 'created_date': FieldInfo(annotation=datetime, required=True), 'description': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), '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), 'name': FieldInfo(annotation=str, required=True), 'patient': FieldInfo(annotation=dict, required=True), 'service_period': FieldInfo(annotation=PeriodSpec, required=True), 'status': FieldInfo(annotation=AccountStatusOptions, required=True), 'total_balance': FieldInfo(annotation=Decimal, required=True), 'total_gross': FieldInfo(annotation=Decimal, required=True), 'total_net': FieldInfo(annotation=Decimal, required=True), 'total_paid': FieldInfo(annotation=Decimal, 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 AccountRetrieveSpec(*, meta: dict = {}, id: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, status: AccountStatusOptions, billing_status: AccountBillingStatusOptions, name: str, service_period: PeriodSpec, description: str | None = None, patient: dict, total_net: Decimal, total_gross: Decimal, total_paid: Decimal, total_balance: Decimal, calculated_at: datetime, created_date: datetime, modified_date: datetime, cached_items: list = [], total_price_components: dict)

Bases: AccountReadSpec

Account retrieve specification

cached_items: list
total_price_components: dict
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]] = {'billing_status': FieldInfo(annotation=AccountBillingStatusOptions, required=True), 'cached_items': FieldInfo(annotation=list, required=False, default=[]), 'calculated_at': FieldInfo(annotation=datetime, required=True), 'created_date': FieldInfo(annotation=datetime, required=True), 'description': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), '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), 'name': FieldInfo(annotation=str, required=True), 'patient': FieldInfo(annotation=dict, required=True), 'service_period': FieldInfo(annotation=PeriodSpec, required=True), 'status': FieldInfo(annotation=AccountStatusOptions, required=True), 'total_balance': FieldInfo(annotation=Decimal, required=True), 'total_gross': FieldInfo(annotation=Decimal, required=True), 'total_net': FieldInfo(annotation=Decimal, required=True), 'total_paid': FieldInfo(annotation=Decimal, required=True), 'total_price_components': FieldInfo(annotation=dict, 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.