improvement: QRcode and shared link added to cases inorder to make it possible for staff users to share a case info with other staffs or other clinics.
This commit is contained in:
18
.cursor/rules/lab-case-share-link.mdc
Normal file
18
.cursor/rules/lab-case-share-link.mdc
Normal file
@@ -0,0 +1,18 @@
|
||||
---
|
||||
description: Lab case QR share link — token, access API, focus page, auth redirect
|
||||
globs: frontend/src/app/**/lab-case/**,frontend/src/components/ui/lab/CaseTasksFocusView.tsx,frontend/src/components/ui/lab/LabCaseShareQr*.tsx,frontend/src/lib/api/lab-case-access.ts,frontend/src/lib/auth/postAuthRedirect.ts,frontend/src/app/**/login/page.tsx,backend/src/modules/cases/lab-case-access.*,backend/src/common/lab-case-access-token.ts
|
||||
alwaysApply: false
|
||||
---
|
||||
|
||||
# Lab case share link
|
||||
|
||||
- **Token:** `LabCase.accessToken` on first ship; `shareUrl` on case detail only when sent.
|
||||
- **QR:** client-side `react-qr-code` in frontend — ❌ no backend QR endpoint.
|
||||
- **Cases panel:** attachment preview left, QR thumb right, one row; dialog for QR + copy link.
|
||||
- **Route:** `/lab-case/[token]` → `CaseTasksFocusView` (dashboard layout, auth required).
|
||||
- **Access:** lab (`TAB_TASKS_*`) or clinic treatment **provider** (`TAB_TREATMENT_EDIT` + `isActorTreatmentProvider`); else `LAB_CASE_ACCESS_DENIED`.
|
||||
- **Task status on link page:** same assignee rule as Tasks — `canEditLabTaskStatus`; backend `PATCH /tasks/:id` enforces assignee.
|
||||
- **Auth redirect:** `postAuthRedirect.ts`; dashboard stores path on logout redirect; login consumes **once** after org ready — ❌ do not consume in `useAuth.login()`.
|
||||
- **Login page:** wrap `useSearchParams` in `<Suspense>` for `next build`.
|
||||
|
||||
Skill: `.cursor/skills/lab-case-share-link/SKILL.md`
|
||||
Reference in New Issue
Block a user