import { createError, getQuery, getRouterParam } from 'h3' import { requireAdminSession } from '../../../../../utils/admin-auth.js' import { getPostAnalyticsDetail } from '../../../../../repositories/analytics-repository.js' /** * 관리자 게시물별 통계 API * @param {import('h3').H3Event} event - 요청 이벤트 * @returns {Promise} 게시물별 통계 */ export default defineEventHandler(async (event) => { requireAdminSession(event) const id = getRouterParam(event, 'id') if (!id) { throw createError({ statusCode: 400, message: '게시물 ID가 필요합니다.' }) } const query = getQuery(event) const days = Number(query.days) || 30 const period = String(query.period || 'daily') return getPostAnalyticsDetail({ postId: id, days, period }) })