From b9e871ae013885e3b0839a8431da585facd45d5c Mon Sep 17 00:00:00 2001 From: PxlLoewe <72106766+PxlLoewe@users.noreply.github.com> Date: Thu, 27 Nov 2025 22:21:27 +0100 Subject: [PATCH] Dispo-Option, die HPG validierung nicht zu nutzen --- apps/dispatch-server/routes/settings.ts | 0 .../navbar/_components/Settings.tsx | 29 +++++++++++++++--- .../_components/pannel/MissionForm.tsx | 12 ++++++-- .../navbar/_components/Settings.tsx | 12 ++++++-- apps/dispatch/app/(app)/pilot/page.tsx | 2 +- apps/dispatch/app/(auth)/logout/page.tsx | 2 +- .../app/_components/QueryProvider.tsx | 19 +++++++++++- .../customToasts/HPGnotValidated.tsx | 24 +++++++++++++++ apps/dispatch/app/_querys/dispatcher.ts | 11 ++++--- .../app/_store/pilot/connectionStore.ts | 7 +++++ apps/dispatch/app/api/dispatcher/route.ts | 1 + .../_components/ConnectedDispatcher.tsx | 9 ++++++ apps/dispatch/public/sounds/notification.mp3 | Bin 0 -> 76068 bytes apps/hub/app/(auth)/logout/page.tsx | 26 ++++++++-------- .../migration.sql | 2 ++ .../migration.sql | 2 ++ packages/database/prisma/schema/user.prisma | 19 ++++++------ 17 files changed, 138 insertions(+), 39 deletions(-) create mode 100644 apps/dispatch-server/routes/settings.ts create mode 100644 apps/dispatch/app/_components/customToasts/HPGnotValidated.tsx create mode 100644 apps/dispatch/public/sounds/notification.mp3 create mode 100644 packages/database/prisma/schema/migrations/20251118221802_hpg_settings_as_dispatcher/migration.sql create mode 100644 packages/database/prisma/schema/migrations/20251118222421_rename_hpg_settings/migration.sql diff --git a/apps/dispatch-server/routes/settings.ts b/apps/dispatch-server/routes/settings.ts new file mode 100644 index 00000000..e69de29b diff --git a/apps/dispatch/app/(app)/dispatch/_components/navbar/_components/Settings.tsx b/apps/dispatch/app/(app)/dispatch/_components/navbar/_components/Settings.tsx index c83288b8..d2a7402d 100644 --- a/apps/dispatch/app/(app)/dispatch/_components/navbar/_components/Settings.tsx +++ b/apps/dispatch/app/(app)/dispatch/_components/navbar/_components/Settings.tsx @@ -3,16 +3,17 @@ import { useEffect, useRef, useState } from "react"; import { GearIcon } from "@radix-ui/react-icons"; import { SettingsIcon, Volume2 } from "lucide-react"; import MicVolumeBar from "_components/MicVolumeIndication"; -import { useMutation, useQuery } from "@tanstack/react-query"; +import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query"; import { editUserAPI, getUserAPI } from "_querys/user"; import { useSession } from "next-auth/react"; import { useAudioStore } from "_store/audioStore"; import toast from "react-hot-toast"; import { useMapStore } from "_store/mapStore"; -import { set } from "date-fns"; +import { Button } from "@repo/shared-components"; export const SettingsBtn = () => { const session = useSession(); + const queryClient = useQueryClient(); const [inputDevices, setInputDevices] = useState([]); const { data: user } = useQuery({ @@ -23,6 +24,10 @@ export const SettingsBtn = () => { const editUserMutation = useMutation({ mutationFn: editUserAPI, + onSuccess: async () => { + await queryClient.invalidateQueries({ queryKey: ["user", session.data?.user.id] }); + }, + }); useEffect(() => { @@ -40,6 +45,7 @@ export const SettingsBtn = () => { micVolume: user?.settingsMicVolume || 1, radioVolume: user?.settingsRadioVolume || 0.8, autoCloseMapPopup: user?.settingsAutoCloseMapPopup || false, + useHPGAsDispatcher: user?.settingsUseHPGAsDispatcher || false, }); const { setSettings: setAudioSettings } = useAudioStore((state) => state); @@ -57,7 +63,8 @@ export const SettingsBtn = () => { micDeviceId: user.settingsMicDevice, micVolume: user.settingsMicVolume || 1, radioVolume: user.settingsRadioVolume || 0.8, - autoCloseMapPopup: user.settingsAutoCloseMapPopup || false, + autoCloseMapPopup: user.settingsAutoCloseMapPopup, + useHPGAsDispatcher: user.settingsUseHPGAsDispatcher, }); setUserSettings({ settingsAutoCloseMapPopup: user.settingsAutoCloseMapPopup || false, @@ -198,6 +205,17 @@ export const SettingsBtn = () => { /> Popups automatisch schließen +
+ { + setSettingsPartial({ useHPGAsDispatcher: e.target.checked }); + }} + /> + HPG als Disponent verwenden +
- +
diff --git a/apps/dispatch/app/(app)/dispatch/_components/pannel/MissionForm.tsx b/apps/dispatch/app/(app)/dispatch/_components/pannel/MissionForm.tsx index af1d8738..49279607 100644 --- a/apps/dispatch/app/(app)/dispatch/_components/pannel/MissionForm.tsx +++ b/apps/dispatch/app/(app)/dispatch/_components/pannel/MissionForm.tsx @@ -28,8 +28,11 @@ import { selectRandomHPGMissionSzenery } from "_helpers/selectRandomHPGMission"; import { AxiosError } from "axios"; import { cn } from "@repo/shared-components"; import { StationsSelect } from "(app)/dispatch/_components/StationSelect"; +import { getUserAPI } from "_querys/user"; export const MissionForm = () => { + const session = useSession(); + const { editingMissionId, setEditingMission } = usePannelStore(); const queryClient = useQueryClient(); const { setSearchElements, searchElements, setContextMenu } = useMapStore((s) => s); @@ -44,6 +47,10 @@ export const MissionForm = () => { queryFn: () => getConnectedAircraftsAPI(), refetchInterval: 10000, }); + const { data: user } = useQuery({ + queryKey: ["user", session.data?.user.id], + queryFn: () => getUserAPI(session.data!.user.id), + }); const createMissionMutation = useMutation({ mutationFn: createMissionAPI, @@ -81,7 +88,6 @@ export const MissionForm = () => { }, }); - const session = useSession(); const defaultFormValues = React.useMemo( () => ({ @@ -124,7 +130,9 @@ export const MissionForm = () => { form.watch("missionStationIds"), aircrafts, form.watch("hpgMissionString"), - ) && !form.watch("hpgMissionString")?.startsWith("kein Szenario"); + ) && + !form.watch("hpgMissionString")?.startsWith("kein Szenario") && + user?.settingsUseHPGAsDispatcher; useEffect(() => { if (session.data?.user.id) { diff --git a/apps/dispatch/app/(app)/pilot/_components/navbar/_components/Settings.tsx b/apps/dispatch/app/(app)/pilot/_components/navbar/_components/Settings.tsx index 9d1f23d8..d2d7ffd7 100644 --- a/apps/dispatch/app/(app)/pilot/_components/navbar/_components/Settings.tsx +++ b/apps/dispatch/app/(app)/pilot/_components/navbar/_components/Settings.tsx @@ -3,15 +3,17 @@ import { useEffect, useRef, useState } from "react"; import { GearIcon } from "@radix-ui/react-icons"; import { Bell, SettingsIcon, Volume2 } from "lucide-react"; import MicVolumeBar from "_components/MicVolumeIndication"; -import { useMutation, useQuery } from "@tanstack/react-query"; +import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query"; import { editUserAPI, getUserAPI } from "_querys/user"; import { useSession } from "next-auth/react"; import { useAudioStore } from "_store/audioStore"; import toast from "react-hot-toast"; import Link from "next/link"; +import { Button } from "@repo/shared-components"; export const SettingsBtn = () => { const session = useSession(); + const queryClient = useQueryClient(); const [inputDevices, setInputDevices] = useState([]); const { data: user } = useQuery({ @@ -22,6 +24,10 @@ export const SettingsBtn = () => { const editUserMutation = useMutation({ mutationFn: editUserAPI, + mutationKey: ["user", session.data?.user.id], + onSuccess: async () => { + await queryClient.invalidateQueries({ queryKey: ["user", session.data?.user.id] }); + }, }); useEffect(() => { @@ -248,7 +254,7 @@ export const SettingsBtn = () => { > Schließen - + diff --git a/apps/dispatch/app/(app)/pilot/page.tsx b/apps/dispatch/app/(app)/pilot/page.tsx index 87322e21..5ec04be4 100644 --- a/apps/dispatch/app/(app)/pilot/page.tsx +++ b/apps/dispatch/app/(app)/pilot/page.tsx @@ -23,7 +23,7 @@ const Map = dynamic(() => import("_components/map/Map"), { }); const PilotPage = () => { - const { connectedAircraft, status } = usePilotConnectionStore((state) => state); + const { connectedAircraft, status, } = usePilotConnectionStore((state) => state); const { latestMission } = useDmeStore((state) => state); // Query will be cached anyway, due to this, displayed Markers are in sync with own Aircraft connection-warning const { data: aircrafts } = useQuery({ diff --git a/apps/dispatch/app/(auth)/logout/page.tsx b/apps/dispatch/app/(auth)/logout/page.tsx index 8090a370..5732aff0 100644 --- a/apps/dispatch/app/(auth)/logout/page.tsx +++ b/apps/dispatch/app/(auth)/logout/page.tsx @@ -10,7 +10,7 @@ export default () => { }, []); return (
-

logging out...

+

ausloggen...

); }; diff --git a/apps/dispatch/app/_components/QueryProvider.tsx b/apps/dispatch/app/_components/QueryProvider.tsx index 41bb2ce1..d5b2799a 100644 --- a/apps/dispatch/app/_components/QueryProvider.tsx +++ b/apps/dispatch/app/_components/QueryProvider.tsx @@ -3,7 +3,7 @@ import { toast } from "react-hot-toast"; import { QueryClient, QueryClientProvider } from "@tanstack/react-query"; -import { ReactNode, useEffect, useState } from "react"; +import { ReactNode, useEffect, useRef, useState } from "react"; import { dispatchSocket } from "(app)/dispatch/socket"; import { NotificationPayload } from "@repo/db"; import { HPGnotificationToast } from "_components/customToasts/HPGnotification"; @@ -15,6 +15,7 @@ import { MissionAutoCloseToast } from "_components/customToasts/MissionAutoClose export function QueryProvider({ children }: { children: ReactNode }) { const mapStore = useMapStore((s) => s); + const notificationSound = useRef(null); const [queryClient] = useState( () => @@ -30,6 +31,9 @@ export function QueryProvider({ children }: { children: ReactNode }) { }, }), ); + useEffect(() => { + notificationSound.current = new Audio("/sounds/notification.mp3"); + }, []); useEffect(() => { const invalidateMission = () => { queryClient.invalidateQueries({ @@ -59,8 +63,18 @@ export function QueryProvider({ children }: { children: ReactNode }) { }; const handleNotification = (notification: NotificationPayload) => { + const playNotificationSound = () => { + if (notificationSound.current) { + notificationSound.current.currentTime = 0; + notificationSound.current + .play() + .catch((e) => console.error("Notification sound error:", e)); + } + } + switch (notification.type) { case "hpg-validation": + playNotificationSound(); toast.custom( (t) => , { @@ -70,6 +84,7 @@ export function QueryProvider({ children }: { children: ReactNode }) { break; case "admin-message": + playNotificationSound(); toast.custom((t) => , { duration: 999999, }); @@ -81,6 +96,7 @@ export function QueryProvider({ children }: { children: ReactNode }) { }); break; case "mission-auto-close": + playNotificationSound(); toast.custom( (t) => , { @@ -90,6 +106,7 @@ export function QueryProvider({ children }: { children: ReactNode }) { break; case "mission-closed": toast("Dein aktueller Einsatz wurde geschlossen."); + break; default: toast("unbekanntes Notification-Event"); diff --git a/apps/dispatch/app/_components/customToasts/HPGnotValidated.tsx b/apps/dispatch/app/_components/customToasts/HPGnotValidated.tsx new file mode 100644 index 00000000..4b6e6e4e --- /dev/null +++ b/apps/dispatch/app/_components/customToasts/HPGnotValidated.tsx @@ -0,0 +1,24 @@ +import { BaseNotification } from "_components/customToasts/BaseNotification" +import { TriangleAlert } from "lucide-react" +import toast, { Toast } from "react-hot-toast" + + +export const HPGnotValidatedToast = ({_toast}: {_toast: Toast}) => { + return } className="flex flex-row"> +
+

Einsatz nicht HPG-validiert

+

Vergleiche die Position des Einsatzes mit der HPG-Position in Hubschrauber

+
+
+ +
+
+} + +export const showToast = () => { + toast.custom((t) => { + return (); + }, {duration: 1000 * 60 * 10}); // 10 minutes +} \ No newline at end of file diff --git a/apps/dispatch/app/_querys/dispatcher.ts b/apps/dispatch/app/_querys/dispatcher.ts index fda3ed36..16ae94e0 100644 --- a/apps/dispatch/app/_querys/dispatcher.ts +++ b/apps/dispatch/app/_querys/dispatcher.ts @@ -14,11 +14,14 @@ export const changeDispatcherAPI = async ( }; export const getConnectedDispatcherAPI = async (filter?: Prisma.ConnectedDispatcherWhereInput) => { - const res = await axios.get("/api/dispatcher", { - params: { - filter: JSON.stringify(filter), + const res = await axios.get<(ConnectedDispatcher & { settingsUseHPGAsDispatcher: boolean })[]>( + "/api/dispatcher", + { + params: { + filter: JSON.stringify(filter), + }, }, - }); + ); if (res.status !== 200) { throw new Error("Failed to fetch Connected Dispatcher"); } diff --git a/apps/dispatch/app/_store/pilot/connectionStore.ts b/apps/dispatch/app/_store/pilot/connectionStore.ts index c7acd60c..e9fc29f8 100644 --- a/apps/dispatch/app/_store/pilot/connectionStore.ts +++ b/apps/dispatch/app/_store/pilot/connectionStore.ts @@ -1,6 +1,7 @@ import { create } from "zustand"; import { dispatchSocket } from "../../(app)/dispatch/socket"; import { ConnectedAircraft, Mission, MissionSdsLog, Station, User } from "@repo/db"; +import { showToast } from "../../_components/customToasts/HPGnotValidated"; import { pilotSocket } from "(app)/pilot/socket"; import { useDmeStore } from "_store/pilot/dmeStore"; import { useMrtStore } from "_store/pilot/MrtStore"; @@ -132,6 +133,12 @@ pilotSocket.on("mission-alert", (data: Mission & { Stations: Station[] }) => { useDmeStore.getState().setPage({ page: "new-mission", }); + if ( + data.hpgValidationState === "NOT_VALIDATED" && + usePilotConnectionStore.getState().connectedAircraft?.posH145active + ) { + showToast(); + } }); pilotSocket.on("sds-message", (sdsMessage: MissionSdsLog) => { diff --git a/apps/dispatch/app/api/dispatcher/route.ts b/apps/dispatch/app/api/dispatcher/route.ts index 63761deb..7fd5f069 100644 --- a/apps/dispatch/app/api/dispatcher/route.ts +++ b/apps/dispatch/app/api/dispatcher/route.ts @@ -24,6 +24,7 @@ export async function GET(request: Request): Promise { ...d, user: undefined, publicUser: getPublicUser(d.user), + settingsUseHPGAsDispatcher: d.user.settingsUseHPGAsDispatcher, }; }), { diff --git a/apps/dispatch/app/tracker/_components/ConnectedDispatcher.tsx b/apps/dispatch/app/tracker/_components/ConnectedDispatcher.tsx index 423c6f2d..9850db50 100644 --- a/apps/dispatch/app/tracker/_components/ConnectedDispatcher.tsx +++ b/apps/dispatch/app/tracker/_components/ConnectedDispatcher.tsx @@ -78,6 +78,15 @@ export const ConnectedDispatcher = () => {
{asPublicUser(d.publicUser).fullName}
{d.zone}
+
+ {d.settingsUseHPGAsDispatcher ? ( + HPG aktiv + ) : ( + + HPG deaktiviert + + )} +
{(() => { const badges = (d.publicUser as unknown as PublicUser).badges diff --git a/apps/dispatch/public/sounds/notification.mp3 b/apps/dispatch/public/sounds/notification.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..57f5dddcb73c5818a50d154a18de7a5f64f8612a GIT binary patch literal 76068 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�$yBe_>e7D%>ZS!+e@6%mmm7n@a9H)}z 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 { - useEffect(() => { - signOut({ - callbackUrl: '/login', - }); - }, []); - return ( -
-

logging out...

-
- ); + useEffect(() => { + signOut({ + callbackUrl: "/login", + }); + }, []); + return ( +
+

ausloggen...

+
+ ); }; diff --git a/packages/database/prisma/schema/migrations/20251118221802_hpg_settings_as_dispatcher/migration.sql b/packages/database/prisma/schema/migrations/20251118221802_hpg_settings_as_dispatcher/migration.sql new file mode 100644 index 00000000..236c8279 --- /dev/null +++ b/packages/database/prisma/schema/migrations/20251118221802_hpg_settings_as_dispatcher/migration.sql @@ -0,0 +1,2 @@ +-- AlterTable +ALTER TABLE "users" ADD COLUMN "settings_use_hpg_as_dispatcher" BOOLEAN NOT NULL DEFAULT false; diff --git a/packages/database/prisma/schema/migrations/20251118222421_rename_hpg_settings/migration.sql b/packages/database/prisma/schema/migrations/20251118222421_rename_hpg_settings/migration.sql new file mode 100644 index 00000000..8bc8be66 --- /dev/null +++ b/packages/database/prisma/schema/migrations/20251118222421_rename_hpg_settings/migration.sql @@ -0,0 +1,2 @@ +-- AlterTable +ALTER TABLE "users" ALTER COLUMN "settings_use_hpg_as_dispatcher" SET DEFAULT true; diff --git a/packages/database/prisma/schema/user.prisma b/packages/database/prisma/schema/user.prisma index 5fc59e06..1f09f3f0 100644 --- a/packages/database/prisma/schema/user.prisma +++ b/packages/database/prisma/schema/user.prisma @@ -38,15 +38,16 @@ model User { changelogAck Boolean @default(false) // Settings: - pathSelected Boolean @default(false) - migratedFromV1 Boolean @default(false) - settingsNtfyRoom String? @map(name: "settings_ntfy_room") - settingsMicDevice String? @map(name: "settings_mic_device") - settingsMicVolume Float? @map(name: "settings_mic_volume") - settingsDmeVolume Float? @map(name: "settings_dme_volume") - settingsRadioVolume Float? @map(name: "settings_funk_volume") - settingsHideLastname Boolean @default(false) @map(name: "settings_hide_lastname") - settingsAutoCloseMapPopup Boolean @default(false) @map(name: "settings_auto_close_map_popup") + pathSelected Boolean @default(false) + migratedFromV1 Boolean @default(false) + settingsNtfyRoom String? @map(name: "settings_ntfy_room") + settingsMicDevice String? @map(name: "settings_mic_device") + settingsMicVolume Float? @map(name: "settings_mic_volume") + settingsDmeVolume Float? @map(name: "settings_dme_volume") + settingsRadioVolume Float? @map(name: "settings_funk_volume") + settingsHideLastname Boolean @default(false) @map(name: "settings_hide_lastname") + settingsAutoCloseMapPopup Boolean @default(false) @map(name: "settings_auto_close_map_popup") + settingsUseHPGAsDispatcher Boolean @default(true) @map(name: "settings_use_hpg_as_dispatcher") // email Verification: emailVerificationToken String? @map(name: "email_verification_token")