canvas 0.72.1__py3-none-any.whl → 0.74.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of canvas might be problematic. Click here for more details.
- {canvas-0.72.1.dist-info → canvas-0.74.0.dist-info}/METADATA +1 -1
- {canvas-0.72.1.dist-info → canvas-0.74.0.dist-info}/RECORD +28 -22
- canvas_generated/messages/effects_pb2.py +2 -2
- canvas_generated/messages/effects_pb2.pyi +16 -0
- canvas_generated/messages/events_pb2.py +2 -2
- canvas_generated/messages/events_pb2.pyi +20 -0
- canvas_sdk/effects/claim_label.py +93 -0
- canvas_sdk/effects/claim_line_item.py +47 -0
- canvas_sdk/effects/fax/__init__.py +3 -0
- canvas_sdk/effects/fax/base.py +77 -0
- canvas_sdk/effects/fax/note.py +42 -0
- canvas_sdk/effects/note/__init__.py +8 -1
- canvas_sdk/effects/note/appointment.py +130 -4
- canvas_sdk/effects/note/note.py +38 -0
- canvas_sdk/effects/task/__init__.py +2 -1
- canvas_sdk/effects/task/task.py +30 -0
- canvas_sdk/test_utils/factories/__init__.py +12 -0
- canvas_sdk/test_utils/factories/task.py +66 -0
- canvas_sdk/v1/data/__init__.py +9 -2
- canvas_sdk/v1/data/appointment.py +17 -1
- canvas_sdk/v1/data/claim_line_item.py +2 -2
- canvas_sdk/v1/data/facility.py +1 -0
- canvas_sdk/v1/data/task.py +16 -0
- plugin_runner/allowed-module-imports.json +21 -0
- protobufs/canvas_generated/messages/effects.proto +11 -0
- protobufs/canvas_generated/messages/events.proto +11 -0
- {canvas-0.72.1.dist-info → canvas-0.74.0.dist-info}/WHEEL +0 -0
- {canvas-0.72.1.dist-info → canvas-0.74.0.dist-info}/entry_points.txt +0 -0
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import factory
|
|
2
|
+
|
|
3
|
+
from canvas_sdk.v1.data import Task, TaskComment, TaskLabel, TaskMetadata, TaskTaskLabel
|
|
4
|
+
from canvas_sdk.v1.data.common import ColorEnum, Origin
|
|
5
|
+
from canvas_sdk.v1.data.task import TaskLabelModule, TaskStatus, TaskType
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class TaskFactory(factory.django.DjangoModelFactory[Task]):
|
|
9
|
+
"""Factory for creating Task."""
|
|
10
|
+
|
|
11
|
+
class Meta:
|
|
12
|
+
model = Task
|
|
13
|
+
|
|
14
|
+
patient = factory.SubFactory("canvas_sdk.test_utils.factories.PatientFactory")
|
|
15
|
+
creator = factory.SubFactory("canvas_sdk.test_utils.factories.StaffFactory")
|
|
16
|
+
assignee = factory.SubFactory("canvas_sdk.test_utils.factories.StaffFactory")
|
|
17
|
+
task_type = TaskType.TASK
|
|
18
|
+
tag = factory.Faker("word")
|
|
19
|
+
title = factory.Faker("sentence", nb_words=4)
|
|
20
|
+
status = TaskStatus.OPEN
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
class TaskMetadataFactory(factory.django.DjangoModelFactory[TaskMetadata]):
|
|
24
|
+
"""Factory for creating TaskMetadata."""
|
|
25
|
+
|
|
26
|
+
class Meta:
|
|
27
|
+
model = TaskMetadata
|
|
28
|
+
|
|
29
|
+
task = factory.SubFactory(TaskFactory)
|
|
30
|
+
key = factory.Faker("word")
|
|
31
|
+
value = factory.Faker("word")
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
class TaskCommentFactory(factory.django.DjangoModelFactory[TaskComment]):
|
|
35
|
+
"""Factory for creating TaskComment."""
|
|
36
|
+
|
|
37
|
+
class Meta:
|
|
38
|
+
model = TaskComment
|
|
39
|
+
|
|
40
|
+
creator = factory.SubFactory("canvas_sdk.test_utils.factories.StaffFactory")
|
|
41
|
+
task = factory.SubFactory(TaskFactory)
|
|
42
|
+
body = factory.Faker("sentence", nb_words=10)
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
class TaskLabelFactory(factory.django.DjangoModelFactory[TaskLabel]):
|
|
46
|
+
"""Factory for creating TaskLabel."""
|
|
47
|
+
|
|
48
|
+
class Meta:
|
|
49
|
+
model = TaskLabel
|
|
50
|
+
|
|
51
|
+
position = factory.Sequence(lambda n: n)
|
|
52
|
+
color = ColorEnum.BLUE
|
|
53
|
+
task_association = [Origin.REFERAL]
|
|
54
|
+
name = factory.Faker("word")
|
|
55
|
+
active = True
|
|
56
|
+
modules = [TaskLabelModule.TASKS]
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
class TaskTaskLabelFactory(factory.django.DjangoModelFactory[TaskTaskLabel]):
|
|
60
|
+
"""Factory for creating TaskTaskLabel."""
|
|
61
|
+
|
|
62
|
+
class Meta:
|
|
63
|
+
model = TaskTaskLabel
|
|
64
|
+
|
|
65
|
+
task = factory.SubFactory(TaskFactory)
|
|
66
|
+
task_label = factory.SubFactory(TaskLabelFactory)
|
canvas_sdk/v1/data/__init__.py
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
from .allergy_intolerance import AllergyIntolerance, AllergyIntoleranceCoding
|
|
2
|
-
from .appointment import
|
|
2
|
+
from .appointment import (
|
|
3
|
+
Appointment,
|
|
4
|
+
AppointmentExternalIdentifier,
|
|
5
|
+
AppointmentLabel,
|
|
6
|
+
AppointmentMetadata,
|
|
7
|
+
)
|
|
3
8
|
from .assessment import Assessment
|
|
4
9
|
from .banner_alert import BannerAlert
|
|
5
10
|
from .billing import BillingLineItem, BillingLineItemModifier
|
|
@@ -103,7 +108,7 @@ from .referral import Referral, ReferralReport
|
|
|
103
108
|
from .service_provider import ServiceProvider
|
|
104
109
|
from .staff import Staff, StaffAddress, StaffContactPoint, StaffLicense, StaffPhoto, StaffRole
|
|
105
110
|
from .stop_medication_event import StopMedicationEvent
|
|
106
|
-
from .task import Task, TaskComment, TaskLabel, TaskTaskLabel
|
|
111
|
+
from .task import Task, TaskComment, TaskLabel, TaskMetadata, TaskTaskLabel
|
|
107
112
|
from .team import Team, TeamContactPoint
|
|
108
113
|
from .user import CanvasUser
|
|
109
114
|
|
|
@@ -111,6 +116,7 @@ __all__ = __exports__ = (
|
|
|
111
116
|
"Appointment",
|
|
112
117
|
"AppointmentMetadata",
|
|
113
118
|
"AppointmentExternalIdentifier",
|
|
119
|
+
"AppointmentLabel",
|
|
114
120
|
"AllergyIntolerance",
|
|
115
121
|
"AllergyIntoleranceCoding",
|
|
116
122
|
"Assessment",
|
|
@@ -227,6 +233,7 @@ __all__ = __exports__ = (
|
|
|
227
233
|
"TaskComment",
|
|
228
234
|
"TaskLabel",
|
|
229
235
|
"TaskTaskLabel",
|
|
236
|
+
"TaskMetadata",
|
|
230
237
|
"Team",
|
|
231
238
|
"TeamContactPoint",
|
|
232
239
|
"Transactor",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from django.db import models
|
|
2
2
|
|
|
3
|
-
from canvas_sdk.v1.data.base import IdentifiableModel, TimestampedModel
|
|
3
|
+
from canvas_sdk.v1.data.base import IdentifiableModel, Model, TimestampedModel
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
class AppointmentProgressStatus(models.TextChoices):
|
|
@@ -77,6 +77,21 @@ class AppointmentExternalIdentifier(TimestampedModel, IdentifiableModel):
|
|
|
77
77
|
)
|
|
78
78
|
|
|
79
79
|
|
|
80
|
+
class AppointmentLabel(Model):
|
|
81
|
+
"""M2M for Appointment -> TaskLabels."""
|
|
82
|
+
|
|
83
|
+
class Meta:
|
|
84
|
+
db_table = "canvas_sdk_data_api_appointment_labels_001"
|
|
85
|
+
|
|
86
|
+
appointment = models.ForeignKey(Appointment, on_delete=models.DO_NOTHING, null=True)
|
|
87
|
+
task_label = models.ForeignKey(
|
|
88
|
+
"v1.TaskLabel",
|
|
89
|
+
on_delete=models.DO_NOTHING,
|
|
90
|
+
null=True,
|
|
91
|
+
db_column="userselectedtasklabel_id",
|
|
92
|
+
)
|
|
93
|
+
|
|
94
|
+
|
|
80
95
|
class AppointmentMetadata(IdentifiableModel):
|
|
81
96
|
"""A class representing Appointment Metadata."""
|
|
82
97
|
|
|
@@ -95,4 +110,5 @@ __exports__ = (
|
|
|
95
110
|
"Appointment",
|
|
96
111
|
"AppointmentMetadata",
|
|
97
112
|
"AppointmentExternalIdentifier",
|
|
113
|
+
"AppointmentLabel",
|
|
98
114
|
)
|
|
@@ -5,7 +5,7 @@ from django.db import models
|
|
|
5
5
|
from django.db.models import Q, Sum
|
|
6
6
|
from django.db.models.functions import Coalesce
|
|
7
7
|
|
|
8
|
-
from canvas_sdk.v1.data.base import TimestampedModel
|
|
8
|
+
from canvas_sdk.v1.data.base import IdentifiableModel, TimestampedModel
|
|
9
9
|
from canvas_sdk.v1.data.note import PracticeLocationPOS
|
|
10
10
|
|
|
11
11
|
|
|
@@ -106,7 +106,7 @@ class ClaimLineItemQuerySet(models.QuerySet):
|
|
|
106
106
|
return self.exclude(proc_code=LineItemCodes.UNLINKED.value).apply_ordering()
|
|
107
107
|
|
|
108
108
|
|
|
109
|
-
class ClaimLineItem(TimestampedModel):
|
|
109
|
+
class ClaimLineItem(TimestampedModel, IdentifiableModel):
|
|
110
110
|
"""ClaimLineItem."""
|
|
111
111
|
|
|
112
112
|
class Meta:
|
canvas_sdk/v1/data/facility.py
CHANGED
|
@@ -12,6 +12,7 @@ class Facility(IdentifiableModel):
|
|
|
12
12
|
name = models.CharField(max_length=255)
|
|
13
13
|
npi_number = models.CharField(verbose_name="NPI number", max_length=10, blank=True)
|
|
14
14
|
phone_number = models.CharField(max_length=10, blank=True, default="")
|
|
15
|
+
fax_number = models.CharField(max_length=10, blank=True, default="")
|
|
15
16
|
active = models.BooleanField(default=True)
|
|
16
17
|
line1 = models.CharField(max_length=255, default="", blank=True)
|
|
17
18
|
line2 = models.CharField(max_length=255, default="", blank=True)
|
canvas_sdk/v1/data/task.py
CHANGED
|
@@ -31,6 +31,7 @@ class TaskLabelModule(models.TextChoices):
|
|
|
31
31
|
|
|
32
32
|
CLAIMS = "claims", "Claims"
|
|
33
33
|
TASKS = "tasks", "Tasks"
|
|
34
|
+
APPOINTMENTS = "appointments", "Appointments"
|
|
34
35
|
|
|
35
36
|
|
|
36
37
|
class Task(TimestampedModel, IdentifiableModel):
|
|
@@ -78,6 +79,9 @@ class TaskLabel(IdentifiableModel):
|
|
|
78
79
|
db_table = "canvas_sdk_data_api_tasklabel_001"
|
|
79
80
|
|
|
80
81
|
tasks = models.ManyToManyField(Task, related_name="labels", through="TaskTaskLabel") # type: ignore[var-annotated]
|
|
82
|
+
appointments = models.ManyToManyField(
|
|
83
|
+
"v1.Appointment", related_name="labels", through="v1.AppointmentLabel"
|
|
84
|
+
)
|
|
81
85
|
position = models.IntegerField()
|
|
82
86
|
color = models.CharField(choices=ColorEnum.choices, max_length=50)
|
|
83
87
|
task_association = ArrayField(models.CharField(choices=Origin.choices, max_length=32))
|
|
@@ -96,6 +100,17 @@ class TaskTaskLabel(Model):
|
|
|
96
100
|
task = models.ForeignKey(Task, on_delete=models.DO_NOTHING, null=True)
|
|
97
101
|
|
|
98
102
|
|
|
103
|
+
class TaskMetadata(IdentifiableModel):
|
|
104
|
+
"""TaskMetadata."""
|
|
105
|
+
|
|
106
|
+
class Meta:
|
|
107
|
+
db_table = "canvas_sdk_data_api_taskmetadata_001"
|
|
108
|
+
|
|
109
|
+
task = models.ForeignKey(Task, on_delete=models.CASCADE, related_name="metadata")
|
|
110
|
+
key = models.CharField(max_length=32)
|
|
111
|
+
value = models.CharField(max_length=255)
|
|
112
|
+
|
|
113
|
+
|
|
99
114
|
__exports__ = (
|
|
100
115
|
"TaskType",
|
|
101
116
|
"EventType",
|
|
@@ -105,4 +120,5 @@ __exports__ = (
|
|
|
105
120
|
"TaskComment",
|
|
106
121
|
"TaskLabel",
|
|
107
122
|
"TaskTaskLabel",
|
|
123
|
+
"TaskMetadata",
|
|
108
124
|
)
|
|
@@ -234,12 +234,23 @@
|
|
|
234
234
|
"CreateEvent",
|
|
235
235
|
"EventRecurrence"
|
|
236
236
|
],
|
|
237
|
+
"canvas_sdk.effects.claim_label": [
|
|
238
|
+
"AddClaimLabel",
|
|
239
|
+
"Label",
|
|
240
|
+
"RemoveClaimLabel"
|
|
241
|
+
],
|
|
242
|
+
"canvas_sdk.effects.claim_line_item": [
|
|
243
|
+
"UpdateClaimLineItem"
|
|
244
|
+
],
|
|
237
245
|
"canvas_sdk.effects.compound_medications": [
|
|
238
246
|
"CompoundMedication"
|
|
239
247
|
],
|
|
240
248
|
"canvas_sdk.effects.compound_medications.compound_medication": [
|
|
241
249
|
"CompoundMedication"
|
|
242
250
|
],
|
|
251
|
+
"canvas_sdk.effects.fax": [
|
|
252
|
+
"FaxNoteEffect"
|
|
253
|
+
],
|
|
243
254
|
"canvas_sdk.effects.generate_full_chart_pdf": [
|
|
244
255
|
"GenerateFullChartPDFEffect"
|
|
245
256
|
],
|
|
@@ -253,13 +264,17 @@
|
|
|
253
264
|
"Metadata"
|
|
254
265
|
],
|
|
255
266
|
"canvas_sdk.effects.note": [
|
|
267
|
+
"AddAppointmentLabel",
|
|
256
268
|
"Appointment",
|
|
257
269
|
"AppointmentIdentifier",
|
|
258
270
|
"Note",
|
|
271
|
+
"RemoveAppointmentLabel",
|
|
259
272
|
"ScheduleEvent"
|
|
260
273
|
],
|
|
261
274
|
"canvas_sdk.effects.note.appointment": [
|
|
275
|
+
"AddAppointmentLabel",
|
|
262
276
|
"Appointment",
|
|
277
|
+
"RemoveAppointmentLabel",
|
|
263
278
|
"ScheduleEvent"
|
|
264
279
|
],
|
|
265
280
|
"canvas_sdk.effects.note.base": [
|
|
@@ -383,12 +398,14 @@
|
|
|
383
398
|
"canvas_sdk.effects.task": [
|
|
384
399
|
"AddTask",
|
|
385
400
|
"AddTaskComment",
|
|
401
|
+
"TaskMetadata",
|
|
386
402
|
"TaskStatus",
|
|
387
403
|
"UpdateTask"
|
|
388
404
|
],
|
|
389
405
|
"canvas_sdk.effects.task.task": [
|
|
390
406
|
"AddTask",
|
|
391
407
|
"AddTaskComment",
|
|
408
|
+
"TaskMetadata",
|
|
392
409
|
"TaskStatus",
|
|
393
410
|
"UpdateTask"
|
|
394
411
|
],
|
|
@@ -552,6 +569,7 @@
|
|
|
552
569
|
"AllergyIntoleranceCoding",
|
|
553
570
|
"Appointment",
|
|
554
571
|
"AppointmentExternalIdentifier",
|
|
572
|
+
"AppointmentLabel",
|
|
555
573
|
"AppointmentMetadata",
|
|
556
574
|
"Assessment",
|
|
557
575
|
"BannerAlert",
|
|
@@ -666,6 +684,7 @@
|
|
|
666
684
|
"Task",
|
|
667
685
|
"TaskComment",
|
|
668
686
|
"TaskLabel",
|
|
687
|
+
"TaskMetadata",
|
|
669
688
|
"TaskTaskLabel",
|
|
670
689
|
"Team",
|
|
671
690
|
"TeamContactPoint",
|
|
@@ -680,6 +699,7 @@
|
|
|
680
699
|
"canvas_sdk.v1.data.appointment": [
|
|
681
700
|
"Appointment",
|
|
682
701
|
"AppointmentExternalIdentifier",
|
|
702
|
+
"AppointmentLabel",
|
|
683
703
|
"AppointmentMetadata",
|
|
684
704
|
"AppointmentProgressStatus"
|
|
685
705
|
],
|
|
@@ -959,6 +979,7 @@
|
|
|
959
979
|
"TaskComment",
|
|
960
980
|
"TaskLabel",
|
|
961
981
|
"TaskLabelModule",
|
|
982
|
+
"TaskMetadata",
|
|
962
983
|
"TaskStatus",
|
|
963
984
|
"TaskTaskLabel",
|
|
964
985
|
"TaskType"
|
|
@@ -126,6 +126,7 @@ enum EffectType {
|
|
|
126
126
|
CREATE_TASK = 100;
|
|
127
127
|
UPDATE_TASK = 101;
|
|
128
128
|
CREATE_TASK_COMMENT = 102;
|
|
129
|
+
UPSERT_TASK_METADATA = 111;
|
|
129
130
|
|
|
130
131
|
ORIGINATE_MEDICAL_HISTORY_COMMAND = 103;
|
|
131
132
|
EDIT_MEDICAL_HISTORY_COMMAND = 104;
|
|
@@ -266,10 +267,18 @@ enum EffectType {
|
|
|
266
267
|
PATIENT_PORTAL__APPOINTMENTS__FORM_PROVIDERS__POST_SEARCH_RESULTS = 2011;
|
|
267
268
|
PATIENT_PORTAL__APPLICATION_CONFIGURATION = 2012;
|
|
268
269
|
|
|
270
|
+
ADD_APPOINTMENT_LABEL = 2015;
|
|
271
|
+
REMOVE_APPOINTMENT_LABEL = 2016;
|
|
272
|
+
|
|
269
273
|
ADD_BILLING_LINE_ITEM = 2030;
|
|
270
274
|
UPDATE_BILLING_LINE_ITEM = 2031;
|
|
271
275
|
REMOVE_BILLING_LINE_ITEM = 2032;
|
|
272
276
|
|
|
277
|
+
ADD_CLAIM_LABEL = 2050;
|
|
278
|
+
REMOVE_CLAIM_LABEL = 2051;
|
|
279
|
+
|
|
280
|
+
UPDATE_CLAIM_LINE_ITEM = 2080;
|
|
281
|
+
|
|
273
282
|
SHOW_PATIENT_PORTAL_MENU_ITEMS = 2100;
|
|
274
283
|
PORTAL_WIDGET = 2101;
|
|
275
284
|
|
|
@@ -284,6 +293,8 @@ enum EffectType {
|
|
|
284
293
|
|
|
285
294
|
CREATE_NOTE = 6000;
|
|
286
295
|
UPDATE_NOTE = 6013;
|
|
296
|
+
PUSH_NOTE_CHARGES = 5500;
|
|
297
|
+
FAX_NOTE = 6019;
|
|
287
298
|
|
|
288
299
|
CREATE_APPOINTMENT = 6001;
|
|
289
300
|
UPDATE_APPOINTMENT = 6014;
|
|
@@ -98,6 +98,8 @@ enum EventType {
|
|
|
98
98
|
|
|
99
99
|
TASK_CLOSED = 86;
|
|
100
100
|
TASK_COMPLETED = 87;
|
|
101
|
+
TASK_METADATA_CREATED = 96;
|
|
102
|
+
TASK_METADATA_UPDATED = 97;
|
|
101
103
|
|
|
102
104
|
DETECTED_ISSUE_EVIDENCE_CREATED = 88;
|
|
103
105
|
DETECTED_ISSUE_EVIDENCE_UPDATED = 89;
|
|
@@ -108,6 +110,9 @@ enum EventType {
|
|
|
108
110
|
COMPOUND_MEDICATION_CREATED = 92;
|
|
109
111
|
COMPOUND_MEDICATION_UPDATED = 93;
|
|
110
112
|
|
|
113
|
+
APPOINTMENT_LABEL_ADDED = 94;
|
|
114
|
+
APPOINTMENT_LABEL_REMOVED = 95;
|
|
115
|
+
|
|
111
116
|
// General Command Events
|
|
112
117
|
|
|
113
118
|
PRE_COMMAND_ORIGINATE = 100;
|
|
@@ -177,6 +182,8 @@ enum EventType {
|
|
|
177
182
|
ADJUST_PRESCRIPTION__CHANGE_MEDICATION_TO__POST_SEARCH = 2019;
|
|
178
183
|
ADJUST_PRESCRIPTION__SUPERVISING_PROVIDER__PRE_SEARCH = 2021;
|
|
179
184
|
ADJUST_PRESCRIPTION__SUPERVISING_PROVIDER__POST_SEARCH = 2022;
|
|
185
|
+
ADJUST_PRESCRIPTION__PRESCRIBER__PRE_SEARCH = 2025;
|
|
186
|
+
ADJUST_PRESCRIPTION__PRESCRIBER__POST_SEARCH = 2026;
|
|
180
187
|
|
|
181
188
|
// ADJUST_PROTOCOL_COMMAND__PRE_ORIGINATE = 3000;
|
|
182
189
|
// ADJUST_PROTOCOL_COMMAND__POST_ORIGINATE = 3001;
|
|
@@ -703,6 +710,8 @@ enum EventType {
|
|
|
703
710
|
PRESCRIBE__PHARMACY__POST_SEARCH = 33017;
|
|
704
711
|
PRESCRIBE__SUPERVISING_PROVIDER__POST_SEARCH = 33019;
|
|
705
712
|
PRESCRIBE__SUPERVISING_PROVIDER__PRE_SEARCH = 33020;
|
|
713
|
+
PRESCRIBE__PRESCRIBER__PRE_SEARCH = 33023;
|
|
714
|
+
PRESCRIBE__PRESCRIBER__POST_SEARCH = 33024;
|
|
706
715
|
|
|
707
716
|
QUESTIONNAIRE_COMMAND__PRE_ORIGINATE = 34000;
|
|
708
717
|
QUESTIONNAIRE_COMMAND__POST_ORIGINATE = 34001;
|
|
@@ -809,6 +818,8 @@ enum EventType {
|
|
|
809
818
|
REFILL__PHARMACY__POST_SEARCH = 39017;
|
|
810
819
|
REFILL__SUPERVISING_PROVIDER__PRE_SEARCH = 39019;
|
|
811
820
|
REFILL__SUPERVISING_PROVIDER__POST_SEARCH = 39020;
|
|
821
|
+
REFILL__PRESCRIBER__PRE_SEARCH = 39023;
|
|
822
|
+
REFILL__PRESCRIBER__POST_SEARCH = 39024;
|
|
812
823
|
|
|
813
824
|
REMOVE_ALLERGY_COMMAND__PRE_ORIGINATE = 40000;
|
|
814
825
|
REMOVE_ALLERGY_COMMAND__POST_ORIGINATE = 40001;
|
|
File without changes
|
|
File without changes
|