add project_backlog.md

This commit is contained in:
mahdahar 2026-01-19 11:21:08 +07:00
parent 2857935545
commit 582faacdad
3 changed files with 145 additions and 74 deletions

120
PROJECT_BACKLOG.md Normal file
View File

@ -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**<br><br>User Story: As an Admin, I want an "Unvalidate" menu to revert finalized records in case of data entry errors.<br><br>Technical: Only Doctors and Bu Yani should have access. | Both | Pending |
| T-002 | **Hide/Disable 'Validation' button after 2nd validation**<br><br>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**<br><br>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.<br><br>Technical: Lab can only preview, CS can print/save. | Both | Pending |
| T-004 | **Update User Role levels**<br><br>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**<br><br>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.<br><br>User Story: As a CS Staff, I want to see all patients to monitor the entire facility flow.<br><br>Technical: Implement filter logic based on patient_status or service_type field. | MD | Pending |
| T-006 | **Create Clinical Patients Dashboard**<br><br>Technical: Dedicated dashboard that hides the "No Lab" column for clinical workflows. | JSON | Pending |
| T-007 | **Fix Table Sorting**<br><br>User Story: As a User, I want to sort dashboard tables by "No Register" and "Patient Name" to find specific records quickly.<br><br>Technical: Fix sorting functionality on all table headers. | Both | Pending |
| T-008 | **Fix Language Toggle (ID/EN)**<br><br>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**<br><br>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**<br><br>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**<br><br>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**<br><br>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.<br><br>Technical: Log all unvalidation actions with timestamp, user ID, and reason. | Both | Pending |
| T-013 | **Enhanced Patient Detail Logging**<br><br>User Story: As a Staff member, I want to see a detailed history in the patient profile including:<br><br>- Sample Collection Time (categorized by type: EDTA, Serum, etc.)<br>- Sample Received Time<br>- 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**<br><br>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**<br><br>Technical: Ensure Preview doesn't crash when data is empty. | JSON | Pending |
| T-016 | **Ensure 'Uncollect' Feature Functional**<br><br>Technical: Maintain Uncollect feature functionality in current phase. | JSON | Pending |
| T-017 | **Backend Performance & Connectivity**<br><br>Technical Tasks:<br>- Investigate intermittent connection issues with Server 253<br>- Plan and execute SSD Upgrade for database server<br>- 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

74
TODO.md
View File

@ -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.

25
docs/notulen jaka.txt Normal file
View File

@ -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