Skip to content

Commit

Permalink
Remove localization verification
Browse files Browse the repository at this point in the history
  • Loading branch information
Eddasol committed Feb 7, 2025
1 parent 56bf8c1 commit 345594d
Show file tree
Hide file tree
Showing 15 changed files with 18 additions and 369 deletions.
10 changes: 0 additions & 10 deletions frontend/src/api/ApiCaller.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ import { PaginatedResponse, PaginationHeader, PaginationHeaderName } from 'model
import { Area } from 'models/Area'
import { timeout } from 'utils/timeout'
import { tokenReverificationInterval } from 'components/Contexts/AuthProvider'
import { MapMetadata } from 'models/MapMetadata'
import { MissionDefinition, PlantInfo } from 'models/MissionDefinition'
import { MissionDefinitionUpdateForm } from 'models/MissionDefinitionUpdateForm'
import { InspectionArea } from 'models/InspectionArea'
Expand Down Expand Up @@ -376,15 +375,6 @@ export class BackendAPICaller {
return result.content
}

static async getInspectionAreaMapMetadata(id: string): Promise<MapMetadata> {
const path: string = 'inspectionAreas/' + id + '/map-metadata'
const result = await this.GET<MapMetadata>(path).catch((e) => {
console.error(`Failed to GET /${path}: ` + e)
throw e
})
return result.content
}

static async reRunMission(missionId: string, failedTasksOnly: boolean = false): Promise<Mission> {
const mission = await BackendAPICaller.getMissionRunById(missionId)

Expand Down

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,6 @@ export const StyledDialog = styled(Dialog)`
max-width: 500px;
max-height: 90vh;
`
export const HorizontalContent = styled.div`
display: flex;
gap: 1rem;
`
export const VerticalContent = styled.div`
display: flex;
flex-direction: column;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
import { Robot } from 'models/Robot'
import { useEffect, useState } from 'react'
import { ConfirmLocalizationDialog } from './ConfirmLocalizationDialog'
import {
ConflictingMissionInspectionAreasDialog,
ConflictingRobotInspectionAreaDialog,
} from './ConflictingLocalizationDialog'
} from './ConflictingInspectionAreaDialog'
import { UnknownInspectionAreaDialog } from './UnknownInspectionAreaDialog'
import { useRobotContext } from 'components/Contexts/RobotContext'
import { useMissionsContext } from 'components/Contexts/MissionRunsContext'

interface IProps {
scheduleMissions: () => void
Expand All @@ -17,14 +15,13 @@ interface IProps {
}

enum DialogTypes {
verifyInspectionArea,
unknownNewInspectionArea,
conflictingMissionInspectionAreas,
conflictingRobotInspectionArea,
unknown,
}

export const ScheduleMissionWithLocalizationVerificationDialog = ({
export const ScheduleMissionWithInspectionAreaVerification = ({
robotId,
missionInspectionAreaNames,
scheduleMissions,
Expand All @@ -33,37 +30,19 @@ export const ScheduleMissionWithLocalizationVerificationDialog = ({
const { enabledRobots } = useRobotContext()
const [dialogToOpen, setDialogToOpen] = useState<DialogTypes>(DialogTypes.unknown)
const [selectedRobot, setSelectedRobot] = useState<Robot>()
const { ongoingMissions } = useMissionsContext()

const unikMissionInspectionAreaNames = missionInspectionAreaNames.filter(
(inspectionAreaName, index) =>
inspectionAreaName !== '' && missionInspectionAreaNames.indexOf(inspectionAreaName) === index
)

const ongoingLocalizationMissionOnSameInspectionAreaExists =
ongoingMissions.filter(
(mission) =>
mission.robot?.id === selectedRobot?.id &&
mission.inspectionArea?.inspectionAreaName === unikMissionInspectionAreaNames[0]
).length > 0

useEffect(() => {
setSelectedRobot(enabledRobots.find((robot) => robot.id === robotId))
}, [robotId, enabledRobots])

useEffect(() => {
if (!selectedRobot) return

if (
(unikMissionInspectionAreaNames.length === 1 &&
selectedRobot.currentInspectionArea?.inspectionAreaName &&
unikMissionInspectionAreaNames[0] === selectedRobot?.currentInspectionArea?.inspectionAreaName) ||
ongoingLocalizationMissionOnSameInspectionAreaExists
) {
scheduleMissions()
return
}

if (unikMissionInspectionAreaNames.length > 1) {
setDialogToOpen(DialogTypes.conflictingMissionInspectionAreas)
return
Expand All @@ -75,29 +54,18 @@ export const ScheduleMissionWithLocalizationVerificationDialog = ({
}

if (
!selectedRobot.currentInspectionArea?.inspectionAreaName &&
!ongoingLocalizationMissionOnSameInspectionAreaExists
selectedRobot.currentInspectionArea?.inspectionAreaName &&
unikMissionInspectionAreaNames[0] !== selectedRobot.currentInspectionArea?.inspectionAreaName
) {
setDialogToOpen(DialogTypes.verifyInspectionArea)
return
}

if (unikMissionInspectionAreaNames[0] !== selectedRobot.currentInspectionArea?.inspectionAreaName) {
setDialogToOpen(DialogTypes.conflictingRobotInspectionArea)
return
}

scheduleMissions()
}, [unikMissionInspectionAreaNames, selectedRobot?.currentInspectionArea?.inspectionAreaName])

return (
<>
{dialogToOpen === DialogTypes.verifyInspectionArea && (
<ConfirmLocalizationDialog
closeDialog={closeDialog}
scheduleMissions={scheduleMissions}
robot={selectedRobot!}
newInspectionAreaName={unikMissionInspectionAreaNames![0]}
/>
)}
{dialogToOpen === DialogTypes.conflictingMissionInspectionAreas && (
<ConflictingMissionInspectionAreasDialog
closeDialog={closeDialog}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ import { useRef, useState } from 'react'
import { AlertType, useAlertContext } from 'components/Contexts/AlertContext'
import { FailedRequestAlertContent, FailedRequestAlertListContent } from 'components/Alerts/FailedRequestAlert'
import { Mission } from 'models/Mission'
import { ScheduleMissionWithConfirmDialogs } from '../ConfirmScheduleDialogs/ConfirmScheduleDialog'
import { AlertCategory } from 'components/Alerts/AlertsBanner'
import { ScheduleMissionWithInspectionAreaVerification } from '../InspectionAreaVerificationDialogs/ScheduleMissionWithInspectionAreaVerification'

const Centered = styled.div`
display: flex;
Expand Down Expand Up @@ -114,7 +114,7 @@ export const MissionRestartButton = ({ mission, hasFailedTasks, smallButton }: M
</Menu>
</EdsProvider>
{isLocationVerificationOpen && (
<ScheduleMissionWithConfirmDialogs
<ScheduleMissionWithInspectionAreaVerification
scheduleMissions={() => startReRun(selectedRerunOption!)}
closeDialog={() => setIsLocationVerificationOpen(false)}
robotId={mission.robot.id}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@ import { StyledAutoComplete, StyledButton, StyledDialog } from 'components/Style
import { useMissionsContext } from 'components/Contexts/MissionRunsContext'
import { FailedRequestAlertContent, FailedRequestAlertListContent } from 'components/Alerts/FailedRequestAlert'
import { AlertType, useAlertContext } from 'components/Contexts/AlertContext'
import { ScheduleMissionWithConfirmDialogs } from 'components/Displays/ConfirmScheduleDialogs/ConfirmScheduleDialog'
import { FrontPageSectionId } from 'models/FrontPageSectionId'
import { AlertCategory } from 'components/Alerts/AlertsBanner'
import { ScheduleMissionWithInspectionAreaVerification } from 'components/Displays/InspectionAreaVerificationDialogs/ScheduleMissionWithInspectionAreaVerification'

interface IProps {
selectedMissions: MissionDefinition[]
Expand Down Expand Up @@ -55,7 +55,7 @@ export const ScheduleMissionDialog = (props: IProps): JSX.Element => {
const { enabledRobots } = useRobotContext()
const { setLoadingRobotMissionSet } = useMissionsContext()
const { setAlert, setListAlert } = useAlertContext()
const [isLocalizationVerificationDialogOpen, setIsLocalizationVerificationDialog] = useState<boolean>(false)
const [isInspectionAreaVerificationDialogOpen, setIsInspectionAreaVerificationDialogOpen] = useState<boolean>(false)
const [missionsToSchedule, setMissionsToSchedule] = useState<MissionDefinition[]>()
const filteredRobots = enabledRobots.filter(
(r) =>
Expand All @@ -76,11 +76,11 @@ export const ScheduleMissionDialog = (props: IProps): JSX.Element => {
if (!selectedRobot) return

setMissionsToSchedule(missions)
setIsLocalizationVerificationDialog(true)
setIsInspectionAreaVerificationDialogOpen(true)
}

const scheduleMissions = () => {
setIsLocalizationVerificationDialog(false)
setIsInspectionAreaVerificationDialogOpen(false)

if (!selectedRobot || !missionsToSchedule) return

Expand Down Expand Up @@ -132,14 +132,14 @@ export const ScheduleMissionDialog = (props: IProps): JSX.Element => {
}

const closeScheduleDialogs = () => {
setIsLocalizationVerificationDialog(false)
setIsInspectionAreaVerificationDialogOpen(false)
props.closeDialog()
}

return (
<>
<StyledMissionDialog>
<StyledDialog open={!isLocalizationVerificationDialogOpen}>
<StyledDialog open={!isInspectionAreaVerificationDialogOpen}>
<StyledDialogContent>
<Typography variant="h4">{TranslateText('Add mission to the queue')}</Typography>
{props.isAlreadyScheduled && (
Expand Down Expand Up @@ -195,8 +195,8 @@ export const ScheduleMissionDialog = (props: IProps): JSX.Element => {
</StyledDialogContent>
</StyledDialog>
</StyledMissionDialog>
{isLocalizationVerificationDialogOpen && (
<ScheduleMissionWithConfirmDialogs
{isInspectionAreaVerificationDialogOpen && (
<ScheduleMissionWithInspectionAreaVerification
scheduleMissions={scheduleMissions}
closeDialog={closeScheduleDialogs}
robotId={selectedRobot!.id}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ const StyledElements = styled.div`
align-items: end;
`

export const getMeta = async (url: string) => {
const getMeta = async (url: string) => {
const image = new Image()
image.src = url
await image.decode()
Expand Down
Loading

0 comments on commit 345594d

Please sign in to comment.