diff --git a/onprc_ehr/src/org/labkey/onprc_ehr/ONPRC_EHRModule.java b/onprc_ehr/src/org/labkey/onprc_ehr/ONPRC_EHRModule.java index 34ab11d65..873b1de6e 100644 --- a/onprc_ehr/src/org/labkey/onprc_ehr/ONPRC_EHRModule.java +++ b/onprc_ehr/src/org/labkey/onprc_ehr/ONPRC_EHRModule.java @@ -601,6 +601,8 @@ public String toString() //Added: 3-24-2023 R.Blasa EHRService.get().registerFormType(new DefaultDataEntryFormFactory(EnvironmentalATPFormType.class, this)); + //Added: 9-5-2024 R.Blasa + EHRService.get().registerFormType(new DefaultDataEntryFormFactory(BloodDrawFormType.class, this)); //single section forms EHRService.get().registerSingleFormOverride(new SingleQueryFormProvider(this, "study", "treatment_order", new MedicationsQueryFormSection("study", "Treatment Orders", "Medication/Treatment Orders"))); diff --git a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/BloodDrawFormType.java b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/BloodDrawFormType.java new file mode 100644 index 000000000..2c5b81160 --- /dev/null +++ b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/BloodDrawFormType.java @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2018-2019 LabKey Corporation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.labkey.onprc_ehr.dataentry; + +import org.labkey.api.ehr.EHRService; +import org.labkey.api.ehr.dataentry.AnimalDetailsFormSection; +import org.labkey.api.ehr.dataentry.BloodDrawFormSection; +import org.labkey.api.ehr.dataentry.DataEntryFormContext; +import org.labkey.api.ehr.dataentry.DrugAdministrationFormSection; +import org.labkey.api.ehr.dataentry.FormSection; +import org.labkey.api.ehr.dataentry.TaskForm; +import org.labkey.api.ehr.dataentry.TaskFormSection; +import org.labkey.api.ehr.dataentry.WeightFormSection; +import org.labkey.api.module.Module; +import org.labkey.api.view.template.ClientDependency; + +import java.util.Arrays; +import java.util.List; +import java.util.function.Supplier; + +/** + * User: bimber + * Date: 7/29/13 + */ +public class BloodDrawFormType extends TaskForm +{ + public static final String NAME = "Blood Draws"; + + public BloodDrawFormType(DataEntryFormContext ctx, Module owner) + { + this(ctx, owner, Arrays.asList( + new TaskFormSection(), + new AnimalDetailsFormSection(), + new BloodDrawFormSection(false), + new WeightFormSection(), + new DrugAdministrationFormSection(EHRService.FORM_SECTION_LOCATION.Body, DrugAdministrationFormSection.LABEL, null) + )); + } + + public BloodDrawFormType(DataEntryFormContext ctx, Module owner, List sections) + { + super(ctx, owner, NAME, NAME, "Clinical", sections); + + addClientDependency(getAddScheduledTreatmentWindowDependency()); + addClientDependency(ClientDependency.supplierFromPath("ehr/form/field/SnomedTreatmentCombo.js")); + + addClientDependency(ClientDependency.supplierFromPath("ehr/model/sources/BloodDraw.js")); + + for (FormSection s : getFormSections()) + { + s.addConfigSource("BloodDraw"); + } + setDisplayReviewRequired(true); + } + + public Supplier getAddScheduledTreatmentWindowDependency() + { + return ClientDependency.supplierFromPath("ehr/window/AddScheduledTreatmentWindow.js"); + } +} diff --git a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/ClinicalRoundsFormType.java b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/ClinicalRoundsFormType.java index 3a883b5ae..b239dd586 100644 --- a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/ClinicalRoundsFormType.java +++ b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/ClinicalRoundsFormType.java @@ -19,6 +19,7 @@ import org.labkey.api.ehr.dataentry.AbstractFormSection; import org.labkey.api.ehr.dataentry.BloodDrawFormSection; import org.labkey.api.ehr.dataentry.DataEntryFormContext; +import org.labkey.api.ehr.dataentry.DefaultDataEntryFormFactory; import org.labkey.api.ehr.dataentry.FormSection; import org.labkey.api.ehr.dataentry.TaskForm; import org.labkey.api.ehr.dataentry.TaskFormSection; @@ -72,12 +73,7 @@ public ClinicalRoundsFormType(DataEntryFormContext ctx, Module owner) addClientDependency(ClientDependency.supplierFromPath("ehr/model/sources/ClinicalDefaults.js")); addClientDependency(ClientDependency.supplierFromPath("onprc_ehr/model/sources/ClinicalRounds.js")); - - - - - - + setDisplayReviewRequired(true); } diff --git a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/FlagsFormType.java b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/FlagsFormType.java index d06121aaf..9b2b631ac 100644 --- a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/FlagsFormType.java +++ b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/FlagsFormType.java @@ -28,7 +28,9 @@ import org.labkey.api.security.permissions.Permission; import org.labkey.security.xml.GroupEnumType; +import java.util.ArrayList; import java.util.Arrays; +import java.util.List; /** * User: bimber @@ -46,6 +48,19 @@ public FlagsFormType(DataEntryFormContext ctx, Module owner) new AnimalDetailsFormSection(), new SimpleGridPanel("study", "flags", "Flags") )); + + + } + + + @Override + protected List getButtonConfigs() + { + List defaultButtons = new ArrayList<>(); + defaultButtons.add("REVIEW"); + defaultButtons.add("SUBMIT"); + + return defaultButtons; } @Override diff --git a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/MatingFormType.java b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/MatingFormType.java index fe05bf4f2..5d981ff13 100644 --- a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/MatingFormType.java +++ b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/MatingFormType.java @@ -43,6 +43,8 @@ public MatingFormType(DataEntryFormContext ctx, Module owner) new AnimalDetailsFormSection(), new SimpleGridPanel("study", "matings", "Matings") )); + + setDisplayReviewRequired(true); } @Override diff --git a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/MedSignoffFormType.java b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/MedSignoffFormType.java index a9c8fbfef..7fcc76b63 100644 --- a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/MedSignoffFormType.java +++ b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/MedSignoffFormType.java @@ -60,6 +60,8 @@ public MedSignoffFormType(DataEntryFormContext ctx, Module owner) addSection(new MiscChargesFormSection(EHRService.FORM_SECTION_LOCATION.Body)); } + setDisplayReviewRequired(true); + } @Override diff --git a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/MensFormType.java b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/MensFormType.java index a0e9f8f7c..c1c78a93d 100644 --- a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/MensFormType.java +++ b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/MensFormType.java @@ -45,6 +45,8 @@ public MensFormType(DataEntryFormContext ctx, Module owner) addClientDependency(ClientDependency.supplierFromPath("ehr/model/sources/Menses.js")); + setDisplayReviewRequired(true); + for (FormSection s : getFormSections()) { s.addConfigSource("Task"); diff --git a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/PregnancyConfirmationFormType.java b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/PregnancyConfirmationFormType.java index 1a717b10b..a73afeacc 100644 --- a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/PregnancyConfirmationFormType.java +++ b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/PregnancyConfirmationFormType.java @@ -50,6 +50,8 @@ public PregnancyConfirmationFormType(DataEntryFormContext ctx, Module owner) addClientDependency(ClientDependency.supplierFromPath("ehr/model/sources/ClinicalDefaults.js")); addClientDependency(ClientDependency.supplierFromPath("ehr/model/sources/PregnancyConfirmation.js")); + setDisplayReviewRequired(true); + for (FormSection s : getFormSections()) { s.addConfigSource("Task"); diff --git a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/TBFormType.java b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/TBFormType.java index b0927aff4..770ecb5bb 100644 --- a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/TBFormType.java +++ b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/TBFormType.java @@ -40,6 +40,8 @@ public TBFormType(DataEntryFormContext ctx, Module owner) new AnimalDetailsFormSection(), new TBProcedureFormSection() )); + + setDisplayReviewRequired(true); } @Override diff --git a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/TBTestObservationFormType.java b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/TBTestObservationFormType.java index d6b80ece2..00f6f41ea 100644 --- a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/TBTestObservationFormType.java +++ b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/TBTestObservationFormType.java @@ -50,7 +50,7 @@ public TBTestObservationFormType(DataEntryFormContext ctx, Module owner) addClientDependency(ClientDependency.supplierFromPath("onprc_ehr/form/field/TB_TST_Scores_Type.js")); - + setDisplayReviewRequired(true); } diff --git a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/TreatmentsFormType.java b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/TreatmentsFormType.java index be803534c..0846869e7 100644 --- a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/TreatmentsFormType.java +++ b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/TreatmentsFormType.java @@ -55,6 +55,9 @@ public TreatmentsFormType(DataEntryFormContext ctx, Module owner) s.addConfigSource("TreatmentDrugsClinical"); } + + setDisplayReviewRequired(true); + addClientDependency(ClientDependency.supplierFromPath("onprc_ehr/model/sources/TreatmentDrugsClinical.js")); //Added 4-24-2024 R. Blasa addClientDependency(ClientDependency.supplierFromPath("onprc_ehr/window/FormTemplateWindow.js")); diff --git a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/WeightFormType.java b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/WeightFormType.java index 71509ca60..de3d86e6e 100644 --- a/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/WeightFormType.java +++ b/onprc_ehr/src/org/labkey/onprc_ehr/dataentry/WeightFormType.java @@ -23,6 +23,7 @@ import org.labkey.api.ehr.dataentry.TaskFormSection; import org.labkey.api.ehr.dataentry.WeightFormSection; import org.labkey.api.ehr.dataentry.DrugAdministrationFormSection; +import org.labkey.api.ehr.security.EHRClinicalEntryPermission; import org.labkey.api.module.Module; import org.labkey.api.security.permissions.AdminPermission; import org.labkey.api.view.template.ClientDependency; @@ -59,6 +60,16 @@ public WeightFormType(DataEntryFormContext ctx, Module owner) s.addConfigSource("Task"); s.addConfigSource("Weight"); } + setDisplayReviewRequired(true); + } + + @Override + protected boolean canInsert() + { + if (!getCtx().getContainer().hasPermission(getCtx().getUser(), EHRClinicalEntryPermission.class)) + return false; + + return super.canInsert(); } }