feat: Marktchancen — Netzwerk-Hinweise tab (human-sourced market intel)
- MarktHinweis domain type: SUCHE/VERFUEGBARKEIT direction, INTERN/PLATTFORM visibility, anonymization flag, source tracking - Full data layer: IMarktHinweisProvider, MockupMarktHinweisProvider, service, hooks - 7 seed entries: mix of intern/shared, demand/supply, own/partner Verwaltungen - Marktchancen gets two-tab layout: Digitale Signale (crawler) + Netzwerk (human) - HinweisListItem: direction icon, visibility badge (Intern/Geteilt/partner name) - HinweisDetail: note card, portfolio match (SUCHE) or availability info (VERFUEGBARKEIT) - HinweisErfassenDialog: direction toggle, asset type, location, area range, company + anonymize switch, source, note, card-based visibility picker - HinweisPropertyCard: same Anschreiben composer pattern as crawler side Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
import type { AssetType } from './enums'
|
||||
|
||||
export type HinweisVisibility = 'INTERN' | 'PLATTFORM'
|
||||
export type HinweisDirection = 'SUCHE' | 'VERFUEGBARKEIT'
|
||||
export type HinweisStatus = 'OFFEN' | 'IN_BEARBEITUNG' | 'ARCHIVIERT'
|
||||
export type HinweisQuelle = 'NETZWERKEVENT' | 'TELEFONAT' | 'BESICHTIGUNG' | 'MESSE' | 'EMAIL' | 'SONSTIGES'
|
||||
|
||||
export interface MarktHinweis {
|
||||
id: string
|
||||
createdAt: string
|
||||
createdBy: string
|
||||
verwaltungId: string
|
||||
verwaltungName: string
|
||||
direction: HinweisDirection
|
||||
assetType: AssetType
|
||||
locationHint: string
|
||||
areaSqmMin?: number
|
||||
areaSqmMax?: number
|
||||
companyName?: string
|
||||
isAnonymized: boolean
|
||||
quelle: HinweisQuelle
|
||||
note?: string
|
||||
visibility: HinweisVisibility
|
||||
status: HinweisStatus
|
||||
}
|
||||
|
||||
export type CreateMarktHinweisInput = Omit<MarktHinweis, 'id' | 'createdAt' | 'createdBy' | 'verwaltungId' | 'verwaltungName'>
|
||||
Reference in New Issue
Block a user