001package org.hl7.fhir.r4.model.codesystems;
002
003
004
005
006/*
007  Copyright (c) 2011+, HL7, Inc.
008  All rights reserved.
009  
010  Redistribution and use in source and binary forms, with or without modification, 
011  are permitted provided that the following conditions are met:
012  
013   * Redistributions of source code must retain the above copyright notice, this 
014     list of conditions and the following disclaimer.
015   * Redistributions in binary form must reproduce the above copyright notice, 
016     this list of conditions and the following disclaimer in the documentation 
017     and/or other materials provided with the distribution.
018   * Neither the name of HL7 nor the names of its contributors may be used to 
019     endorse or promote products derived from this software without specific 
020     prior written permission.
021  
022  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
023  ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
024  WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
025  IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
026  INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 
027  NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 
028  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 
029  WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 
030  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
031  POSSIBILITY OF SUCH DAMAGE.
032  
033*/
034
035// Generated on Wed, Jan 30, 2019 16:19-0500 for FHIR v4.0.0
036
037
038import org.hl7.fhir.exceptions.FHIRException;
039
040public enum Appointmentstatus {
041
042        /**
043         * None of the participant(s) have finalized their acceptance of the appointment request, and the start/end time might not be set yet.
044         */
045        PROPOSED, 
046        /**
047         * Some or all of the participant(s) have not finalized their acceptance of the appointment request.
048         */
049        PENDING, 
050        /**
051         * All participant(s) have been considered and the appointment is confirmed to go ahead at the date/times specified.
052         */
053        BOOKED, 
054        /**
055         * The patient/patients has/have arrived and is/are waiting to be seen.
056         */
057        ARRIVED, 
058        /**
059         * The planning stages of the appointment are now complete, the encounter resource will exist and will track further status changes. Note that an encounter may exist before the appointment status is fulfilled for many reasons.
060         */
061        FULFILLED, 
062        /**
063         * The appointment has been cancelled.
064         */
065        CANCELLED, 
066        /**
067         * Some or all of the participant(s) have not/did not appear for the appointment (usually the patient).
068         */
069        NOSHOW, 
070        /**
071         * This instance should not have been part of this patient's medical record.
072         */
073        ENTEREDINERROR, 
074        /**
075         * When checked in, all pre-encounter administrative work is complete, and the encounter may begin. (where multiple patients are involved, they are all present).
076         */
077        CHECKEDIN, 
078        /**
079         * The appointment has been placed on a waitlist, to be scheduled/confirmed in the future when a slot/service is available.
080A specific time might or might not be pre-allocated.
081         */
082        WAITLIST, 
083        /**
084         * added to help the parsers
085         */
086        NULL;
087        public static Appointmentstatus fromCode(String codeString) throws FHIRException {
088            if (codeString == null || "".equals(codeString))
089                return null;
090        if ("proposed".equals(codeString))
091          return PROPOSED;
092        if ("pending".equals(codeString))
093          return PENDING;
094        if ("booked".equals(codeString))
095          return BOOKED;
096        if ("arrived".equals(codeString))
097          return ARRIVED;
098        if ("fulfilled".equals(codeString))
099          return FULFILLED;
100        if ("cancelled".equals(codeString))
101          return CANCELLED;
102        if ("noshow".equals(codeString))
103          return NOSHOW;
104        if ("entered-in-error".equals(codeString))
105          return ENTEREDINERROR;
106        if ("checked-in".equals(codeString))
107          return CHECKEDIN;
108        if ("waitlist".equals(codeString))
109          return WAITLIST;
110        throw new FHIRException("Unknown Appointmentstatus code '"+codeString+"'");
111        }
112        public String toCode() {
113          switch (this) {
114            case PROPOSED: return "proposed";
115            case PENDING: return "pending";
116            case BOOKED: return "booked";
117            case ARRIVED: return "arrived";
118            case FULFILLED: return "fulfilled";
119            case CANCELLED: return "cancelled";
120            case NOSHOW: return "noshow";
121            case ENTEREDINERROR: return "entered-in-error";
122            case CHECKEDIN: return "checked-in";
123            case WAITLIST: return "waitlist";
124            case NULL: return null;
125            default: return "?";
126          }
127        }
128        public String getSystem() {
129          return "http://hl7.org/fhir/appointmentstatus";
130        }
131        public String getDefinition() {
132          switch (this) {
133            case PROPOSED: return "None of the participant(s) have finalized their acceptance of the appointment request, and the start/end time might not be set yet.";
134            case PENDING: return "Some or all of the participant(s) have not finalized their acceptance of the appointment request.";
135            case BOOKED: return "All participant(s) have been considered and the appointment is confirmed to go ahead at the date/times specified.";
136            case ARRIVED: return "The patient/patients has/have arrived and is/are waiting to be seen.";
137            case FULFILLED: return "The planning stages of the appointment are now complete, the encounter resource will exist and will track further status changes. Note that an encounter may exist before the appointment status is fulfilled for many reasons.";
138            case CANCELLED: return "The appointment has been cancelled.";
139            case NOSHOW: return "Some or all of the participant(s) have not/did not appear for the appointment (usually the patient).";
140            case ENTEREDINERROR: return "This instance should not have been part of this patient's medical record.";
141            case CHECKEDIN: return "When checked in, all pre-encounter administrative work is complete, and the encounter may begin. (where multiple patients are involved, they are all present).";
142            case WAITLIST: return "The appointment has been placed on a waitlist, to be scheduled/confirmed in the future when a slot/service is available.\nA specific time might or might not be pre-allocated.";
143            case NULL: return null;
144            default: return "?";
145          }
146        }
147        public String getDisplay() {
148          switch (this) {
149            case PROPOSED: return "Proposed";
150            case PENDING: return "Pending";
151            case BOOKED: return "Booked";
152            case ARRIVED: return "Arrived";
153            case FULFILLED: return "Fulfilled";
154            case CANCELLED: return "Cancelled";
155            case NOSHOW: return "No Show";
156            case ENTEREDINERROR: return "Entered in error";
157            case CHECKEDIN: return "Checked In";
158            case WAITLIST: return "Waitlisted";
159            case NULL: return null;
160            default: return "?";
161          }
162    }
163
164
165}