async getAllDistinctEmailNotificationsByUserId(userId: string, needSendTypes: any[]) {
if (needSendTypes && needSendTypes.length > 0) {
return await this.manager
.query(`SELECT
DISTINCT "notification"."following_user_id","notification"."target_user_id",
"notification"."type","user"."id","user"."email","user"."first_name",
"user"."last_name","user"."avatar_url","post"."id,"notification".mail_sent"
FROM "message_notification" "notification" LEFT JOIN
"user" "user" ON "user"."id"="notification"."user_id" LEFT JOIN "post" "post"
ON "post"."id"="notification"."post_id" WHERE notification.mail_sent = 'false'
AND notification.target_user_id = '${userId}'
AND extract(day FROM (age(now() , notification.created_at))) <= 1
AND "notification"."type" in (${needSendTypes})`);
}
return null;
// andWhere(`date_part('day',now()- "comment".created_at) <= 30`).
}