care.emr.resources.inventory.supply_request.spec module

class SupplyRequestStatusOptions(*values)

Bases: str, Enum

draft = 'draft'
active = 'active'
suspended = 'suspended'
cancelled = 'cancelled'
processed = 'processed'
completed = 'completed'
entered_in_error = 'entered_in_error'
class SupplyRequestIntentOptions(*values)

Bases: str, Enum

proposal = 'proposal'
plan = 'plan'
directive = 'directive'
order = 'order'
original_order = 'original_order'
reflex_order = 'reflex_order'
filler_order = 'filler_order'
instance_order = 'instance_order'
class SupplyRequestCategoryOptions(*values)

Bases: str, Enum

central = 'central'
nonstock = 'nonstock'
class SupplyRequestPriorityOptions(*values)

Bases: str, Enum

routine = 'routine'
urgent = 'urgent'
asap = 'asap'
stat = 'stat'
class SupplyRequestReason(*values)

Bases: str, Enum

patient_care = 'patient_care'
ward_stock = 'ward_stock'
class BaseSupplyRequestSpec(*, meta: dict = {}, id: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, status: SupplyRequestStatusOptions, intent: SupplyRequestIntentOptions, category: SupplyRequestCategoryOptions, priority: SupplyRequestPriorityOptions, reason: SupplyRequestReason, quantity: float)

Bases: EMRResource

Base model for supply request

id: Annotated[UUID, UuidVersion(uuid_version=4)] | None
status: SupplyRequestStatusOptions
intent: SupplyRequestIntentOptions
category: SupplyRequestCategoryOptions
priority: SupplyRequestPriorityOptions
reason: SupplyRequestReason
quantity: float
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]] = {'category': FieldInfo(annotation=SupplyRequestCategoryOptions, required=True), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'intent': FieldInfo(annotation=SupplyRequestIntentOptions, required=True), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'priority': FieldInfo(annotation=SupplyRequestPriorityOptions, required=True), 'quantity': FieldInfo(annotation=float, required=True), 'reason': FieldInfo(annotation=SupplyRequestReason, required=True), 'status': FieldInfo(annotation=SupplyRequestStatusOptions, 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 SupplyRequestWriteSpec(*, meta: dict = {}, id: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, status: SupplyRequestStatusOptions, intent: SupplyRequestIntentOptions, category: SupplyRequestCategoryOptions, priority: SupplyRequestPriorityOptions, reason: SupplyRequestReason, quantity: float, deliver_from: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, deliver_to: Annotated[UUID, UuidVersion(uuid_version=4)], item: Annotated[UUID, UuidVersion(uuid_version=4)], supplier: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None)

Bases: BaseSupplyRequestSpec

Supply request write specification

deliver_from: Annotated[UUID, UuidVersion(uuid_version=4)] | None
deliver_to: Annotated[UUID, UuidVersion(uuid_version=4)]
item: Annotated[UUID, UuidVersion(uuid_version=4)]
supplier: Annotated[UUID, UuidVersion(uuid_version=4)] | None
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]] = {'category': FieldInfo(annotation=SupplyRequestCategoryOptions, required=True), 'deliver_from': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'deliver_to': FieldInfo(annotation=UUID, required=True, metadata=[UuidVersion(uuid_version=4)]), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'intent': FieldInfo(annotation=SupplyRequestIntentOptions, required=True), 'item': FieldInfo(annotation=UUID, required=True, metadata=[UuidVersion(uuid_version=4)]), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'priority': FieldInfo(annotation=SupplyRequestPriorityOptions, required=True), 'quantity': FieldInfo(annotation=float, required=True), 'reason': FieldInfo(annotation=SupplyRequestReason, required=True), 'status': FieldInfo(annotation=SupplyRequestStatusOptions, required=True), 'supplier': 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.

class SupplyRequestUpdateSpec(*, meta: dict = {}, id: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, status: SupplyRequestStatusOptions, intent: SupplyRequestIntentOptions, category: SupplyRequestCategoryOptions, priority: SupplyRequestPriorityOptions, reason: SupplyRequestReason, quantity: float)

Bases: BaseSupplyRequestSpec

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]] = {'category': FieldInfo(annotation=SupplyRequestCategoryOptions, required=True), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'intent': FieldInfo(annotation=SupplyRequestIntentOptions, required=True), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'priority': FieldInfo(annotation=SupplyRequestPriorityOptions, required=True), 'quantity': FieldInfo(annotation=float, required=True), 'reason': FieldInfo(annotation=SupplyRequestReason, required=True), 'status': FieldInfo(annotation=SupplyRequestStatusOptions, 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 SupplyRequestReadSpec(*, meta: dict = {}, id: Annotated[UUID, UuidVersion(uuid_version=4)] | None = None, status: SupplyRequestStatusOptions, intent: SupplyRequestIntentOptions, category: SupplyRequestCategoryOptions, priority: SupplyRequestPriorityOptions, reason: SupplyRequestReason, quantity: int, item: Annotated[UUID, UuidVersion(uuid_version=4)], deliver_from: dict, deliver_to: dict, supplier: OrganizationReadSpec | None = None)

Bases: BaseSupplyRequestSpec

Supply request read specification

quantity: int
item: Annotated[UUID, UuidVersion(uuid_version=4)]
deliver_from: dict
deliver_to: dict
supplier: OrganizationReadSpec | 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]] = {'category': FieldInfo(annotation=SupplyRequestCategoryOptions, required=True), 'deliver_from': FieldInfo(annotation=dict, required=True), 'deliver_to': FieldInfo(annotation=dict, required=True), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'intent': FieldInfo(annotation=SupplyRequestIntentOptions, required=True), 'item': FieldInfo(annotation=UUID, required=True, metadata=[UuidVersion(uuid_version=4)]), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'priority': FieldInfo(annotation=SupplyRequestPriorityOptions, required=True), 'quantity': FieldInfo(annotation=int, required=True), 'reason': FieldInfo(annotation=SupplyRequestReason, required=True), 'status': FieldInfo(annotation=SupplyRequestStatusOptions, required=True), 'supplier': FieldInfo(annotation=Union[OrganizationReadSpec, 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.