Add Care Units, beds, and dated staff assignments.
Deploy Ladill Care / deploy (push) Successful in 1m8s

Models employment as department/unit/shift placements with primary and temporary kinds so nurses are not permanently bound to a ward.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
isaacclad
2026-07-20 10:04:39 +00:00
co-authored by Cursor
parent 56a663a777
commit 3735be3425
21 changed files with 1595 additions and 0 deletions
+21
View File
@@ -12,6 +12,9 @@ use App\Http\Controllers\Care\BranchController;
use App\Http\Controllers\Care\ConsultationController;
use App\Http\Controllers\Care\DashboardController;
use App\Http\Controllers\Care\DepartmentController;
use App\Http\Controllers\Care\CareUnitController;
use App\Http\Controllers\Care\BedController;
use App\Http\Controllers\Care\StaffAssignmentController;
use App\Http\Controllers\Care\DeviceController;
use App\Http\Controllers\Care\DisplayPublicController;
use App\Http\Controllers\Care\DisplayScreenController;
@@ -415,6 +418,24 @@ Route::middleware(['auth', 'platform.session'])->group(function () {
Route::put('/departments/{department}', [DepartmentController::class, 'update'])->name('care.departments.update');
Route::delete('/departments/{department}', [DepartmentController::class, 'destroy'])->name('care.departments.destroy');
Route::get('/care-units', [CareUnitController::class, 'index'])->name('care.care-units.index');
Route::get('/care-units/create', [CareUnitController::class, 'create'])->name('care.care-units.create');
Route::post('/care-units', [CareUnitController::class, 'store'])->name('care.care-units.store');
Route::get('/care-units/{careUnit}', [CareUnitController::class, 'show'])->name('care.care-units.show');
Route::get('/care-units/{careUnit}/edit', [CareUnitController::class, 'edit'])->name('care.care-units.edit');
Route::put('/care-units/{careUnit}', [CareUnitController::class, 'update'])->name('care.care-units.update');
Route::delete('/care-units/{careUnit}', [CareUnitController::class, 'destroy'])->name('care.care-units.destroy');
Route::post('/care-units/{careUnit}/beds', [BedController::class, 'store'])->name('care.care-units.beds.store');
Route::put('/care-units/{careUnit}/beds/{bed}', [BedController::class, 'update'])->name('care.care-units.beds.update');
Route::delete('/care-units/{careUnit}/beds/{bed}', [BedController::class, 'destroy'])->name('care.care-units.beds.destroy');
Route::get('/staff-assignments', [StaffAssignmentController::class, 'index'])->name('care.staff-assignments.index');
Route::get('/staff-assignments/create', [StaffAssignmentController::class, 'create'])->name('care.staff-assignments.create');
Route::post('/staff-assignments', [StaffAssignmentController::class, 'store'])->name('care.staff-assignments.store');
Route::get('/staff-assignments/{staffAssignment}/edit', [StaffAssignmentController::class, 'edit'])->name('care.staff-assignments.edit');
Route::put('/staff-assignments/{staffAssignment}', [StaffAssignmentController::class, 'update'])->name('care.staff-assignments.update');
Route::delete('/staff-assignments/{staffAssignment}', [StaffAssignmentController::class, 'destroy'])->name('care.staff-assignments.destroy');
Route::get('/practitioners', [PractitionerController::class, 'index'])->name('care.practitioners.index');
Route::get('/practitioners/create', [PractitionerController::class, 'create'])->name('care.practitioners.create');
Route::post('/practitioners', [PractitionerController::class, 'store'])->name('care.practitioners.store');