From 582faacdad23c3e1cd46633dbc19dbde2d21b26c Mon Sep 17 00:00:00 2001
From: mahdahar <89adham@gmail.com>
Date: Mon, 19 Jan 2026 11:21:08 +0700
Subject: [PATCH] add project_backlog.md
---
PROJECT_BACKLOG.md | 120 ++++++++++++++++++++++++++++++++++++++++++
TODO.md | 74 --------------------------
docs/notulen jaka.txt | 25 +++++++++
3 files changed, 145 insertions(+), 74 deletions(-)
create mode 100644 PROJECT_BACKLOG.md
delete mode 100644 TODO.md
create mode 100644 docs/notulen jaka.txt
diff --git a/PROJECT_BACKLOG.md b/PROJECT_BACKLOG.md
new file mode 100644
index 0000000..a8557f9
--- /dev/null
+++ b/PROJECT_BACKLOG.md
@@ -0,0 +1,120 @@
+# Project Backlog: Glen RME & Lab Management System
+
+**Last Updated:** January 19, 2026
+**Sources:** TODO.md, TODO.json
+
+---
+
+## P0 - Critical (Access Control & Security)
+
+_Must be completed first to ensure basic process flow is correct._
+
+| ID | Task | Source | Status |
+|----|------|--------|--------|
+| T-001 | **Restrict 'Unvalidate' button to specific User IDs**
User Story: As an Admin, I want an "Unvalidate" menu to revert finalized records in case of data entry errors.
Technical: Only Doctors and Bu Yani should have access. | Both | Pending |
+| T-002 | **Hide/Disable 'Validation' button after 2nd validation**
User Story: As a Lab Validator, I want the "Validate" button to disappear or disable once 2-level validation is complete to prevent redundant actions. | Both | Pending |
+| T-003 | **Restrict Print/Save-to-PDF to CS Role only**
User Story: As a Manager, I want to restrict the "Print Result" permission to the CS Role only, so that the Lab team cannot bypass the official release process.
Technical: Lab can only preview, CS can print/save. | Both | Pending |
+| T-004 | **Update User Role levels**
Technical: Standardize roles to: Superuser, Admin, Lab, Phlebo, and CS. | JSON | Pending |
+
+---
+
+## P1 - High (Dashboard & UI Improvements)
+
+_Features that improve speed and correctness of lab operations._
+
+| ID | Task | Source | Status |
+|----|------|--------|--------|
+| T-005 | **Role-Based Dashboard Filtering**
User Story: As a Lab Staff, I want the dashboard to only show "Klinik+Lab" or "Lab Only" patients so I can focus on relevant tasks.
User Story: As a CS Staff, I want to see all patients to monitor the entire facility flow.
Technical: Implement filter logic based on patient_status or service_type field. | MD | Pending |
+| T-006 | **Create Clinical Patients Dashboard**
Technical: Dedicated dashboard that hides the "No Lab" column for clinical workflows. | JSON | Pending |
+| T-007 | **Fix Table Sorting**
User Story: As a User, I want to sort dashboard tables by "No Register" and "Patient Name" to find specific records quickly.
Technical: Fix sorting functionality on all table headers. | Both | Pending |
+| T-008 | **Fix Language Toggle (ID/EN)**
User Story: As a Lab Staff, I want to toggle the lab result preview between Indonesian and English so I can provide reports for international requirements. | Both | Pending |
+| T-009 | **Apply Row Color-Coding**
User Story: As a User, I want the "No Register" column to be color-coded (Yellow/Blue/Green) based on legacy system logic for quick status recognition. | Both | Pending |
+| T-010 | **Update PDF Report Metadata**
Technical: Replace 'Printed By' with name of validating user. Add 'Finish Validation' status per sample in PDF output. | JSON | Pending |
+
+---
+
+## P1 - High (RME Module Development)
+
+| ID | Task | Source | Status |
+|----|------|--------|--------|
+| T-011 | **Initialize RME Sidebar Menu**
Technical: Create menu items for Dashboard, Patient, Hasil Lab, Validation, Unreceived, Report, Sample Collection, User Management, and Unvalidate. | JSON | Pending |
+| T-012 | **Create 'Detail Unvalidated' History Log/View**
User Story: As a User, I want the "Reason for Unvalidation" to be visible in the Patient Detail view so I know why a record was reopened.
Technical: Log all unvalidation actions with timestamp, user ID, and reason. | Both | Pending |
+| T-013 | **Enhanced Patient Detail Logging**
User Story: As a Staff member, I want to see a detailed history in the patient profile including:
- Sample Collection Time (categorized by type: EDTA, Serum, etc.)
- Sample Received Time
- Print History (Who printed and when) | MD | Pending |
+
+---
+
+## P2 - Medium (Maintenance & UX)
+
+_UI improvements and backend optimizations._
+
+| ID | Task | Source | Status |
+|----|------|--------|--------|
+| T-014 | **Add Dedicated Print Button**
User Story: As a User, I want a clear "Print" button that triggers the browser/system print dialog, as standard shortcuts (Ctrl+P) are currently unreliable in the app. | MD | Pending |
+| T-015 | **Add Error Handling for Preview Button**
Technical: Ensure Preview doesn't crash when data is empty. | JSON | Pending |
+| T-016 | **Ensure 'Uncollect' Feature Functional**
Technical: Maintain Uncollect feature functionality in current phase. | JSON | Pending |
+| T-017 | **Backend Performance & Connectivity**
Technical Tasks:
- Investigate intermittent connection issues with Server 253
- Plan and execute SSD Upgrade for database server
- Verify API integration between GDC_cmod, GDC_CS2, and Report2 for sample reception module | MD | Pending |
+
+---
+
+## Management Notes
+
+| ID | Note | Source |
+|----|------|--------|
+| NOTE-001 | Mas Rizqi is the IT person in charge. | JSON |
+| NOTE-002 | Merging of 'Hasil' and 'Validation' menus is pending management approval. | JSON |
+
+---
+
+## Acceptance Criteria Summary
+
+### Code Consistency
+- All new UI elements (buttons/toggles) must match the existing design system.
+
+### Audit Trail
+- Every status change (Validate/Unvalidate) must be logged with a timestamp and user ID.
+
+### Cross-Browser
+- The "Print" functionality must work across Chrome and Edge browsers.
+
+---
+
+## Source Mapping Appendix
+
+| Task ID | Source | Original Description |
+|---------|--------|---------------------|
+| T-001 | TODO.json | Restrict 'Unvalidate' button to specific User IDs |
+| T-002 | Both | Hide/disable Validation button after 2nd validation |
+| T-003 | Both | Restrict Print/Save-to-PDF to CS Role only |
+| T-004 | TODO.json | Update User Role levels |
+| T-005 | TODO.md | Role-Based Dashboard Filtering |
+| T-006 | TODO.json | Create Clinical Patients Dashboard |
+| T-007 | Both | Fix Table Sorting |
+| T-008 | Both | Fix Language Toggle (ID/EN) |
+| T-009 | Both | Apply row color-coding |
+| T-010 | TODO.json | Update PDF reports metadata |
+| T-011 | TODO.json | Initialize RME Sidebar Menu |
+| T-012 | Both | Detail Unvalidated history log/view |
+| T-013 | TODO.md | Enhanced Patient Detail Logging |
+| T-014 | TODO.md | Dedicated Print Button |
+| T-015 | TODO.json | Error handling for Preview button |
+| T-016 | TODO.json | Ensure Uncollect feature functional |
+| T-017 | TODO.md | Backend Performance & Connectivity |
+
+---
+
+## Quick Reference: Task Count by Priority
+
+| Priority | Count | Items |
+|----------|-------|-------|
+| P0 - Critical | 4 | T-001 through T-004 |
+| P1 - High | 9 | T-005 through T-013 |
+| P2 - Medium | 4 | T-014 through T-017 |
+| **Total** | **17** | |
+
+---
+
+## Legend
+
+- **MD** = TODO.md (User story focused)
+- **JSON** = TODO.json (Developer task focused)
+- **Both** = Content merged from both sources
diff --git a/TODO.md b/TODO.md
deleted file mode 100644
index 46f8fc6..0000000
--- a/TODO.md
+++ /dev/null
@@ -1,74 +0,0 @@
-📋 Project Backlog: Lab & Clinic Management System
-Priority 0: Critical (Workflow Blockers)
-
-Must be completed first to ensure the basic process flow is correct.
-1. Role-Based Dashboard Filtering
-
- User Story: As a Lab Staff, I want the dashboard to only show "Klinik+Lab" or "Lab Only" patients so that I can focus only on relevant tasks.
-
- User Story: As a CS Staff, I want to see all patients to monitor the entire facility flow.
-
- Technical Note: Implement a filter logic based on the patient_status or service_type field.
-
-2. Validation State Management
-
- User Story: As a Lab Validator, I want the "Validate" button to disappear or disable once 2-level validation is complete to prevent redundant actions.
-
- User Story: As an Admin, I want an "Unvalidate" menu to revert finalized records in case of data entry errors.
-
-3. Role-Based Print Permissions
-
- User Story: As a Manager, I want to restrict the "Print Result" permission to the CS Role only, so that the Lab team cannot bypass the official release process.
-
-Priority 1: High (Efficiency & Accuracy)
-
-Features that improve the speed and correctness of the lab operations.
-
-4. Multilingual Result Preview
-
- User Story: As a Lab Staff, I want to toggle the lab result preview between Indonesian and English so that I can provide reports for international requirements.
-
-5. Table Sorting & Search
-
- User Story: As a User, I want to sort the dashboard tables by "No Register" and "Patient Name" to find specific records quickly.
-
-6. Enhanced Patient Detail Logging
-
- User Story: As a Staff member, I want to see a detailed history in the patient profile, including:
-
- Sample Collection Time (categorized by type: EDTA, Serum, etc.).
-
- Sample Received Time.
-
- Print History (Who printed the result and at what time).
-
-7. Unvalidation Transparency
-
- User Story: As a User, I want the "Reason for Unvalidation" to be visible in the Patient Detail view so I know why a record was reopened.
-
-Priority 2: Medium (UX & Technical Debt)
-
-UI improvements and backend optimizations.
-8. Visual Status Indicators (Color Coding)
-
- User Story: As a User, I want the "No Register" column to be color-coded (Yellow/Blue/Green) based on the legacy system logic for quick status recognition.
-
-9. Print UI Standardization
-
- User Story: As a User, I want a clear "Print" button that triggers the browser/system print dialog, as standard shortcuts (Ctrl+P) are currently unreliable in the app.
-
-10. Backend: Performance & Connectivity
-
- Task: Investigate the intermittent connection issues with Server 253.
-
- Task: Plan and execute an SSD Upgrade for the database server to resolve reported system slowness.
-
- Task: Verify API integration between GDC_cmod, GDC_CS2, and Report2 for the sample reception module.
-
-Summary of Acceptance Criteria for the Junior:
-
- Code Consistency: All new UI elements (buttons/toggles) must match the existing design system.
-
- Audit Trail: Every status change (Validate/Unvalidate) must be logged with a timestamp and user ID.
-
- Cross-Browser: The "Print" functionality must work across Chrome and Edge browsers.
\ No newline at end of file
diff --git a/docs/notulen jaka.txt b/docs/notulen jaka.txt
new file mode 100644
index 0000000..1323f40
--- /dev/null
+++ b/docs/notulen jaka.txt
@@ -0,0 +1,25 @@
+Notulensi Meeting Glen 16 Januari 2026
+
+1. Mas rizqi menjadi penanggung jawab IT Glen
+2. glenlis cmod baru :
+ a. Tampilan dashboard untuk pasien klinik harus punya dashboard sendiri
+ b. Jangan tampilkan no lab pada dashboard pasien
+ c. Sort table belum berfungsi optimal
+ d. Baris tetap dibuat berwarna seperti sebelumnya pada tampilan dashboard
+ e. Tombol preview memang tidak menampilkan apapun jika belum ada datanya
+ f. Tombol Eng dan Ind belum berfungsi secara maksimal saat lihat laporan
+ g. Yang generate PDF adalah LAB lalu yang bisa print/cetak ke PDF adalah CS
+ h. Jika sudah di validasi 2 akun, maka bisa dilihat/print oleh CS
+ i. Unvalidate hanya bisa dilakukan oleh dokter dan bu yani untuk pemeriksaan yang Mencapai incomplete
+ j. Setelah di validasi tombol validasi harus hilang
+ k. Dalam pdf harus ada keterangan Finish validasi dari user 1 atau 2 untuk tiap sample(?) dan tulisan "Printed By" diganti jadi ... user yg mevalidasi
+ l. Uncollect dipakai dulu
+ m. Minta ada history Detail Unvalidated
+ n. Glen mau buat RME Sendiri
+
+ RME :
+ o. Menu Rancangan RME glen (dashboard, patient, hasil lab, validation, unrecheived, report, sample collection, user management)
+ p. Untuk penyatuan menu hasil dan validasi - Mengunggu Pihak Manajemen
+ q. Ditambahkan menu baru pada RME glen yaitu unvalidate
+ r. Ubah level Role user pada Users(ada di excel meeting) (superuser, admin, lab, phlebo, cs)
+ s. print label untuk cs masih dipertanyakan enaknnya gimana
\ No newline at end of file