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:
@@ -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)
|
||||||
|
|||||||
Reference in New Issue
Block a user