Summary Table
Categories |
Total Count |
PII |
0 |
URL |
0 |
DNS |
0 |
EKL |
0 |
IP |
0 |
PORT |
0 |
VsID |
0 |
CF |
0 |
AI |
0 |
VPD |
0 |
PL |
0 |
Other |
0 |
File Content
// Action classes for setting patient data-specific state, including:
// - Patient Search
// - Patient Queue Control
// - Patient in Context
// - Patient Data
import { Action } from '@ngrx/store';
import { PatientIdentity, QueryParams, PatientDetails, AllergyExt,
ProgressNote, Immunization, Consult,
Observation, Problem, AppointmentExt} from '../models/patientModels';
import { SummaryType } from '../models/queryParams';
export enum PatientActionTypes {
SetSearchResults = 'Set Search Results',
AddToPatientQueue = 'Add Patient(s) To Queue',
RemFromPatientQueue = 'Remove a Patient From Queue',
ClearPatientQueue = 'Clear Patient Queue',
SelectPatient = 'Select Patient',
SetQueryParameters = 'Change Query Parameters',
ResetQueryParameters = 'Reset Query Parameters',
SetDetails = 'Set Patient Details',
SetAllergies = 'Set Patient Allergies',
SetAppointments = 'Set Patient Appointments',
SetConsults = 'Set Patient Consults',
SetLabs = 'Set Patient Labs',
SetLabSummary = 'Set Lab Summary',
SetVitals = 'Set Patient Vitals',
SetCWAD = 'Set CWAD Data',
SetVitalSummary = 'Set Vital Summary',
SetEncounterSummary = 'Set Encounter Summary',
AddVitalSummaryType = 'Add Vital Summary Type',
SetProgressNotes = 'Set Patient Progress Notes',
SetImmunizations = 'Set Patient Immunizations',
SetProblemList = 'Set Patient Problem List',
AddPendingRequest = 'Push Request to data request queue',
RemovePendingRequest = 'Pop Request from data request queue'
}
export class AddPendingRequest implements Action {
readonly type = PatientActionTypes.AddPendingRequest;
constructor(public payload: string) {}
}
export class RemovePendingRequest implements Action {
readonly type = PatientActionTypes.RemovePendingRequest;
constructor(public payload: string) {}
}
export class SetSearchResults implements Action {
readonly type = PatientActionTypes.SetSearchResults;
constructor(public payload: PatientIdentity[]) {}
}
export class AddToPatientQueue implements Action {
readonly type = PatientActionTypes.AddToPatientQueue;
constructor(public payload: PatientIdentity[]) {}
}
export class RemFromPatientQueue implements Action {
readonly type = PatientActionTypes.RemFromPatientQueue;
constructor(public payload: PatientIdentity) {}
}
export class ClearPatientQueue implements Action {
readonly type = PatientActionTypes.ClearPatientQueue;
constructor() {}
}
export class SelectPatient implements Action {
readonly type = PatientActionTypes.SelectPatient;
constructor(public payload: PatientIdentity) {}
}
export class SetQueryParameters implements Action {
readonly type = PatientActionTypes.SetQueryParameters;
constructor(public payload: {element: string, key?: string, params: QueryParams}) {}
}
export class ResetQueryParameters implements Action {
readonly type = PatientActionTypes.ResetQueryParameters;
constructor(public payload: {element: string, key?: string}) {}
}
export class SetDetails implements Action {
readonly type = PatientActionTypes.SetDetails;
constructor(public payload: {data: PatientDetails, err: string, queryDate: Date}) {}
}
export class SetAllergies implements Action {
readonly type = PatientActionTypes.SetAllergies;
constructor(public payload: { data: AllergyExt[], err: string, queryDate: Date}) {}
}
export class SetConsults implements Action {
readonly type = PatientActionTypes.SetConsults;
constructor(public payload: { data: Consult[], err: string, queryDate: Date}) {}
}
export class SetCWAD implements Action {
readonly type = PatientActionTypes.SetCWAD;
constructor(public payload: { data: ProgressNote[], err: string, queryDate: Date}) {}
}
export class SetLabs implements Action {
readonly type = PatientActionTypes.SetLabs;
constructor(public payload: {data: Observation[], err: string, queryDate: Date}) {}
}
export class SetVitals implements Action {
readonly type = PatientActionTypes.SetVitals;
constructor(public payload: {data: Observation[], err: string, queryDate: Date}) {}
}
export class SetVitalSummary implements Action {
readonly type = PatientActionTypes.SetVitalSummary;
constructor(public payload: {key: string, data: Observation, err: string, queryDate: Date}) {}
}
export class AddVitalSummaryType implements Action {
readonly type = PatientActionTypes.AddVitalSummaryType;
constructor(public payload: SummaryType) {}
}
export class SetLabSummary implements Action {
readonly type = PatientActionTypes.SetLabSummary;
constructor(public payload: {key: string, data: Observation, err: string, queryDate: Date}) {}
}
export class SetEncounterSummary implements Action {
readonly type = PatientActionTypes.SetEncounterSummary;
constructor(public payload: {key: string, data: Consult[], err: string, queryDate: Date}) {}
}
export class SetProgressNotes implements Action {
readonly type = PatientActionTypes.SetProgressNotes;
constructor(public payload: {data: ProgressNote[], err: string, queryDate: Date}) {}
}
export class SetImmunizations implements Action {
readonly type = PatientActionTypes.SetImmunizations;
constructor(public payload: {data: Immunization[], err: string, queryDate: Date}) {}
}
export class SetProblemList implements Action {
readonly type = PatientActionTypes.SetProblemList;
constructor(public payload: {data: Problem[], err: string, queryDate: Date}) {}
}
export class SetAppointments implements Action {
readonly type = PatientActionTypes.SetAppointments;
constructor(public payload: {data: AppointmentExt[], err: string, queryDate: Date}) {}
}
// union type of the above classes set for reducer usage
export type PatientActions =
| SetSearchResults
| AddToPatientQueue
| RemFromPatientQueue
| ClearPatientQueue
| SelectPatient
| SetQueryParameters
| ResetQueryParameters
| SetDetails
| SetAllergies
| SetAppointments
| SetConsults
| SetLabs
| SetLabSummary
| SetVitals
| SetCWAD
| SetVitalSummary
| AddVitalSummaryType
| SetEncounterSummary
| SetProgressNotes
| SetImmunizations
| SetProblemList
| AddPendingRequest
| RemovePendingRequest;