/* fEMR - fast Electronic Medical Records Copyright (C) 2014 Team fEMR fEMR is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. fEMR is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with fEMR. If not, see <http://www.gnu.org/licenses/>. If you have any questions, contact <info@teamfemr.org>. */ package femr.business.services.core; import femr.common.dtos.ServiceResponse; import femr.common.models.VitalItem; import femr.util.DataStructure.Mapping.VitalMultiMap; import java.util.List; import java.util.Map; public interface IVitalService { /** * Create all vitals for an encounter. * * @param patientEncounterVitalMap A <name,value> keypair of vitals to be created, not null * @param userId User creating the vitals, not null * @param encounterId Encounter that the vitals are for, not null * @return a service response that contains a list of VitalItems that were created * and/or errors if they exist. */ ServiceResponse<List<VitalItem>> createPatientEncounterVitalItems(Map<String, Float> patientEncounterVitalMap, int userId, int encounterId); /** * Create all vitals for an encounter. TODO: how is this different from createPatientEncounterVitalItems? * * @param patientEncounterVital A <name,value> keypair of vitals to be created, not null * @param userId User creating the vitals, not null * @param encounterId Encounter that the vitals are for, not null * @return a service response that contains a list of VitalItems that were created * and/or errors if they exist. */ ServiceResponse<List<VitalItem>> createPatientEncounterVitals(Map<String, Float> patientEncounterVital, int userId, int encounterId); /** * Gets vital items, but only the names * * @return a service response that contains a list of VitalItems with no values * and/or errors if they exist. */ ServiceResponse<List<VitalItem>> retrieveAllVitalItems(); /** * Retrieve a map of vitals where the key is the date as well as the name * * @param encounterId the id of the encounter to get vitals for, not null * @return a service response that contains a VitalMultiMap * and/or errors if they exist. */ ServiceResponse<VitalMultiMap> retrieveVitalMultiMap(int encounterId); }