Extract shared hard-delete authorization into reusable utility #9
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Context: Hard-delete authorization logic is copy-pasted across 4 services (vips, drivers, vehicles, events) with identical patterns. Additionally, query string boolean parsing (
hard === 'true') is duplicated in 5+ controllers.Files affected:
backend/src/vips/vips.service.ts(lines 61-80)backend/src/drivers/drivers.service.ts(lines 81-100)backend/src/vehicles/vehicles.service.ts(lines 92-111)backend/src/events/events.service.ts(lines 252-271)hard === 'true'parsingSuggested fix:
BaseServiceclass or shared utility withhardDeleteWithAuth(model, id, user)method@HardDelete()decorator/pipe for controllersParseBoolPipeor shared transform for query string booleansEffort: Small-Medium
Implemented shared hard-delete utility in and in . Updated all 4 services and controllers.