care.emr.resources.consent.spec module¶
- class ConsentStatusChoices(*values)¶
-
- draft = 'draft'¶
- active = 'active'¶
- inactive = 'inactive'¶
- not_done = 'not_done'¶
- entered_in_error = 'entered_in_error'¶
- class CategoryChoice(*values)¶
-
- 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
- verification_type: VerificationType¶
- 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]] = {'note': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'verification_date': FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None), 'verification_type': FieldInfo(annotation=VerificationType, required=True), 'verified': FieldInfo(annotation=bool, required=True), 'verified_by': 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 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
- status: ConsentStatusChoices¶
- category: CategoryChoice¶
- period: PeriodSpec¶
- decision: DecisionType¶
- 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=CategoryChoice, required=True), 'date': FieldInfo(annotation=datetime, required=True), 'decision': FieldInfo(annotation=DecisionType, required=True), 'encounter': FieldInfo(annotation=UUID, required=True, metadata=[UuidVersion(uuid_version=4)]), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None, description='Unique identifier for the consent record'), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'note': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'period': FieldInfo(annotation=PeriodSpec, required=False, default=<class 'dict'>), 'status': FieldInfo(annotation=ConsentStatusChoices, 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 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_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=CategoryChoice, required=True), 'date': FieldInfo(annotation=datetime, required=True), 'decision': FieldInfo(annotation=DecisionType, required=True), 'encounter': FieldInfo(annotation=UUID, required=True, metadata=[UuidVersion(uuid_version=4)]), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None, description='Unique identifier for the consent record'), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'note': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'period': FieldInfo(annotation=PeriodSpec, required=False, default=<class 'dict'>), 'status': FieldInfo(annotation=ConsentStatusChoices, 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 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¶
- period: PeriodSpec | None¶
- decision: DecisionType | 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=Union[CategoryChoice, NoneType], required=False, default=None), 'date': FieldInfo(annotation=Union[datetime, NoneType], required=False, default=None), 'decision': FieldInfo(annotation=Union[DecisionType, NoneType], required=False, default=None), 'encounter': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None, description='Unique identifier for the consent record'), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'note': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'period': FieldInfo(annotation=Union[PeriodSpec, NoneType], required=False, default=None), 'status': FieldInfo(annotation=Union[ConsentStatusChoices, 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 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
- 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=CategoryChoice, required=True), 'date': FieldInfo(annotation=datetime, required=True), 'decision': FieldInfo(annotation=DecisionType, required=True), 'encounter': FieldInfo(annotation=UUID, required=True, metadata=[UuidVersion(uuid_version=4)]), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None, description='Unique identifier for the consent record'), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'note': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'period': FieldInfo(annotation=PeriodSpec, required=False, default=<class 'dict'>), 'source_attachments': FieldInfo(annotation=list[dict], required=False, default=[]), 'status': FieldInfo(annotation=ConsentStatusChoices, required=True), 'verification_details': FieldInfo(annotation=list[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 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_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=CategoryChoice, required=True), 'date': FieldInfo(annotation=datetime, required=True), 'decision': FieldInfo(annotation=DecisionType, required=True), 'encounter': FieldInfo(annotation=UUID, required=True, metadata=[UuidVersion(uuid_version=4)]), 'id': FieldInfo(annotation=Union[Annotated[UUID, UuidVersion], NoneType], required=False, default=None, description='Unique identifier for the consent record'), 'meta': FieldInfo(annotation=dict, required=False, default={}), 'note': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'period': FieldInfo(annotation=PeriodSpec, required=False, default=<class 'dict'>), 'source_attachments': FieldInfo(annotation=list[dict], required=False, default=[]), 'status': FieldInfo(annotation=ConsentStatusChoices, required=True), 'verification_details': FieldInfo(annotation=list[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.