Refactor filter handling for queries.

This commit is contained in:
Mike Cao
2025-07-02 01:44:12 -07:00
parent 5b300f1ff5
commit ee6c68d27c
107 changed files with 731 additions and 835 deletions

View File

@@ -1,7 +1,8 @@
import clickhouse from '@/lib/clickhouse';
import { CLICKHOUSE, PRISMA, runQuery, notImplemented } from '@/lib/db';
import { QueryFilters } from '@/lib/types';
export function getEventDataUsage(...args: [websiteIds: string[], startDate: Date, endDate: Date]) {
export function getEventDataUsage(...args: [websiteIds: string[], filters: QueryFilters]) {
return runQuery({
[PRISMA]: notImplemented,
[CLICKHOUSE]: () => clickhouseQuery(...args),
@@ -10,10 +11,10 @@ export function getEventDataUsage(...args: [websiteIds: string[], startDate: Dat
function clickhouseQuery(
websiteIds: string[],
startDate: Date,
endDate: Date,
filters: QueryFilters,
): Promise<{ websiteId: string; count: number }[]> {
const { rawQuery } = clickhouse;
const { startDate, endDate } = filters;
return rawQuery(
`