Files
BE_IBL/task_refactor_workflow_klinik_satusehat.md
2026-06-10 16:16:43 +07:00

2.8 KiB

Task: Refactor Workflow Klinik untuk SATUSEHAT Readiness

Saat ini alur klinik:

Registrasi → Screening → Pemeriksaan Dokter → Kasir

Pada menu dokter terdapat:

  • Anamnesa
  • Pemeriksaan Tanda Vital
  • Pemeriksaan Fisik
  • Pemeriksaan Penunjang
  • Diagnosis
  • Tindakan Medis
  • Resep
  • Saran

Target sistem:

  • Klinik Umum
  • Vaksinasi
  • Khitan
  • Integrasi SATUSEHAT

Perubahan yang harus dibuat

1. Master Poli

Buat tabel:

m_clinic_unit

Fields:

  • id
  • code
  • name
  • description
  • satusehat_location_id
  • is_active

Data awal:

  • POLI_UMUM
  • POLI_VAKSINASI
  • POLI_KHITAN
  • POLI_MCU

Registrasi harus memilih poli.


2. Template Screening

Buat sistem screening dinamis.

Table:

m_screening_template

  • id
  • code
  • name

m_screening_question

  • id
  • template_id
  • question
  • question_type
  • sort_order
  • is_required

t_screening_answer

  • id
  • registration_id
  • question_id
  • answer

Template awal:

RAWAT_JALAN

  • Kesadaran
  • Pernapasan
  • Nyeri Dada
  • Skala Nyeri
  • Risiko Jatuh
  • Batuk > 2 Minggu

VAKSINASI

  • Demam > 38
  • Sedang sakit akut
  • Riwayat anafilaksis
  • Alergi vaksin
  • Layak vaksin

KHITAN

  • Gangguan pembekuan darah
  • Alergi anestesi
  • Diabetes
  • Layak tindakan

MCU

  • gunakan template kosong terlebih dahulu

Poli menentukan template screening yang digunakan.


3. Pisahkan TTV dari Menu Dokter

Buat modul baru:

t_vital_sign

Fields:

  • registration_id
  • systolic
  • diastolic
  • pulse
  • respiratory_rate
  • temperature
  • weight
  • height
  • bmi
  • created_by
  • created_at

Workflow:

Registrasi → Screening → TTV → Dokter

Dokter hanya membaca hasil TTV.


4. Modul Vaksinasi

Buat tabel:

m_vaccine

  • id
  • code
  • name
  • kfa_code
  • manufacturer

t_vaccination

  • id
  • registration_id
  • vaccine_id
  • batch_number
  • expired_date
  • dose_number
  • route
  • injection_site
  • administered_by
  • administration_datetime
  • adverse_event_note

Data ini nantinya akan menjadi SATUSEHAT Immunization Resource.


5. Tindakan Medis Terstruktur

Buat:

m_procedure

  • id
  • code
  • name
  • snomed_code

t_medical_procedure

  • id
  • registration_id
  • procedure_id
  • performer_id
  • note

Contoh master:

  • Khitan Klem
  • Khitan Laser
  • Khitan Stapler
  • Khitan Konvensional

Data ini nantinya menjadi SATUSEHAT Procedure Resource.


6. Master Tenaga Kesehatan

Buat:

m_practitioner

  • id
  • employee_id
  • profession
  • name
  • satusehat_practitioner_id

Profesi:

  • Dokter
  • Perawat
  • Bidan

Vaksinasi dan tindakan tidak selalu dilakukan dokter.


7. SATUSEHAT Mapping Preparation

Tambahkan kolom mapping:

ICD10 SNOMED KFA

untuk:

  • diagnosis
  • tindakan
  • vaksin
  • obat

Belum perlu integrasi API SATUSEHAT. Fokus pada kesiapan data terlebih dahulu.


Output yang diharapkan:

  • Migration SQL
  • ERD
  • Repository
  • Service Layer
  • API Endpoint
  • DTO Request/Response
  • Unit Test