Open the matching workspace tab after specialty stage advance.
Deploy Ladill Care / deploy (push) Successful in 45s

Stage Move CTAs and pills previously always redirected to overview; map each stage to its tab via shell config so examination lands on exam, etc.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
isaacclad
2026-07-19 16:21:43 +00:00
co-authored by Cursor
parent be7bd8f433
commit 2f724daf49
11 changed files with 111 additions and 8 deletions
+5 -1
View File
@@ -196,7 +196,11 @@ class CareBloodBankSuiteTest extends TestCase
->post(route('care.specialty.blood-bank.stage', $this->visit), [
'stage' => 'crossmatch',
])
->assertRedirect();
->assertRedirect(route('care.specialty.workspace', [
'module' => 'blood_bank',
'visit' => $this->visit,
'tab' => 'requests',
]));
$this->assertSame('crossmatch', $this->visit->fresh()->specialty_stage);
+5 -1
View File
@@ -311,7 +311,11 @@ class CareDentistrySuiteTest extends TestCase
->post(route('care.specialty.dentistry.stage', $this->visit), [
'stage' => 'chair',
])
->assertRedirect();
->assertRedirect(route('care.specialty.workspace', [
'module' => 'dentistry',
'visit' => $this->visit,
'tab' => 'odontogram',
]));
$this->assertSame('chair', $this->visit->fresh()->specialty_stage);
+5 -1
View File
@@ -182,7 +182,11 @@ class CareEmergencySuiteTest extends TestCase
->post(route('care.specialty.emergency.stage', $this->visit), [
'stage' => 'treatment',
])
->assertRedirect();
->assertRedirect(route('care.specialty.workspace', [
'module' => 'emergency',
'visit' => $this->visit,
'tab' => 'clinical_notes',
]));
$this->assertSame('treatment', $this->visit->fresh()->specialty_stage);
+5 -1
View File
@@ -180,7 +180,11 @@ class CareOphthalmologySuiteTest extends TestCase
->post(route('care.specialty.ophthalmology.stage', $this->visit), [
'stage' => 'treatment',
])
->assertRedirect();
->assertRedirect(route('care.specialty.workspace', [
'module' => 'ophthalmology',
'visit' => $this->visit,
'tab' => 'treat',
]));
$this->assertSame('treatment', $this->visit->fresh()->specialty_stage);
+6
View File
@@ -84,6 +84,12 @@ class CareSpecialtyShellTest extends TestCase
$stages = $shell->stages('emergency');
$this->assertSame('arrival', $stages[0]['code'] ?? null);
$this->assertGreaterThanOrEqual(4, count($stages));
$this->assertSame('triage', $shell->workspaceTabForStage('emergency', 'arrival'));
$this->assertSame('exam', $shell->workspaceTabForStage('ophthalmology', 'exam'));
$this->assertSame('investigations', $shell->workspaceTabForStage('ophthalmology', 'investigation'));
$this->assertSame('treat', $shell->workspaceTabForStage('ophthalmology', 'treatment'));
$this->assertSame('odontogram', $shell->workspaceTabForStage('dentistry', 'chair'));
$this->assertSame('issue', $shell->workspaceTabForStage('blood_bank', 'issue'));
}
public function test_specialty_shell_overview_and_sections_render(): void