Changed checkup email logic.
This commit is contained in:
@@ -2,7 +2,6 @@
|
||||
const db = require("../../models/index");
|
||||
const sequelize = require("sequelize");
|
||||
const Op = sequelize.Op;
|
||||
const { CHECK_UP_DAYS } = require("../../config/appConfig");
|
||||
|
||||
const findRealEstatesForSearchRequest = async searchRequestId => {
|
||||
const query = {
|
||||
@@ -43,42 +42,6 @@ const findNotNotifiedMatches = async () => {
|
||||
|
||||
return matchingRecords;
|
||||
};
|
||||
const findAllRequestsForCheckUp = async () => {
|
||||
//First we find IDs of search request that don't need to be emailed for check up - to EXCLUDE
|
||||
//The ones that received notification for real estate CHECK_UP_DAYS days from now
|
||||
const date = new Date();
|
||||
const checkUpDate = date.getDate() - CHECK_UP_DAYS;
|
||||
date.setDate(checkUpDate);
|
||||
const dateQuery = {
|
||||
createdAt: {
|
||||
[Op.gte]: date
|
||||
}
|
||||
};
|
||||
|
||||
const excludedMatches = await db.SearchRequestMatch.findAll({
|
||||
attributes: ["searchRequestId"],
|
||||
where: dateQuery,
|
||||
order: [["searchRequestId", "ASC"]]
|
||||
});
|
||||
|
||||
const excludedRequestsAll = excludedMatches.map(match => {
|
||||
return match.dataValues.searchRequestId;
|
||||
});
|
||||
//Removing duplicate search request id-s for optimization
|
||||
const excludedRequests = [...new Set(excludedRequestsAll)];
|
||||
|
||||
const query = {
|
||||
subscribed: true,
|
||||
id: {
|
||||
[Op.notIn]: excludedRequests
|
||||
}
|
||||
};
|
||||
const allRequestsForCheckUp = await db.SearchRequest.findAll({
|
||||
where: query
|
||||
});
|
||||
|
||||
return allRequestsForCheckUp;
|
||||
};
|
||||
|
||||
const addMatches = async matchingRecords => {
|
||||
return await db.SearchRequestMatch.bulkCreate(matchingRecords, {
|
||||
@@ -89,6 +52,5 @@ const addMatches = async matchingRecords => {
|
||||
module.exports = {
|
||||
findRealEstatesForSearchRequest,
|
||||
addMatches,
|
||||
findNotNotifiedMatches,
|
||||
findAllRequestsForCheckUp
|
||||
findNotNotifiedMatches
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user