feat(admin): archive users and their profiles permanently
All checks were successful
Build and Release FEDEO / verify (push) Successful in 1m5s
Build and Release FEDEO / build-and-release (push) Successful in 6m53s

This commit is contained in:
2026-10-15 14:22:12 +02:00
parent 5dc9e686fc
commit 4ffafef3f1
26 changed files with 519 additions and 75 deletions

View File

@@ -1,5 +1,5 @@
import { FastifyInstance } from "fastify";
import { eq, and } from "drizzle-orm";
import { eq, and, isNull } from "drizzle-orm";
import {
authProfiles,
@@ -57,7 +57,7 @@ export default async function authProfilesRoutes(server: FastifyInstance) {
const forbidden = [
"id", "user_id", "tenant_id", "created_at", "updated_at",
"updatedAt", "updatedBy", "old_profile_id", "full_name",
"branch", "calendar_subscription_token",
"branch", "archived_at", "calendar_subscription_token",
"calendar_subscription_path", "calendar_subscription_url"
]
forbidden.forEach(f => delete cleaned[f])
@@ -135,7 +135,8 @@ export default async function authProfilesRoutes(server: FastifyInstance) {
.where(
and(
eq(authProfiles.id, id),
eq(authProfiles.tenant_id, tenantId)
eq(authProfiles.tenant_id, tenantId),
isNull(authProfiles.archived_at)
)
)
.returning()