feat(260925-bow): neue Benutzer bekommen die laufende Version eingetragen

- UserService.create (Admin-Anlage, beide LDAP-Wege) und AdminSeedService
  setzen lastSeenReleaseVersion = getRunningRelease(), null auf dev

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-25 08:50:06 +02:00
parent 25c8db746a
commit 5ae9aaa0d6
2 changed files with 15 additions and 0 deletions
+10
View File
@@ -2,6 +2,7 @@ import { ConflictException, Injectable, Logger } from '@nestjs/common';
import * as argon2 from 'argon2';
import type { User } from '@prisma/client';
import { GroupsService } from '../groups/groups.service';
import { getRunningRelease } from '../health/app-version';
import { forTenant } from '../prisma/prisma-tenant.extension';
import { prismaErrorCode } from '../prisma/prisma-error';
import { PrismaService } from '../prisma/prisma.service';
@@ -140,6 +141,14 @@ export class UserService {
* endet damit bei JEDEM Aufrufer an dieser einen Stelle. Die Meldung
* nennt WEDER den Halter NOCH dessen Mandanten, weil das sonst eine
* Aussage ueber einen fremden Mandanten waere (T-DAS-08).
*
* "Was ist neu"-Fenster (quick-260925-bow, D-04): neue Benutzer (Admin-
* Anlage, AD-Abgleich und AD-Import) bekommen hier die laufende
* freigegebene Version (`getRunningRelease()`) als
* `lastSeenReleaseVersion` eingetragen, damit sie kein Fenster mit
* Aenderungen aus der Zeit vor ihrem Konto sehen; auf Staenden ohne
* freigegebene Version (`dev`) `null`. Der Wert ist eine Eigenschaft des
* Servers, kein Parameter dieser Methode.
*/
async create(data: {
username: string;
@@ -164,6 +173,7 @@ export class UserService {
...rest,
username: rest.username.toLowerCase(),
passwordHash: password ? await argon2.hash(password) : null,
lastSeenReleaseVersion: getRunningRelease(),
},
});
} catch (err: unknown) {