From efd3974d1fb2ebc975c691fe0438e7f6375002d4 Mon Sep 17 00:00:00 2001 From: voltsrage Date: Sat, 27 Jun 2026 16:27:58 +0800 Subject: [PATCH] fix: Add No clinical approval view + No live capture view for bedside data entry + EntryForm missing allergy, medication, and discharge fields --- .../Controllers/PatientsController.cs | 2 +- docs/vigilcare-records-gap-analysis.md | 6 +- vigilcare-records-web/src/assets/main.css | 6 + .../src/components/AppHeader.vue | 8 + .../src/components/EntryForm.vue | 190 ++++++++- .../src/components/VerificationForm.vue | 114 ++++- vigilcare-records-web/src/router/index.ts | 25 ++ vigilcare-records-web/src/stores/auth.ts | 13 +- vigilcare-records-web/src/stores/batches.ts | 14 +- .../src/stores/liveCapture.ts | 110 +++++ vigilcare-records-web/src/types/index.ts | 36 ++ .../src/views/ApprovalView.vue | 284 +++++++++++++ .../src/views/LiveCaptureView.vue | 388 ++++++++++++++++++ 13 files changed, 1184 insertions(+), 12 deletions(-) create mode 100644 vigilcare-records-web/src/stores/liveCapture.ts create mode 100644 vigilcare-records-web/src/views/ApprovalView.vue create mode 100644 vigilcare-records-web/src/views/LiveCaptureView.vue diff --git a/VigilCareRecordsAPI/Controllers/PatientsController.cs b/VigilCareRecordsAPI/Controllers/PatientsController.cs index 1533a9f..c3b920a 100644 --- a/VigilCareRecordsAPI/Controllers/PatientsController.cs +++ b/VigilCareRecordsAPI/Controllers/PatientsController.cs @@ -25,7 +25,7 @@ public class PatientsController : ControllerBase /// Searches live patients by MRN or full name (minimum 2 characters). /// [HttpGet("search")] - [Authorize(Roles = "INTAKE_CLERK,ADMINISTRATOR")] + [Authorize(Roles = "INTAKE_CLERK,CLINICIAN,ADMINISTRATOR")] [ProducesResponseType(typeof(ApiResponse>), StatusCodes.Status200OK)] public async Task Search([FromQuery] string q) { diff --git a/docs/vigilcare-records-gap-analysis.md b/docs/vigilcare-records-gap-analysis.md index f7b9664..be0f587 100644 --- a/docs/vigilcare-records-gap-analysis.md +++ b/docs/vigilcare-records-gap-analysis.md @@ -536,7 +536,7 @@ Clinical approvers (typically physicians) have a different workflow from verifie --- -## P2 — No live capture view for bedside data entry +## ~~P2 — No live capture view for bedside data entry~~ DONE ### Problem @@ -570,7 +570,7 @@ Live capture is the path from paper-to-digital for current patient care. Without --- -## P4 — EntryForm missing allergy, medication, and discharge fields +## ~~P4 — EntryForm missing allergy, medication, and discharge fields~~ DONE ### Problem @@ -811,7 +811,7 @@ A batch stuck in `APPROVED` with exhausted retries is invisible in Prometheus da | 14 | No user management endpoints | P4 | D | Done | | 15 | No batch cancel/void | P4 | D | Done | | 16 | No sort parameters on lists | P4 | D | Done | -| 17 | No clinical approval view | P2 | E | Open | +| 17 | No clinical approval view | P2 | E | Done | | 18 | No live capture view | P2 | E | Open | | 19 | EntryForm missing allergy/med fields | P4 | E | Open | | 20 | No corrections/supersession UI | P4 | E | Open | diff --git a/vigilcare-records-web/src/assets/main.css b/vigilcare-records-web/src/assets/main.css index 2e49b0b..512ee48 100644 --- a/vigilcare-records-web/src/assets/main.css +++ b/vigilcare-records-web/src/assets/main.css @@ -38,6 +38,12 @@ @apply grid grid-cols-1 lg:grid-cols-2 gap-4 lg:gap-8 h-auto lg:h-[calc(100vh-4rem)] min-h-0; } + .nav-link { + @apply text-sm text-gray-500 hover:text-gray-800 transition-colors; + } + .nav-link.router-link-active { + @apply text-gray-900 font-medium; + } .status-badge { @apply px-2 py-1 rounded-full text-xs font-medium; } diff --git a/vigilcare-records-web/src/components/AppHeader.vue b/vigilcare-records-web/src/components/AppHeader.vue index 180de55..39516fd 100644 --- a/vigilcare-records-web/src/components/AppHeader.vue +++ b/vigilcare-records-web/src/components/AppHeader.vue @@ -2,6 +2,14 @@

{{ title }}

+
diff --git a/vigilcare-records-web/src/components/EntryForm.vue b/vigilcare-records-web/src/components/EntryForm.vue index 7939114..324fa8e 100644 --- a/vigilcare-records-web/src/components/EntryForm.vue +++ b/vigilcare-records-web/src/components/EntryForm.vue @@ -60,6 +60,82 @@
+ +
+ Allergies + +
+
+ + +
+ +
+
+ + +
+ Medications + +
+
+ + +
+ +
+
+
Encounter Context @@ -98,6 +174,24 @@ class="form-input text-sm" />
+
+ + +
+
+ +