3 Commits

Author SHA1 Message Date
sas.fajri
c410d7bbd9 FHM31052601IBL - implementasi enkripsi PII pasien dan data medis (UU PDP)
- Tambah .env loader di index.php untuk IBL_ENCRYPT_KEY dan IBL_ENCRYPT_SEARCH_KEY
- Library Ibl_encryptor: AES-256-GCM encrypt/decrypt + trigram blind index untuk partial search
- SQL migration: tambah kolom _enc dan _bidx di 16 tabel (m_patient, m_patientaddress, hasil lab, log)
- Script backup_pdp_tables.sh: backup tabel terdampak sebelum migrasi
- Script migrate_encrypt_patient.php: enkripsi batch 178K data PII pasien
- Script migrate_encrypt_results.php: enkripsi data medis hasil lab dan log
- Patient.php: search via trigram blind index, add_new/edit enkripsi sebelum save

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-31 14:07:42 +07:00
sas.fajri
fd9511171b FHM29052601IBL - implement ibl_merge_report_service Go service
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-29 15:39:51 +07:00
sas.fajri
6712b18eec feat(ibl-registration): order save resilient terhadap kegagalan generate_location
- generate_location dipindah ke luar trans_begin/commit agar order tidak rollback
- _do_generate_location_for_stations() diextract, iterasi semua station tanpa abort
- deteksi NO_MAPPING (loc_id null) sebelum INSERT
- location_warning ditambahkan ke response sukses (opsional untuk FE)
- endpoint retry_location untuk generate ulang lokasi yang belum terbentuk
- tiap kegagalan station dicatat ke error_log_order

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-19 10:11:55 +07:00