Files

87 lines
2.5 KiB
TypeScript

import type { DeathCause } from "./death-cause"
import { type Doctor, genDoctor } from "./doctor"
import { genEmployee, type Employee } from "./employee"
import type { EncounterDocument } from "./encounter-document"
import type { InternalReference } from "./internal-reference"
import type { Nurse } from "./nurse"
import { type Patient, genPatient } from "./patient"
import type { Person } from "./person"
import type { PersonAddress } from "./person-address"
import type { PersonContact } from "./person-contact"
import type { PersonRelative } from "./person-relative"
import type { Specialist } from "./specialist"
import type { Subspecialist } from "./subspecialist"
import { genUnit, type Unit } from "./unit"
export interface Encounter {
id: number
patient_id: number
patient: Patient
registeredAt: string
class_code: string
unit_code: string
unit: Unit
specialist_code?: string
specilist?: Specialist
subspecialist_code?: string
subspecialist?: Subspecialist
visitDate: string
adm_employee_id: number
adm_employee: Employee
responsible_nurse_code?: string
responsible_nurse?: Nurse
appointment_doctor_code: string
appointment_doctor: Doctor
responsible_doctor_code?: string
responsible_doctor?: Doctor
refSource_name?: string
appointment_id?: number
earlyEducation?: string
medicalDischargeEducation: string
admDischargeEducation?: string
discharge_method_code?: string
discharge_reason?: string
discharge_date?: string
internalReferences?: InternalReference[]
deathCause?: DeathCause
paymentMethod_code?: string
status_code: string
encounterDocuments: EncounterDocument[]
}
export interface CreateDtoWithPatient {
encounter: Encounter
patient: {
person: Person
personAddresses: PersonAddress[]
personContacts: PersonContact[]
personRelatives: PersonRelative[]
}
}
export function genEncounter(): Encounter {
return {
id: 0,
patient_id: 0,
patient: genPatient(),
registeredAt: '',
class_code: '',
unit_code: '',
unit: genUnit(),
visitDate: '',
adm_employee_id: 0,
adm_employee: genEmployee(),
appointment_doctor_code: '',
appointment_doctor: genDoctor(),
medicalDischargeEducation: '',
status_code: '',
encounterDocuments: [],
}
}
export interface EncounterCheckInDto {
responsible_doctor_id: number
responsibleArea_employee_id: number
}