diff --git a/apps/dispatch/app/_components/SmartPopup.tsx b/apps/dispatch/app/_components/SmartPopup.tsx index 5923a2fb..3ff5b0dc 100644 --- a/apps/dispatch/app/_components/SmartPopup.tsx +++ b/apps/dispatch/app/_components/SmartPopup.tsx @@ -58,6 +58,7 @@ export const calculateAnchor = ( y: rect.top + rect.height / 2, }; }); + const ownMarkerBounds = (ownMarker as HTMLElement).getBoundingClientRect(); const ownMarkerPosition = { x: ownMarkerBounds.left + ownMarkerBounds.width / 2, @@ -75,6 +76,12 @@ export const calculateAnchor = ( centerOfOverlappingMarkers.x /= markersPosition.length; centerOfOverlappingMarkers.y /= markersPosition.length; + if (id == "2") { + console.log("markersInCluser", marksersInCluster); + console.log("ownMarkerPosition", ownMarkerPosition); + console.log("centerOfOverlappingMarkers", centerOfOverlappingMarkers); + } + if (marksersInCluster.length > 1) { if (centerOfOverlappingMarkers.y < ownMarkerPosition.y) { if (centerOfOverlappingMarkers.x > ownMarkerPosition.x) { diff --git a/apps/dispatch/app/dispatch/_components/map/AircraftMarker.tsx b/apps/dispatch/app/dispatch/_components/map/AircraftMarker.tsx index 496f1f1d..dc462f0f 100644 --- a/apps/dispatch/app/dispatch/_components/map/AircraftMarker.tsx +++ b/apps/dispatch/app/dispatch/_components/map/AircraftMarker.tsx @@ -281,7 +281,6 @@ const AircraftMarker = ({ aircraft }: { aircraft: Aircraft }) => { const handleZoom = () => { const zoom = map.getZoom(); - console.log("zoom", zoom); setHideMarker(zoom < 9); handleConflict(); }; @@ -331,6 +330,8 @@ const AircraftMarker = ({ aircraft }: { aircraft: Aircraft }) => {
{ const map = useMap(); const { contextMenu, setContextMenu, setSearchElements, setSearchPopup } = useMapStore(); - const setMissionFormValues = usePannelStore( - (state) => state.setMissionFormValues, - ); + const { setMissionFormValues, setOpen } = usePannelStore((state) => state); useEffect(() => { const handleContextMenu = (e: any) => { setContextMenu({ lat: e.latlng.lat, lng: e.latlng.lng }); @@ -72,7 +70,7 @@ export const ContextMenu = () => { place_rank: number; type: string; }; - console.log(data); + setOpen(true); setMissionFormValues({ addressLat: contextMenu.lat, addressLng: contextMenu.lng, diff --git a/apps/dispatch/app/dispatch/_components/map/MissionMarkers.tsx b/apps/dispatch/app/dispatch/_components/map/MissionMarkers.tsx index 2519fe97..d5315f70 100644 --- a/apps/dispatch/app/dispatch/_components/map/MissionMarkers.tsx +++ b/apps/dispatch/app/dispatch/_components/map/MissionMarkers.tsx @@ -277,6 +277,8 @@ const MissionMarker = ({ mission }: { mission: Mission }) => { ${mission.missionKeywordAbbreviation} ${mission.missionKeywordName}
{ if (i === existingClusterIndex) { @@ -218,7 +216,6 @@ export const MarkerCluster = () => { map.off("zoomend", handleZoom); }; }, [map, aircrafts, missions]); - console.log("cluster", cluster); return ( <> {cluster.map((c, i) => ( diff --git a/grafana/grafana.db b/grafana/grafana.db index 6f93118e..302518c8 100644 Binary files a/grafana/grafana.db and b/grafana/grafana.db differ diff --git a/packages/database/prisma/schema/connectedAircraft.prisma b/packages/database/prisma/schema/connectedAircraft.prisma new file mode 100644 index 00000000..ba15c511 --- /dev/null +++ b/packages/database/prisma/schema/connectedAircraft.prisma @@ -0,0 +1,15 @@ +model connectedAircraft { + id Int @id @default(autoincrement()) + userId String + publicUser Json + lastHeartbeat DateTime @default(now()) + stationId Int + loginTime DateTime @default(now()) + esimatedLogoutTime DateTime? + logoutTime DateTime? + positionLogIds Int[] @default([]) + + // relations: + user User @relation(fields: [userId], references: [id]) + station Station @relation(fields: [stationId], references: [id]) +} diff --git a/packages/database/prisma/schema/connectedDispatch.prisma b/packages/database/prisma/schema/connectedDispatch.prisma new file mode 100644 index 00000000..6e372217 --- /dev/null +++ b/packages/database/prisma/schema/connectedDispatch.prisma @@ -0,0 +1,12 @@ +model ConnectedDispatch { + id Int @id @default(autoincrement()) + userId String + publicUser Json + lastHeartbeat DateTime @default(now()) + loginTime DateTime @default(now()) + esimatedLogoutTime DateTime? + logoutTime DateTime? + + // relations: + user User @relation(fields: [userId], references: [id]) +} diff --git a/packages/database/prisma/schema/positionLog.prisma b/packages/database/prisma/schema/positionLog.prisma new file mode 100644 index 00000000..43d04f94 --- /dev/null +++ b/packages/database/prisma/schema/positionLog.prisma @@ -0,0 +1,13 @@ +model PositionLog { + id Int @id @default(autoincrement()) + userId String + simulator String + lat Float + lng Float + alt Int + speed Int + heading Int + timestamp DateTime @default(now()) + // relations: + user User @relation(fields: [userId], references: [id]) +} diff --git a/packages/database/prisma/schema/station.prisma b/packages/database/prisma/schema/station.prisma index c3f0712d..680e601a 100644 --- a/packages/database/prisma/schema/station.prisma +++ b/packages/database/prisma/schema/station.prisma @@ -35,4 +35,5 @@ model Station { MissionsOnStations MissionsOnStations[] MissionOnStationUsers MissionOnStationUsers[] + connectedAircraft connectedAircraft[] } diff --git a/packages/database/prisma/schema/user.prisma b/packages/database/prisma/schema/user.prisma index f22633fd..f8de9500 100644 --- a/packages/database/prisma/schema/user.prisma +++ b/packages/database/prisma/schema/user.prisma @@ -48,6 +48,9 @@ model User { */ Mission Mission[] MissionOnStationUsers MissionOnStationUsers[] + ConnectedDispatch ConnectedDispatch[] + connectedAircraft connectedAircraft[] + PositionLog PositionLog[] @@map(name: "users") }