added logbook

This commit is contained in:
PxlLoewe
2025-05-30 19:28:07 -07:00
parent 7822369126
commit eaedd78202
17 changed files with 372 additions and 128 deletions

View File

@@ -1,4 +1,4 @@
import { ConnectedAircraft, Mission, prisma } from "@repo/db";
import { ConnectedAircraft, getPublicUser, Mission, prisma, User } from "@repo/db";
import { io } from "index";
import { sendNtfyMission } from "modules/ntfy";
@@ -9,6 +9,7 @@ export const sendAlert = async (
}: {
stationId?: number;
},
user: User,
): Promise<{
connectedAircrafts: ConnectedAircraft[];
mission: Mission;
@@ -44,7 +45,6 @@ export const sendAlert = async (
});
for (const aircraft of connectedAircrafts) {
console.log(`Sending mission to: station:${aircraft.stationId}`);
io.to(`station:${aircraft.stationId}`).emit("mission-alert", {
...mission,
Stations,
@@ -54,21 +54,15 @@ export const sendAlert = async (
});
if (!user) continue;
if (user.settingsNtfyRoom) {
await sendNtfyMission(
mission,
Stations,
aircraft.Station,
user.settingsNtfyRoom,
);
await sendNtfyMission(mission, Stations, aircraft.Station, user.settingsNtfyRoom);
}
const existingMissionOnStationUser =
await prisma.missionOnStationUsers.findFirst({
where: {
missionId: mission.id,
userId: aircraft.userId,
stationId: aircraft.stationId,
},
});
const existingMissionOnStationUser = await prisma.missionOnStationUsers.findFirst({
where: {
missionId: mission.id,
userId: aircraft.userId,
stationId: aircraft.stationId,
},
});
if (!existingMissionOnStationUser)
await prisma.missionOnStationUsers.create({
data: {
@@ -95,6 +89,17 @@ export const sendAlert = async (
where: { id: Number(id) },
data: {
state: "running",
missionLog: {
push: {
type: "alert-log",
auto: false,
timeStamp: new Date().toISOString(),
data: {
stationId: stationId,
user: getPublicUser(user, { ignorePrivacy: true }),
},
} as any,
},
},
});
return { connectedAircrafts, mission };