In der Mitarbeiterliste nur die eigene Einheit zeigen, nicht den Bereich
Die Spalte fuehrte zwei Zeilen: den Bereich und darunter die Einheit der
Person. Beim Kunden heissen die Bereiche CEO, CFO, CSMO, CPO, COO, CHRO --
Rollenbezeichnungen, die ueber jedem Namen dasselbe wiederholten. Auf
seinen Wunsch bleibt nur die Einheit stehen; der ganze Weg von oben steht
weiterhin im title, denn eine Einheit wie "Shopleitung" sagt allein nicht,
welche gemeint ist.
Sortiert wird jetzt ebenfalls nach der Einheit. Bliebe der Bereich das
erste Kriterium, ordnete die Spalte nach einem Wert, den sie nicht mehr
anzeigt -- von aussen sieht das aus wie gar keine Sortierung. Der
rekursive Ausdruck aus 3e49be5 entfaellt damit; divisionOf bleibt in
Gebrauch, die Uebersicht gruppiert weiter nach Bereich.
This commit is contained in:
@@ -89,7 +89,7 @@ describe("SORTIERFELDER", () => {
|
||||
expect(SORTIERFELDER.map((f) => f.label)).toEqual([
|
||||
"Mitarbeiter:in",
|
||||
"Pers.-Nr.",
|
||||
"Bereich/Team",
|
||||
"Organisationseinheit",
|
||||
"Standort",
|
||||
"Eintritt",
|
||||
"Beschäftigung",
|
||||
@@ -191,25 +191,17 @@ describe("das erzeugte SQL", () => {
|
||||
}
|
||||
});
|
||||
|
||||
it("holt Bereich und Team über die laufende Besetzung", () => {
|
||||
const sql = ordnung("bereich", "asc");
|
||||
it("holt die Organisationseinheit über die laufende Besetzung", () => {
|
||||
const sql = ordnung("einheit", "asc");
|
||||
expect(sql).toContain("position_assignments");
|
||||
expect(sql).toContain("pa.valid_to is null");
|
||||
// Der Bereich ist die Ebene unter der Gesellschaft, nicht die Einheit
|
||||
// selbst — sonst stünde in der Spalte etwas anderes als sortiert wird.
|
||||
expect(sql).toContain("unit_type = 'Bereich'");
|
||||
expect(sql).toContain("org_units");
|
||||
|
||||
// Und über beliebig viele Ebenen, nicht über eine feste Zahl von
|
||||
// Sprüngen. Vorher standen hier zwei `left join`; bei sieben Ebenen lag
|
||||
// der Bereich für 317 von 784 Personen ausserhalb ihrer Reichweite, und
|
||||
// diese 317 rutschten ohne Bereich ans Listenende.
|
||||
expect(sql).toContain("with recursive");
|
||||
expect(sql).toContain("join org_units o on o.id = k.parent_id");
|
||||
|
||||
// Der Aufstieg hält beim ersten Bereich an. Ohne das Anhalten liefe er
|
||||
// bis zur obersten Einheit weiter, und bei fast allen stünde „CEO".
|
||||
expect(sql).toContain("k.unit_type <> 'Bereich'");
|
||||
expect(sql).toContain("order by tiefe limit 1");
|
||||
// Sortiert wird nach der Einheit selbst, nicht nach dem Bereich darüber:
|
||||
// die Spalte zeigt seit 22.09.2026 nur noch die Einheit, und eine
|
||||
// Sortierung nach einem Wert, der nirgends steht, sieht von aussen aus
|
||||
// wie gar keine Sortierung.
|
||||
expect(sql).not.toContain("unit_type");
|
||||
});
|
||||
|
||||
it("sortiert den Standort nach seinem Namen, nicht nach seiner Kennung", () => {
|
||||
|
||||
Reference in New Issue
Block a user