Files
simrsx-fe/app/models/encounter.ts
2025-11-13 16:16:26 +07:00

68 lines
1.9 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 Patient, genPatient } from "./patient"
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_id: number
unit: Unit
specialist_id?: number
specilist?: Specialist
subspecialist_id?: number
subspecialist?: Subspecialist
visitDate: string
adm_employee_id: number
adm_employee: Employee
appointment_doctor_id: number
appointment_doctor: Doctor
responsible_doctor_id?: number
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
status_code: string
encounterDocuments: EncounterDocument[]
}
export function genEncounter(): Encounter {
return {
id: 0,
patient_id: 0,
patient: genPatient(),
registeredAt: '',
class_code: '',
unit_id: 0,
unit: genUnit(),
visitDate: '',
adm_employee_id: 0,
adm_employee: genEmployee(),
appointment_doctor_id: 0,
appointment_doctor: genDoctor(),
medicalDischargeEducation: '',
status_code: '',
encounterDocuments: [],
}
}
export interface EncounterCheckInDto {
responsible_doctor_id: number
responsibleArea_employee_id: number
}