Lieferanten-/IT-Service-Cockpit direkt auf der Asset-Seite öffnen
Statt beim Klick auf ein Lieferanten-/IT-Service-Asset zur Lieferanten-Seite zu wechseln, wird das Fach-Cockpit jetzt als Popup auf /assets gerendert; Schließen, Bearbeiten, Speichern und Löschen bleiben auf der Asset-Seite. - backHref-Prop an SupplierDetail/Edit- und ServiceDetail/Edit-Modal: alle Schließen-/Bearbeiten-/Abbrechen-Links leiten sich davon ab (Default /suppliers) - withQuery-Helper (lib/supplier) für korrekte ?/&-Verkettung - updateSupplier/updateService lesen returnTo (verstecktes Feld) und leiten dorthin zurück; deleteSupplier/deleteService bekommen returnTo-Parameter - Kind-Actions revalidieren zusätzlich /assets, damit das Popup dort aktuell bleibt - SUPPLIER_INCLUDE/SERVICE_INCLUDE in lib/supplier-include ausgelagert und von beiden Seiten genutzt - assets/page.tsx bestimmt die Popup-Art vorab (supplier/service/asset) und rendert das passende Cockpit mit backHref="/assets"; profillose Alt-Assets bleiben Assets Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -11,6 +11,15 @@ export function serviceRef(refNo: number): string {
|
||||
return `S-${String(refNo).padStart(3, "0")}`;
|
||||
}
|
||||
|
||||
/**
|
||||
* Hängt einen Query-Parameter an einen Basis-Pfad an und wählt automatisch
|
||||
* das richtige Trennzeichen (`?` oder `&`). Erlaubt, Detail-/Bearbeiten-Popups
|
||||
* sowohl auf /suppliers als auch auf /assets zu öffnen (backHref-Muster).
|
||||
*/
|
||||
export function withQuery(base: string, key: string, val: string): string {
|
||||
return `${base}${base.includes("?") ? "&" : "?"}${key}=${val}`;
|
||||
}
|
||||
|
||||
export const SUPPLIER_LIFECYCLE_TONE = {
|
||||
ACTIVE: "ok",
|
||||
ONBOARDING: "info",
|
||||
|
||||
Reference in New Issue
Block a user