diff --git a/task_refactor_workflow_klinik_satusehat.md b/task_refactor_workflow_klinik_satusehat.md new file mode 100644 index 00000000..735641ae --- /dev/null +++ b/task_refactor_workflow_klinik_satusehat.md @@ -0,0 +1,252 @@ +# 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