diff --git a/frontend/src/components/ActionTable/ActionTable.tsx b/frontend/src/components/ActionTable/ActionTable.tsx index 00646d77..13b1de9d 100644 --- a/frontend/src/components/ActionTable/ActionTable.tsx +++ b/frontend/src/components/ActionTable/ActionTable.tsx @@ -44,11 +44,10 @@ interface Props { personDetailsList: PersonDetails[] onClickAction: (actionId: string) => void showEvaluations?: boolean - projects?: Context[] } -const ActionTable = ({ onClickAction, actionsWithAdditionalInfo, personDetailsList, showEvaluations = false, projects }: Props) => { - const {currentProject} = useAppContext() +const ActionTable = ({ onClickAction, actionsWithAdditionalInfo, personDetailsList, showEvaluations = false }: Props) => { + const {currentProject, projects} = useAppContext() const columns = columnOptions.filter( col => @@ -120,7 +119,7 @@ const ActionTable = ({ onClickAction, actionsWithAdditionalInfo, personDetailsLi > {action.title} - {!currentProject && {getFusionProjectName(projects, action.question.evaluation.project.fusionProjectId)}} + {!currentProject && {getFusionProjectName(projects, action.question.evaluation.project.externalId)}} {showEvaluations && {action.question.evaluation.name}} {barrierToString(barrier)} {organizationToString(organization)} diff --git a/frontend/src/utils/helpers.ts b/frontend/src/utils/helpers.ts index 7038f00b..8246bc67 100644 --- a/frontend/src/utils/helpers.ts +++ b/frontend/src/utils/helpers.ts @@ -1,5 +1,4 @@ -import { Context } from '@equinor/fusion' -import { Question, Progression, Role, Severity, Participant, Evaluation } from '../api/models' +import { Question, Progression, Role, Severity, Participant, Evaluation, Project } from '../api/models' import { UserRolesInEvaluation } from './helperModels' import { SeverityCount } from './Severity' import jwtDecode from 'jwt-decode' @@ -61,9 +60,9 @@ export const selectSeverity = (severityCount: SeverityCount) => { return Severity.Na } -export const getFusionProjectName = (projects: Context[] | undefined, fusionProjectId: string) => { - if (!fusionProjectId || !projects) { return undefined } - const fusionProject = projects?.find(project => project.id === fusionProjectId) +export const getFusionProjectName = (projects: Project[] | undefined, externalId: string) => { + if (!externalId || !projects) { return undefined } + const fusionProject = projects?.find(project => project.externalId === externalId) return fusionProject?.title } diff --git a/frontend/src/views/Project/Actions/ActionsView.tsx b/frontend/src/views/Project/Actions/ActionsView.tsx index 65dbdc2a..d93a42f6 100644 --- a/frontend/src/views/Project/Actions/ActionsView.tsx +++ b/frontend/src/views/Project/Actions/ActionsView.tsx @@ -1,7 +1,6 @@ -import React, { useState, useEffect } from 'react' +import { useState } from 'react' import { ApolloError, gql, useQuery } from '@apollo/client' import { Box } from '@mui/material' -import { Context } from '@equinor/fusion' import ErrorMessage from '../../../components/ErrorMessage' import { useAllPersonDetailsAsync } from '../../../utils/hooks' @@ -18,14 +17,14 @@ import { import { CircularProgress } from '@equinor/eds-core-react' import { centered } from '../../../utils/styles' import { genericErrorMessage } from '../../../utils/Variables' -import { useContextApi } from '../../../api/useContextApi' +import { useModuleCurrentContext } from '@equinor/fusion-framework-react-module-context' interface Props { azureUniqueId: string } const ActionsView = ({ azureUniqueId }: Props) => { - const apiClients = useContextApi() + const { currentContext } = useModuleCurrentContext() const { loading: loadingActions, actions, error: errorLoadingActions } = useActionsQuery(azureUniqueId) const nonCancelledActions = actions.filter(a => !a.isVoided) @@ -34,24 +33,14 @@ const ActionsView = ({ azureUniqueId }: Props) => { }) const { personDetailsList } = useAllPersonDetailsAsync([azureUniqueId]) - const [projects, setProjects] = useState([]) const [isFetchingProjects, setIsFetchingProjects] = useState(false) const [isEditSidebarOpen, setIsEditSidebarOpen] = useState(false) const [actionIdToEdit, setActionIdToEdit] = useState('') const actionToEdit = actionsWithAdditionalInfo.find(actionWithInfo => actionWithInfo.action.id === actionIdToEdit) + const currentProjectActions = actionsWithAdditionalInfo.filter(actionWithInfo => actionWithInfo.action.question.evaluation.project.externalId === currentContext?.externalId) const isFetchingData = loadingActions || isFetchingProjects - // useEffect(() => { - // if (projects.length === 0) { - // setIsFetchingProjects(true) - // apiClients.context.getContextsAsync().then(projects => { - // setProjects(projects.data) - // setIsFetchingProjects(false) - // }) - // } - // }, []) - const onClose = () => { setIsEditSidebarOpen(false) setActionIdToEdit('') @@ -74,11 +63,10 @@ const ActionsView = ({ azureUniqueId }: Props) => { )} {!isFetchingData && errorLoadingActions === undefined && actionsWithAdditionalInfo.length > 0 && ( )} {actionIdToEdit !== '' && actionToEdit !== undefined && ( @@ -120,7 +108,7 @@ const useActionsQuery = (currentUserId: string): ActionsQueryProps => { name ...ParticipantsArray project { - fusionProjectId + externalId } } } diff --git a/frontend/src/views/Project/ProjectTabs.tsx b/frontend/src/views/Project/ProjectTabs.tsx index 28b8f1f6..f14496ea 100644 --- a/frontend/src/views/Project/ProjectTabs.tsx +++ b/frontend/src/views/Project/ProjectTabs.tsx @@ -57,7 +57,7 @@ const ProjectTabs = ({ match }: RouteComponentProps) => { Evaluations - {!currentContext ? My actions : <>} + My actions {isAdmin && !currentContext ? Questionnaire editor : <>}