import { getCache, setCache } from "#server/utils/context"; import { listExecutions } from "../../service/scheduler"; export default defineWrappedResponseHandler(async (event) => { const query = getQuery(event); const page = query.page ? Number(query.page) : 1; const pageSize = query.pageSize ? Number(query.pageSize) : 20; const cacheKey = `scheduler:executions:${page}:${pageSize}:${query.taskId ?? 'all'}:${query.status ?? 'all'}` const cached = await getCache<{ list: unknown[], total: number, page: number, pageSize: number }>(cacheKey) if (cached) return R.success(cached) const result = await listExecutions({ page, pageSize, taskId: query.taskId as string | undefined, status: query.status as string | undefined, }); await setCache(cacheKey, result, 60) return R.success(result); });