MCPcopy
hub / github.com/msgbyte/tianji / getWorkspaceWebsitePageview

Function getWorkspaceWebsitePageview

src/server/model/website/index.ts:669–695  ·  view source on GitHub ↗
(
  websiteId: string,
  filters: WebsiteQueryFilters
)

Source from the content-addressed store, hash-verified

667}
668
669export async function getWorkspaceWebsitePageview(
670 websiteId: string,
671 filters: WebsiteQueryFilters
672) {
673 const { timezone = 'utc', unit = 'day' } = filters;
674 const { filterQuery, joinSession, params } = await parseWebsiteFilters(
675 websiteId,
676 {
677 ...filters,
678 }
679 );
680
681 return prisma.$queryRaw<{ x: string; y: number }[]>`
682 select
683 ${getDateQuery('"WebsiteEvent"."createdAt"', unit, timezone)} x,
684 count(1) y
685 from "WebsiteEvent"
686 ${joinSession}
687 where "WebsiteEvent"."websiteId" = ${params.websiteId}
688 and "WebsiteEvent"."createdAt" between ${
689 params.startDate
690 }::timestamptz and ${params.endDate}::timestamptz
691 and "WebsiteEvent"."eventType" = ${EVENT_TYPE.pageView}
692 ${filterQuery}
693 group by 1
694 `;
695}
696
697export async function getWorkspaceWebsiteSession(
698 websiteId: string,

Callers 2

getWebsitePublicStatsFunction · 0.85
website.tsFile · 0.85

Calls 2

parseWebsiteFiltersFunction · 0.85
getDateQueryFunction · 0.50

Tested by

no test coverage detected