0d7d8a597e
- TenantService.create ruft nach prisma.tenant.create ensureDefaultGroup auf; Fehler werden protokolliert, nicht propagiert (Muster aus UserService.create) - tenant.module.ts importiert GroupsModule (keine Zirkularitaet, wie UserModule bereits vormacht) - AdminSeedService.onApplicationBootstrap besteht jetzt aus zwei sequenziellen await-Schritten: seedAdmin() (bisheriger Rumpf, plus ensureDefaultGroup nach dem Tenant-Upsert und VOR user.create), dann ensureDefaultGroupsForAllTenants() als abschliessende Reparatur ueber ALLE Mandanten — laeuft unabhaengig von seedAdmin()s fruehen Rueckkehrpfaden (fehlende ENV / Admin existiert bereits) und ist je Mandant sowie insgesamt try/catch-gekapselt, blockiert den API-Start nie - Reparatur sitzt bewusst NICHT als eigener onApplicationBootstrap-Hook in GroupsModule (Ordering-Falle aus tender-scheduler.service.ts) - tenant.service.spec.ts, admin-seed.service.spec.ts (neu): Reihenfolge, beide fruehen Rueckkehrpfade, Fehlerisolation je Mandant, Idempotenz ueber zwei Bootstrap-Laeufe
19 lines
626 B
TypeScript
19 lines
626 B
TypeScript
import { Module } from '@nestjs/common';
|
|
import { GroupsModule } from '../groups/groups.module';
|
|
import { TenantController } from './tenant.controller';
|
|
import { TenantService } from './tenant.service';
|
|
|
|
/**
|
|
* Importiert GroupsModule für TenantService.create's Standardgruppen-
|
|
* Anlage (D-06/D-13). GroupsModule importiert seinerseits nichts,
|
|
* deshalb entsteht keine Zirkularität — UserModule bindet GroupsModule
|
|
* bereits nach demselben Muster ein.
|
|
*/
|
|
@Module({
|
|
imports: [GroupsModule],
|
|
controllers: [TenantController],
|
|
providers: [TenantService],
|
|
exports: [TenantService],
|
|
})
|
|
export class TenantModule {}
|