Files
medreport_mrb2b/app/api/job/handler/send-open-jobs-emails.ts
2025-11-12 11:50:01 +02:00

34 lines
926 B
TypeScript

import { renderNewJobsAvailableEmail } from '@kit/email-templates';
import { getDoctorAccounts } from '~/lib/services/account.service';
import { getOpenJobAnalysisResponseIds } from '~/lib/services/doctor-jobs.service';
import { sendEmailFromTemplate } from '~/lib/services/mailer.service';
export default async function sendOpenJobsEmails() {
const analysisResponseIds = await getOpenJobAnalysisResponseIds();
if (analysisResponseIds.length === 0) {
return;
}
const doctorAccounts = await getDoctorAccounts();
const doctorEmails = doctorAccounts
.map(({ email }) => email)
.filter((email): email is string => !!email);
if (doctorEmails.length === 0) {
return [];
}
await sendEmailFromTemplate(
renderNewJobsAvailableEmail,
{
language: 'et',
analysisResponseIds,
},
doctorEmails,
);
return doctorAccounts.filter((email) => !!email).map(({ id }) => id);
}