care.emr.api.viewsets.device module

class DeviceFilters(data=None, queryset=None, *, request=None, prefix=None)

Bases: FilterSet

base_filters = {'care_type': <django_filters.filters.CharFilter object>, 'current_encounter': <django_filters.filters.UUIDFilter object>, 'current_location': <django_filters.filters.UUIDFilter object>}
declared_filters = {'care_type': <django_filters.filters.CharFilter object>, 'current_encounter': <django_filters.filters.UUIDFilter object>, 'current_location': <django_filters.filters.UUIDFilter object>}
class DeviceViewSet(**kwargs)

Bases: EMRModelViewSet

database_model

alias of Device

pydantic_model

alias of DeviceCreateSpec

pydantic_update_model

alias of DeviceUpdateSpec

pydantic_read_model

alias of DeviceListSpec

pydantic_retrieve_model

alias of DeviceRetrieveSpec

filterset_class

alias of DeviceFilters

filter_backends = (<class 'django_filters.rest_framework.backends.DjangoFilterBackend'>, <class 'rest_framework.filters.SearchFilter'>)
search_fields = ['registered_name', 'user_friendly_name']
get_facility_obj()
authorize_create(instance)
authorize_update(instance, model_instance)
authorize_destroy(instance)
perform_create(instance)
perform_update(instance)
perform_destroy(instance)
get_queryset()

When Location is specified, Location permission is checked (or) organization filters are applied If location is not specified the organization cache is used

class DeviceEncounterAssociationRequest(*, encounter: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None)

Bases: BaseModel

encounter: Annotated[UUID, UuidVersion(uuid_version=4)] | 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]] = {'encounter': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], 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.

associate_encounter(request, *args, **kwargs)
class DeviceLocationAssociationRequest(*, location: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None)

Bases: BaseModel

location: Annotated[UUID, UuidVersion(uuid_version=4)] | 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]] = {'location': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], 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.

associate_location(request, *args, **kwargs)
class DeviceManageOrganizationRequest(*, managing_organization: Annotated[UUID, UuidVersion(uuid_version=4)])

Bases: BaseModel

managing_organization: Annotated[UUID, UuidVersion(uuid_version=4)]
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]] = {'managing_organization': FieldInfo(annotation=UUID, required=True, metadata=[UuidVersion(uuid_version=4)])}

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.

add_managing_organization(request, *args, **kwargs)
remove_managing_organization(request, *args, **kwargs)
class DeviceLocationHistoryViewSet(**kwargs)

Bases: EMRModelReadOnlyViewSet

database_model

alias of DeviceLocationHistory

pydantic_read_model

alias of DeviceLocationHistoryListSpec

get_device()
get_queryset()
class DeviceEncounterHistoryViewSet(**kwargs)

Bases: EMRModelReadOnlyViewSet

database_model

alias of DeviceEncounterHistory

pydantic_read_model

alias of DeviceEncounterHistoryListSpec

get_device()
get_queryset()

Encounter history access is limited to everyone within the location or associated with the managing org

class DeviceServiceHistoryViewSet(**kwargs)

Bases: EMRCreateMixin, EMRRetrieveMixin, EMRUpdateMixin, EMRListMixin, EMRBaseViewSet

database_model

alias of DeviceServiceHistory

pydantic_model

alias of DeviceServiceHistoryWriteSpec

pydantic_read_model

alias of DeviceServiceHistoryListSpec

pydantic_retrieve_model

alias of DeviceServiceHistoryRetrieveSpec

get_device()
perform_create(instance)
authorize_create(instance)
authorize_update(request_obj, model_instance)
perform_update(instance)
get_queryset()

Encounter history access is limited to everyone within the location or associated with the managing org

disassociate_device_from_encounter(instance)