Files
medreport_mrb2b/lib/services/audit/pageView.service.ts
Helena 8c6ce29c23 MED-147: add doctor actions logging (#59)
* MED-147: add doctor actions logging

* enum casing
2025-08-27 08:11:13 +03:00

43 lines
999 B
TypeScript

import { getSupabaseServerClient } from '@kit/supabase/server-client';
export enum PageViewAction {
VIEW_ANALYSIS_RESULTS = 'VIEW_ANALYSIS_RESULTS',
REGISTRATION_SUCCESS = 'REGISTRATION_SUCCESS',
VIEW_ORDER_ANALYSIS = 'VIEW_ORDER_ANALYSIS',
VIEW_TEAM_ACCOUNT_DASHBOARD = 'VIEW_TEAM_ACCOUNT_DASHBOARD',
}
export const createPageViewLog = async ({
accountId,
action,
}: {
accountId: string;
action: PageViewAction;
}) => {
try {
const supabase = getSupabaseServerClient();
const {
data: { user },
error: userError,
} = await supabase.auth.getUser();
if (userError || !user) {
console.error('No authenticated user found; skipping audit insert');
return;
}
await supabase
.schema('audit')
.from('page_views')
.insert({
account_id: accountId,
action,
changed_by: user.id,
})
.throwOnError();
} catch (error) {
console.error('Failed to insert page view log', error);
}
};