added more restrictions to mission cleanup
This commit is contained in:
@@ -13,10 +13,24 @@ const removeClosedMissions = async () => {
|
|||||||
});
|
});
|
||||||
const lastAlertTime = lastAlert ? new Date(lastAlert.timeStamp) : null;
|
const lastAlertTime = lastAlert ? new Date(lastAlert.timeStamp) : null;
|
||||||
|
|
||||||
|
const aircraftsInMission = await prisma.connectedAircraft.findMany({
|
||||||
|
where: {
|
||||||
|
stationId: {
|
||||||
|
in: mission.missionStationIds,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
if (
|
||||||
|
!aircraftsInMission ||
|
||||||
|
!aircraftsInMission.some((a) => ["1", "2", "6"].includes(a.fmsStatus))
|
||||||
|
)
|
||||||
|
return;
|
||||||
|
|
||||||
const now = new Date();
|
const now = new Date();
|
||||||
if (!lastAlertTime) return;
|
if (!lastAlertTime) return;
|
||||||
// change State to closed if last alert was more than 180 minutes ago
|
// change State to closed if last alert was more than 180 minutes ago
|
||||||
if (lastAlertTime && now.getTime() - lastAlertTime.getTime() > 180 * 60 * 1000) {
|
if (now.getTime() - lastAlertTime.getTime() < 30 * 60 * 1000) return;
|
||||||
const log: MissionLog = {
|
const log: MissionLog = {
|
||||||
type: "completed-log",
|
type: "completed-log",
|
||||||
auto: true,
|
auto: true,
|
||||||
@@ -36,7 +50,6 @@ const removeClosedMissions = async () => {
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
console.log(`Mission ${mission.id} closed due to inactivity.`);
|
console.log(`Mission ${mission.id} closed due to inactivity.`);
|
||||||
}
|
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user