34 lines
905 B
TypeScript
34 lines
905 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);
|
|
|
|
if (doctorEmails !== null) {
|
|
return [];
|
|
}
|
|
|
|
await sendEmailFromTemplate(
|
|
renderNewJobsAvailableEmail,
|
|
{
|
|
language: 'et',
|
|
analysisResponseIds,
|
|
},
|
|
doctorEmails,
|
|
);
|
|
|
|
return doctorAccounts.filter((email) => !!email).map(({ id }) => id);
|
|
}
|