fix(demand): new search profile inherits creator's organizationId

A newly created need (from "Jetzt suchen") had no organizationId, so it fell out of the org-filtered need list — the results "Aktive Suche" banner then showed a different (first saved) profile while the result cards already reflected the new search. needService.create now injects the current user's org, so banner and results stay consistent.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Benjamin Sutter
2026-06-21 00:57:14 +02:00
parent 8cb6f21581
commit 6206447dae
+5 -1
View File
@@ -3,6 +3,7 @@ import type { NeedFilters } from '../provider/INeedProvider'
import type { Need, CreateNeedInput, UpdateNeedInput } from '../domain/need' import type { Need, CreateNeedInput, UpdateNeedInput } from '../domain/need'
import type { ListResponse, ItemResponse } from './types' import type { ListResponse, ItemResponse } from './types'
import { throwServiceError } from './errors' import { throwServiceError } from './errors'
import { useSessionStore } from '../stores/sessionStore'
const provider = MockupNeedProvider const provider = MockupNeedProvider
@@ -25,7 +26,10 @@ export const needService = {
}, },
async create(input: CreateNeedInput): Promise<ItemResponse<Need>> { async create(input: CreateNeedInput): Promise<ItemResponse<Need>> {
try { try {
const data = await provider.create(input) // Neues Suchprofil der Organisation des Erstellers zuordnen (sonst fällt es aus der
// org-gefilterten Liste — Aktive-Suche-Leiste zeigt sonst ein fremdes Profil)
const orgId = useSessionStore.getState().currentUser?.organizationId
const data = await provider.create({ ...input, organizationId: input.organizationId ?? orgId })
return { data } return { data }
} catch (err) { } catch (err) {
throwServiceError(err) throwServiceError(err)