kcg-ai-monitoring/frontend/src/services/index.ts
htlee c17d190e1d feat: S5 프론트 나머지 화면 실데이터 전환 — 탐지/함정/단속계획
탐지 화면 3개:
- GearDetection: gearStore 더미 → fetchGroups() API (GEAR_IN/OUT_ZONE)
- DarkVesselDetection: vesselStore 더미 → fetchVesselAnalysis() + filterDarkVessels()
  - 패턴 자동 분류 (완전차단/장기소실/MMSI변조/간헐송출)
- ChinaFishing: inline 더미 → fetchVesselAnalysis() + mmsi 412* 필터
  - 센서 카운터 동적 계산, 위험도 분포 도넛 차트

함정/단속계획:
- patrol.ts: 스텁 → GET /api/patrol-ships 실제 호출
- patrolStore: API 기반 (routes/scenarios는 mock 유지)
- EnforcementPlan: GET /api/enforcement/plans 연결

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 12:46:08 +09:00

18 lines
808 B
TypeScript

export { apiGet, apiPost } from './api';
export { getVessels, getSuspects, getVesselDetail } from './vessel';
export { getEvents, getEventById, ackEvent, updateEventStatus, getEventStats } from './event';
export type { PredictionEvent, EventPageResponse, EventStats } from './event';
export { getEnforcementRecords, createEnforcementRecord, getEnforcementPlans } from './enforcement';
export type { EnforcementRecord, EnforcementPlan } from './enforcement';
export { getPatrolShips, updatePatrolShipStatus, toLegacyPatrolShip } from './patrol';
export type { PatrolShipApi } from './patrol';
export {
getKpiMetrics,
getMonthlyStats,
toKpiMetric,
toMonthlyTrend,
toViolationTypes,
} from './kpi';
export type { PredictionKpi, PredictionStatsMonthly } from './kpi';
export { connectWs } from './ws';