diff --git a/src/apps/companies/apps/company-overview/client/CompanyOverview.jsx b/src/apps/companies/apps/company-overview/client/CompanyOverview.jsx deleted file mode 100644 index 13f05ca2a0a..00000000000 --- a/src/apps/companies/apps/company-overview/client/CompanyOverview.jsx +++ /dev/null @@ -1,76 +0,0 @@ -import React from 'react' -import PropTypes from 'prop-types' -import { GridCol, GridRow } from 'govuk-react' -import styled from 'styled-components' - -import { - AccountManagementCard, - ActiveInvestmentProjectsCard, - ActivityCard, - BusinessDetailsCard, - ExportStatusCard, - InvestmentStatusCard, -} from '../overview-table-cards' -import { FILTER_FEED_TYPE } from '../../activity-feed/constants' -import { CompanyResource } from '../../../../../client/components/Resource/index' -import CompanyLayout from '../../../../../client/components/Layout/CompanyLayout' - -const CardContainer = styled('div')` - border: 1px solid #b1b4b6; - padding: 20px; - margin-bottom: 20px; -` - -const CompanyOverview = ({ companyId, flashMessages }) => ( - - {(company) => ( - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - )} - -) - -CompanyOverview.propTypes = { - companyId: PropTypes.string.isRequired, -} - -export default CompanyOverview diff --git a/src/apps/companies/apps/company-overview/controllers.js b/src/apps/companies/apps/company-overview/controllers.js deleted file mode 100644 index fc280504b77..00000000000 --- a/src/apps/companies/apps/company-overview/controllers.js +++ /dev/null @@ -1,17 +0,0 @@ -async function renderOverview(req, res) { - const { company, dnbRelatedCompaniesCount } = res.locals - - res.render('companies/apps/company-overview/views/client-container', { - props: { - company, - localNavItems: res.locals.localNavItems, - companyId: company.id, - dnbRelatedCompaniesCount, - flashMessages: res.locals.getMessages(), - }, - }) -} - -module.exports = { - renderOverview, -} diff --git a/src/apps/companies/apps/company-overview/router.js b/src/apps/companies/apps/company-overview/router.js deleted file mode 100644 index 1738e3ebfbe..00000000000 --- a/src/apps/companies/apps/company-overview/router.js +++ /dev/null @@ -1,9 +0,0 @@ -const router = require('express').Router() - -const urls = require('../../../../lib/urls') - -const { renderOverview } = require('./controllers') - -router.get(urls.companies.overview.index.route, renderOverview) - -module.exports = router diff --git a/src/apps/companies/apps/company-overview/views/client-container.njk b/src/apps/companies/apps/company-overview/views/client-container.njk deleted file mode 100644 index a7cde25e91f..00000000000 --- a/src/apps/companies/apps/company-overview/views/client-container.njk +++ /dev/null @@ -1,10 +0,0 @@ -{% extends "_layouts/template-no-local-header.njk" %} - -{% block body %} - - {% component 'react-slot', { - id: 'company-overview', - props: props - } %} - -{% endblock %} \ No newline at end of file diff --git a/src/apps/companies/router.js b/src/apps/companies/router.js index 95ef3b15cab..65462afaf44 100644 --- a/src/apps/companies/router.js +++ b/src/apps/companies/router.js @@ -42,7 +42,6 @@ const formatPostcodes = require('./middleware/format-postcodes') const addCompanyFormRouter = require('./apps/add-company/router') const editCompanyFormRouter = require('./apps/edit-company/router') const activityFeedRouter = require('./apps/activity-feed/router') -const companyOverviewRouter = require('./apps/company-overview/router') const dnbHierarchyRouter = require('./apps/dnb-hierarchy/router') const businessDetailsRouter = require('./apps/business-details/router') const editHistoryRouter = require('./apps/edit-history/router') @@ -121,7 +120,6 @@ router.use(businessDetailsRouter) router.use(matchCompanyRouter) router.use(exportsRouter) router.use(referralsRouter) -router.use(companyOverviewRouter) router.use(accountManagementRouter) module.exports = router diff --git a/src/apps/routers.js b/src/apps/routers.js index a4ebe81faa2..335bf4caf52 100644 --- a/src/apps/routers.js +++ b/src/apps/routers.js @@ -109,6 +109,7 @@ const reactRoutes = [ '/tasks/:taskId/details', '/tasks/create', '/tasks/:taskId/edit', + '/companies/:companyId/overview', ] reactRoutes.forEach((path) => { diff --git a/src/client/components/CompanyLocalHeader/CompanyLocalHeaderNew.jsx b/src/client/components/CompanyLocalHeader/CompanyLocalHeaderNew.jsx new file mode 100644 index 00000000000..74017f72a07 --- /dev/null +++ b/src/client/components/CompanyLocalHeader/CompanyLocalHeaderNew.jsx @@ -0,0 +1,251 @@ +import React from 'react' +import PropTypes from 'prop-types' +import styled from 'styled-components' +import Main from '@govuk-react/main' +import GridCol from '@govuk-react/grid-col' +import GridRow from '@govuk-react/grid-row' +import Button from '@govuk-react/button' +import Details from '@govuk-react/details' +import { SPACING, FONT_SIZE, BREAKPOINTS } from '@govuk-react/constants' +import { Link } from 'govuk-react' +import { H4 } from '@govuk-react/heading' + +import { GREY_3, TEXT_COLOUR } from '../../utils/colours' +import LocalHeaderCompanyLists from './LocalHeaderCompanyLists' +import LocalHeaderCompanyRefer from './LocalHeaderCompanyRefer' +import Badge from '../Badge' +import StatusMessage from '../StatusMessage' +import { addressToStringResource } from '../../utils/addresses' +import urls from '../../../lib/urls' +import ArchivePanel from '../ArchivePanel' +import { isItaTierDAccount } from '../../modules/Companies/utils' +import { RelatedCompaniesCountResource } from '../Resource' + +const LocalHeaderTradingNames = styled(H4)` + font-weight: normal; +` + +const StyledAddress = styled('p')` + margin-top: ${SPACING.SCALE_2}; + margin-bottom: ${SPACING.SCALE_2}; +` + +const BadgeText = styled('span')` + font-weight: 600; + font-size: ${FONT_SIZE.SIZE_16}; +` + +const TypeWrapper = styled('div')` + @media (min-width: ${BREAKPOINTS.TABLET}) { + display: table-row; + } +` +const StyledButtonContainer = styled('div')` + width: 100%; + display: inline-block; +` + +const StyledList = styled('div')` + padding-bottom: 10px; + display: inline-flex; +` + +const StyledButtonLink = styled.a({ + marginBottom: 10, + float: 'right', +}) + +const BadgeWrapper = styled('div')` + @media (min-width: ${BREAKPOINTS.TABLET}) { + display: table-cell; + } +` + +const StyledDetails = styled(Details)` + @media (min-width: ${BREAKPOINTS.TABLET}) { + margin: 0 0 0 ${SPACING.SCALE_3}; + } + span, + div { + font-size: ${FONT_SIZE.SIZE_16}; + } +` + +const StyledDescription = styled('div')` + padding: ${SPACING.SCALE_2}; + background-color: ${GREY_3}; + + * + & { + margin-top: ${SPACING.SCALE_3}; + } + + p { + margin-top: 0; + margin-bottom: 0; + + &:not(:last-child) { + margin-bottom: ${SPACING.SCALE_2}; + } + } + + & + * { + margin-top: ${SPACING.SCALE_3}; + } +` + +const StyledMain = styled(Main)` + padding-top: ${SPACING.SCALE_1}; + div { + font-size: ${FONT_SIZE.SIZE_20}; + } +` +const StyledRelatedCompaniesWrapper = styled('div')` + padding-bottom: 20px; +` + +const isUltimate = (company) => !!company.isGlobalUltimate +const isGlobalHQ = (company) => + company.headquarterType && company.headquarterType.name === 'ghq' + +const hasAllocatedLeadIta = (company) => + company.oneListGroupGlobalAccountManager != null + +const hasManagedAccountDetails = (company) => + company.oneListGroupTier && hasAllocatedLeadIta(company) + +const CompanyLocalHeaderNew = ({ company, returnUrl, csrfToken }) => + company && ( + <> + + + {company?.tradingNames?.length > 0 && ( + + Trading as: {company.tradingNames.join(', ')} + + )} + + + {addressToStringResource(company.address)} + + + {({ relatedCompaniesCount }) => + relatedCompaniesCount > 0 && ( + + + {`View company tree: ${ + relatedCompaniesCount + 1 + } companies`} + + + ) + } + + + + + + + + + + + + + + {(isUltimate(company) || isGlobalHQ(company)) && ( + + + + + {isUltimate(company) ? 'Ultimate HQ' : 'Global HQ'} + + + + {isUltimate(company) && ( + + This HQ is in control of all related company records for{' '} + {company.name}. + + )} + + )} + {hasManagedAccountDetails(company) && ( + + {hasManagedAccountDetails(company) && ( + <> +

+ This is an account managed company (One List{' '} + {company.oneListGroupTier.name}) +

+

+ {isItaTierDAccount(company.oneListGroupTier) + ? 'Lead ITA' + : 'Global Account Manager'} + : {company.oneListGroupGlobalAccountManager.name}{' '} + + {isItaTierDAccount(company.oneListGroupTier) + ? 'View Lead adviser' + : 'View core team'} + +

+ + )} +
+ )} + + {company.archived && ( + + )} + + {company.pendingDnbInvestigation && ( + + + This company record is based on information that has not yet been + validated. This information is currently being checked by the Data + Hub support team. + + + )} + + ) + +CompanyLocalHeaderNew.propTypes = { + company: PropTypes.object.isRequired, + returnUrl: PropTypes.string, +} + +CompanyLocalHeaderNew.defaultProps = { + returnUrl: null, +} + +export default CompanyLocalHeaderNew diff --git a/src/client/components/Layout/CompanyLayoutNew.jsx b/src/client/components/Layout/CompanyLayoutNew.jsx new file mode 100644 index 00000000000..b42ecf84b95 --- /dev/null +++ b/src/client/components/Layout/CompanyLayoutNew.jsx @@ -0,0 +1,48 @@ +import React from 'react' +import PropTypes from 'prop-types' +import GridCol from '@govuk-react/grid-col' +import GridRow from '@govuk-react/grid-row' + +import { CompanyTabbedLocalNavigation, DefaultLayout } from '..' +import CompanyInvestmentSubNavigation from '../CompanyTabbedLocalNavigation/CompanyInvestmentTab' +import { buildCompanyBreadcrumbs } from '../../modules/Companies/utils' +import CompanyLocalHeaderNew from '../CompanyLocalHeader/CompanyLocalHeaderNew' + +const CompanyLayoutNew = ({ + company, + breadcrumbs, + children, + returnUrl, + pageTitle, + isInvestment = false, + isLCP = false, +}) => ( + + ) + } + > + + {isInvestment && ( + + )} + + {children} + + +) + +CompanyLayoutNew.propTypes = { + company: PropTypes.object.isRequired, + children: PropTypes.element.isRequired, + isInvestment: PropTypes.bool, + isLCP: PropTypes.bool, +} + +export default CompanyLayoutNew diff --git a/src/client/index.jsx b/src/client/index.jsx index af9af101671..fdb56b06f76 100644 --- a/src/client/index.jsx +++ b/src/client/index.jsx @@ -22,7 +22,6 @@ import EditCompanyList from '../apps/company-lists/client/EditCompanyList' import CreateListForm from '../apps/company-lists/client/CreateListForm' import ManageAdviser from '../apps/companies/apps/advisers/client/ManageAdviser' import CompanyBusinessDetails from '../apps/companies/apps/business-details/client/CompanyBusinessDetails' -import CompanyOverview from '../apps/companies/apps/company-overview/client/CompanyOverview' import ExportsIndex from '../apps/companies/apps/exports/client/ExportsIndex' import ExportsHistory from '../apps/companies/apps/exports/client/ExportsHistory/' import ReferralDetails from '../apps/companies/apps/referrals/details/client/ReferralDetails' @@ -241,9 +240,6 @@ function App() { {(props) => } - - {(props) => } - {(props) => } diff --git a/src/client/modules/Companies/CompanyOverview/CompanyOverview.jsx b/src/client/modules/Companies/CompanyOverview/CompanyOverview.jsx new file mode 100644 index 00000000000..f155b92e7bb --- /dev/null +++ b/src/client/modules/Companies/CompanyOverview/CompanyOverview.jsx @@ -0,0 +1,75 @@ +import React from 'react' +import { GridCol, GridRow } from 'govuk-react' +import styled from 'styled-components' +import { useParams } from 'react-router-dom' + +import { + AccountManagementCard, + ActiveInvestmentProjectsCard, + ActivityCard, + BusinessDetailsCard, + ExportStatusCard, + InvestmentStatusCard, +} from './TableCards' +import { FILTER_FEED_TYPE } from '../../../../apps/companies/apps/activity-feed/constants' +import { CompanyResource } from '../../../components/Resource/index' +import CompanyLayoutNew from '../../../components/Layout/CompanyLayoutNew' + +const CardContainer = styled('div')` + border: 1px solid #b1b4b6; + padding: 20px; + margin-bottom: 20px; +` + +const CompanyOverview = () => { + const { companyId } = useParams() + return ( + + {(company) => ( + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + )} + + ) +} + +export default CompanyOverview diff --git a/src/apps/companies/apps/company-overview/overview-table-cards/AccountManagementCard.jsx b/src/client/modules/Companies/CompanyOverview/TableCards/AccountManagementCard.jsx similarity index 96% rename from src/apps/companies/apps/company-overview/overview-table-cards/AccountManagementCard.jsx rename to src/client/modules/Companies/CompanyOverview/TableCards/AccountManagementCard.jsx index d7a90ab8bf6..71d5a36151f 100644 --- a/src/apps/companies/apps/company-overview/overview-table-cards/AccountManagementCard.jsx +++ b/src/client/modules/Companies/CompanyOverview/TableCards/AccountManagementCard.jsx @@ -4,8 +4,8 @@ import PropTypes from 'prop-types' import styled from 'styled-components' import pluralize from 'pluralize' -import { SummaryTable } from '../../../../../client/components' -import { isItaTierDAccount } from '../../../../../client/modules/Companies/utils' +import { SummaryTable } from '../../../../components' +import { isItaTierDAccount } from '../../utils' import urls from '../../../../../lib/urls' import { buildCellContents } from './transformers' import { diff --git a/src/apps/companies/apps/company-overview/overview-table-cards/ActiveInvestmentProjectsCard.jsx b/src/client/modules/Companies/CompanyOverview/TableCards/ActiveInvestmentProjectsCard.jsx similarity index 98% rename from src/apps/companies/apps/company-overview/overview-table-cards/ActiveInvestmentProjectsCard.jsx rename to src/client/modules/Companies/CompanyOverview/TableCards/ActiveInvestmentProjectsCard.jsx index 33f1108e5a5..5d0a2378170 100644 --- a/src/apps/companies/apps/company-overview/overview-table-cards/ActiveInvestmentProjectsCard.jsx +++ b/src/client/modules/Companies/CompanyOverview/TableCards/ActiveInvestmentProjectsCard.jsx @@ -6,9 +6,9 @@ import { connect } from 'react-redux' import { kebabCase } from 'lodash' import { companies, investments } from '../../../../../lib/urls' -import { Tag } from '../../../../../client/components' +import { Tag } from '../../../../components' import { companyProjectsState2props } from './state' -import { BLUE, GREY_2 } from '../../../../../client/utils/colours' +import { BLUE, GREY_2 } from '../../../../utils/colours' import { buildCellContents } from './transformers' import { StyledSummaryTable, StyledTableRow } from './components' diff --git a/src/apps/companies/apps/company-overview/overview-table-cards/ActivityCard.jsx b/src/client/modules/Companies/CompanyOverview/TableCards/ActivityCard.jsx similarity index 88% rename from src/apps/companies/apps/company-overview/overview-table-cards/ActivityCard.jsx rename to src/client/modules/Companies/CompanyOverview/TableCards/ActivityCard.jsx index 89889bf46df..3ad8ae4fcc0 100644 --- a/src/apps/companies/apps/company-overview/overview-table-cards/ActivityCard.jsx +++ b/src/client/modules/Companies/CompanyOverview/TableCards/ActivityCard.jsx @@ -4,15 +4,15 @@ import PropTypes from 'prop-types' import camelCase from 'camelcase' import styled from 'styled-components' -import { ActivityFeedApp, SummaryTable } from '../../../../../client/components' +import { ActivityFeedApp, SummaryTable } from '../../../../components' import { companies } from '../../../../../lib/urls' -import CompanyActivityFeed from '../../activity-feed/client/CompanyActivityFeed' +import CompanyActivityFeed from '../../../../../apps/companies/apps/activity-feed/client/CompanyActivityFeed' import { StyledLastTableCell, StyledTableCell, StyledTableRow, } from './components' -import { FILTER_KEYS } from '../../activity-feed/constants' +import { FILTER_KEYS } from '../../../../../apps/companies/apps/activity-feed/constants' const StyledSummaryTable = styled(SummaryTable)` margin: 0; diff --git a/src/apps/companies/apps/company-overview/overview-table-cards/BusinessDetailsCard.jsx b/src/client/modules/Companies/CompanyOverview/TableCards/BusinessDetailsCard.jsx similarity index 95% rename from src/apps/companies/apps/company-overview/overview-table-cards/BusinessDetailsCard.jsx rename to src/client/modules/Companies/CompanyOverview/TableCards/BusinessDetailsCard.jsx index 2136173d4f8..12326cf65d5 100644 --- a/src/apps/companies/apps/company-overview/overview-table-cards/BusinessDetailsCard.jsx +++ b/src/client/modules/Companies/CompanyOverview/TableCards/BusinessDetailsCard.jsx @@ -4,8 +4,8 @@ import PropTypes from 'prop-types' import styled from 'styled-components' import { UNITED_KINGDOM_ID } from '../../../../../common/constants' -import { NewWindowLink, SummaryTable } from '../../../../../client/components' -import { currencyGBP } from '../../../../../client/utils/number-utils' +import { NewWindowLink, SummaryTable } from '../../../../components' +import { currencyGBP } from '../../../../utils/number-utils' import urls from '../../../../../lib/urls' import { buildCellContents } from './transformers' import { diff --git a/src/apps/companies/apps/company-overview/overview-table-cards/ExportStatusCard.jsx b/src/client/modules/Companies/CompanyOverview/TableCards/ExportStatusCard.jsx similarity index 96% rename from src/apps/companies/apps/company-overview/overview-table-cards/ExportStatusCard.jsx rename to src/client/modules/Companies/CompanyOverview/TableCards/ExportStatusCard.jsx index b41c721adb4..cb2286d3eda 100644 --- a/src/apps/companies/apps/company-overview/overview-table-cards/ExportStatusCard.jsx +++ b/src/client/modules/Companies/CompanyOverview/TableCards/ExportStatusCard.jsx @@ -5,16 +5,16 @@ import styled from 'styled-components' import { connect } from 'react-redux' import { kebabCase } from 'lodash' -import { SummaryTable, Tag } from '../../../../../client/components' -import Task from '../../../../../client/components/Task' +import { SummaryTable, Tag } from '../../../../components' +import Task from '../../../../components/Task' import { TASK_GET_LATEST_EXPORT_WINS, OVERVIEW_COMPANY_EXPORT_WINS_LIST_ID, exportWinsState2props, } from './state' -import { OVERVIEW__EXPORT_WINS_SUMMARY } from '../../../../../client/actions' -import { format } from '../../../../../client/utils/date' -import { transformExportCountries } from '../../exports/transformer' +import { OVERVIEW__EXPORT_WINS_SUMMARY } from '../../../../actions' +import { format } from '../../../../utils/date' +import { transformExportCountries } from '../../../../../apps/companies/apps/exports/transformer' import { companies } from '../../../../../lib/urls' import { buildCellContents } from './transformers' import { diff --git a/src/apps/companies/apps/company-overview/overview-table-cards/InvestmentStatusCard.jsx b/src/client/modules/Companies/CompanyOverview/TableCards/InvestmentStatusCard.jsx similarity index 95% rename from src/apps/companies/apps/company-overview/overview-table-cards/InvestmentStatusCard.jsx rename to src/client/modules/Companies/CompanyOverview/TableCards/InvestmentStatusCard.jsx index b96d31cd934..9ede240db0d 100644 --- a/src/apps/companies/apps/company-overview/overview-table-cards/InvestmentStatusCard.jsx +++ b/src/client/modules/Companies/CompanyOverview/TableCards/InvestmentStatusCard.jsx @@ -3,15 +3,15 @@ import { Link } from 'govuk-react' import PropTypes from 'prop-types' import { connect } from 'react-redux' -import { SummaryTable } from '../../../../../client/components' +import { SummaryTable } from '../../../../components' import { TASK_GET_PROJECT_WON_COUNT, OVERVIEW_COMPANY_PROJECTS_LIST_ID, companyProjectsState2props, } from './state' -import { OVERVIEW__COMPANY_INVESTMENT_WON_COUNT } from '../../../../../client/actions' +import { OVERVIEW__COMPANY_INVESTMENT_WON_COUNT } from '../../../../actions' import urls from '../../../../../lib/urls' -import Task from '../../../../../client/components/Task' +import Task from '../../../../components/Task' import { StyledLastTableCell, StyledSpan, @@ -19,7 +19,7 @@ import { StyledTableRow, } from './components' -const { format } = require('../../../../../client/utils/date') +const { format } = require('../../../../utils/date') const buildProjectStatusUrl = (companyId, param) => urls.companies.investments.companyInvestmentProjects(companyId) + param diff --git a/src/apps/companies/apps/company-overview/overview-table-cards/components.jsx b/src/client/modules/Companies/CompanyOverview/TableCards/components.jsx similarity index 81% rename from src/apps/companies/apps/company-overview/overview-table-cards/components.jsx rename to src/client/modules/Companies/CompanyOverview/TableCards/components.jsx index 30d80bbd1f1..c0ff10828af 100644 --- a/src/apps/companies/apps/company-overview/overview-table-cards/components.jsx +++ b/src/client/modules/Companies/CompanyOverview/TableCards/components.jsx @@ -5,8 +5,8 @@ import styled from 'styled-components' import { Table } from 'govuk-react' -import { SummaryTable } from '../../../../../client/components' -import { GREY_1 } from '../../../../../client/utils/colours' +import { SummaryTable } from '../../../../components' +import { GREY_1 } from '../../../../utils/colours' export const StyledTableCell = styled(Table.Cell)` border: 0; diff --git a/src/apps/companies/apps/company-overview/overview-table-cards/exportStatusReducer.js b/src/client/modules/Companies/CompanyOverview/TableCards/exportStatusReducer.js similarity index 81% rename from src/apps/companies/apps/company-overview/overview-table-cards/exportStatusReducer.js rename to src/client/modules/Companies/CompanyOverview/TableCards/exportStatusReducer.js index f9cc4ee7d6a..6915c0aed58 100644 --- a/src/apps/companies/apps/company-overview/overview-table-cards/exportStatusReducer.js +++ b/src/client/modules/Companies/CompanyOverview/TableCards/exportStatusReducer.js @@ -1,4 +1,4 @@ -import { OVERVIEW__EXPORT_WINS_SUMMARY } from '../../../../../client/actions' +import { OVERVIEW__EXPORT_WINS_SUMMARY } from '../../../../actions' const initialState = { results: [], diff --git a/src/apps/companies/apps/company-overview/overview-table-cards/index.jsx b/src/client/modules/Companies/CompanyOverview/TableCards/index.jsx similarity index 100% rename from src/apps/companies/apps/company-overview/overview-table-cards/index.jsx rename to src/client/modules/Companies/CompanyOverview/TableCards/index.jsx diff --git a/src/apps/companies/apps/company-overview/overview-table-cards/reducer.js b/src/client/modules/Companies/CompanyOverview/TableCards/reducer.js similarity index 95% rename from src/apps/companies/apps/company-overview/overview-table-cards/reducer.js rename to src/client/modules/Companies/CompanyOverview/TableCards/reducer.js index 6a33a4d6b85..4d7289362b8 100644 --- a/src/apps/companies/apps/company-overview/overview-table-cards/reducer.js +++ b/src/client/modules/Companies/CompanyOverview/TableCards/reducer.js @@ -1,7 +1,7 @@ import { camelCase } from 'lodash' -import { OVERVIEW__COMPANY_INVESTMENT_WON_COUNT } from '../../../../../client/actions' -import { STAGE_ACTIVE } from '../../../../../client/modules/Investments/Projects/constants' +import { OVERVIEW__COMPANY_INVESTMENT_WON_COUNT } from '../../../../actions' +import { STAGE_ACTIVE } from '../../../Investments/Projects/constants' const initialState = { results: [], diff --git a/src/apps/companies/apps/company-overview/overview-table-cards/state.js b/src/client/modules/Companies/CompanyOverview/TableCards/state.js similarity index 86% rename from src/apps/companies/apps/company-overview/overview-table-cards/state.js rename to src/client/modules/Companies/CompanyOverview/TableCards/state.js index e04f9ea5777..93fadc211b2 100644 --- a/src/apps/companies/apps/company-overview/overview-table-cards/state.js +++ b/src/client/modules/Companies/CompanyOverview/TableCards/state.js @@ -1,5 +1,5 @@ -import { SORT_OPTIONS } from '../../../../../client/modules/Contacts/CollectionList/constants' -import { parseQueryString } from '../../../../../client/utils' +import { SORT_OPTIONS } from '../../../Contacts/CollectionList/constants' +import { parseQueryString } from '../../../../utils' export const OVERVIEW_COMPANY_PROJECTS_LIST_ID = 'overviewCompanyProjectsList' export const TASK_GET_PROJECT_WON_COUNT = 'TASK_GET_PROJECT_WON_COUNT' diff --git a/src/apps/companies/apps/company-overview/overview-table-cards/tasks.js b/src/client/modules/Companies/CompanyOverview/TableCards/tasks.js similarity index 86% rename from src/apps/companies/apps/company-overview/overview-table-cards/tasks.js rename to src/client/modules/Companies/CompanyOverview/TableCards/tasks.js index 34e2295504c..1f366da3d18 100644 --- a/src/apps/companies/apps/company-overview/overview-table-cards/tasks.js +++ b/src/client/modules/Companies/CompanyOverview/TableCards/tasks.js @@ -1,7 +1,7 @@ import axios from 'axios' -import { apiProxyAxios } from '../../../../../client/components/Task/utils' -import { NOT_IMPLEMENTED } from '../../exports/client/ExportWins/state' +import { apiProxyAxios } from '../../../../components/Task/utils' +import { NOT_IMPLEMENTED } from '../../../../../apps/companies/apps/exports/client/ExportWins/state' export const getProjectsWon = async ({ companyId }) => { return await apiProxyAxios diff --git a/src/apps/companies/apps/company-overview/overview-table-cards/transformers.js b/src/client/modules/Companies/CompanyOverview/TableCards/transformers.js similarity index 100% rename from src/apps/companies/apps/company-overview/overview-table-cards/transformers.js rename to src/client/modules/Companies/CompanyOverview/TableCards/transformers.js diff --git a/src/client/reducers.js b/src/client/reducers.js index 8b34ae01f3f..0e06712df9d 100644 --- a/src/client/reducers.js +++ b/src/client/reducers.js @@ -49,12 +49,12 @@ import { import { OVERVIEW_COMPANY_EXPORT_WINS_LIST_ID, OVERVIEW_COMPANY_PROJECTS_LIST_ID, -} from '../apps/companies/apps/company-overview/overview-table-cards/state' +} from './modules/Companies/CompanyOverview/TableCards/state.js' import investmentProjectsReducer from './modules/Investments/Projects/reducer' import investmentProjectReducer from './modules/Investments/Projects/investmentProjectReducer' -import overviewInvestmentProjectReducer from '../apps/companies/apps/company-overview/overview-table-cards/reducer' -import overviewExportWinsReducer from '../apps/companies/apps/company-overview/overview-table-cards/exportStatusReducer' +import overviewInvestmentProjectReducer from './modules/Companies/CompanyOverview/TableCards/reducer.js' +import overviewExportWinsReducer from './modules/Companies/CompanyOverview/TableCards/exportStatusReducer.js' import { ID as COMPANIES_ID } from './modules/Companies/CollectionList/state' import companiesReducer from './modules/Companies/CollectionList/reducer' diff --git a/src/client/routes.js b/src/client/routes.js index dfa9a5a0adf..4f00c04146e 100644 --- a/src/client/routes.js +++ b/src/client/routes.js @@ -81,6 +81,7 @@ import SelectOrderCompany from './modules/Omis/CreateOrder/CompanySelect' import CreateOrder from './modules/Omis/CreateOrder/CreateOrder' import PaymentReceipt from './modules/Omis/PaymentReceipt' import { TaskFormAdd, TaskFormEdit } from './modules/Tasks/TaskForm' +import CompanyOverview from './modules/Companies/CompanyOverview/CompanyOverview' const routes = { companies: [ @@ -164,6 +165,11 @@ const routes = { module: 'datahub:companies', component: ReferralHelp, }, + { + path: '/companies/:companyId/overview', + module: 'datahub:companies', + component: CompanyOverview, + }, ], contacts: [ { diff --git a/src/client/tasks.js b/src/client/tasks.js index 8e0a448f03c..9a4f1ef6aa2 100644 --- a/src/client/tasks.js +++ b/src/client/tasks.js @@ -104,8 +104,8 @@ import * as investmentProjectTasks from './modules/Investments/Projects/tasks' import { TASK_GET_LATEST_EXPORT_WINS, TASK_GET_PROJECT_WON_COUNT, -} from '../apps/companies/apps/company-overview/overview-table-cards/state' -import * as overviewInvestmentProjectTasks from '../apps/companies/apps/company-overview/overview-table-cards/tasks' +} from './modules/Companies/CompanyOverview/TableCards/state.js' +import * as overviewInvestmentProjectTasks from './modules/Companies/CompanyOverview/TableCards/tasks.js' import { TASK_SEARCH_COMPANY, diff --git a/test/component/cypress/specs/Companies/CompanyOverview/AccountManagementCard.cy.jsx b/test/component/cypress/specs/Companies/CompanyOverview/AccountManagementCard.cy.jsx index fdc7f287a71..4dfa66dbd5e 100644 --- a/test/component/cypress/specs/Companies/CompanyOverview/AccountManagementCard.cy.jsx +++ b/test/component/cypress/specs/Companies/CompanyOverview/AccountManagementCard.cy.jsx @@ -1,6 +1,6 @@ import React from 'react' -import { AccountManagementCard } from '../../../../../../src/apps/companies/apps/company-overview/overview-table-cards' +import { AccountManagementCard } from '../../../../../../src/client/modules/Companies/CompanyOverview/TableCards' import { assertSummaryTable, diff --git a/test/component/cypress/specs/Companies/CompanyOverview/BusinessDetailsCard.cy.jsx b/test/component/cypress/specs/Companies/CompanyOverview/BusinessDetailsCard.cy.jsx index 7fcef9e8811..962859ad839 100644 --- a/test/component/cypress/specs/Companies/CompanyOverview/BusinessDetailsCard.cy.jsx +++ b/test/component/cypress/specs/Companies/CompanyOverview/BusinessDetailsCard.cy.jsx @@ -1,6 +1,6 @@ import React from 'react' -import { BusinessDetailsCard } from '../../../../../../src/apps/companies/apps/company-overview/overview-table-cards' +import { BusinessDetailsCard } from '../../../../../../src/client/modules/Companies/CompanyOverview/TableCards' import { currencyGBP } from '../../../../../../src/client/utils/number-utils' import { diff --git a/test/component/cypress/specs/Companies/CompanyOverview/ExportStatusCard.cy.jsx b/test/component/cypress/specs/Companies/CompanyOverview/ExportStatusCard.cy.jsx index 2bee611855d..04cdd720a00 100644 --- a/test/component/cypress/specs/Companies/CompanyOverview/ExportStatusCard.cy.jsx +++ b/test/component/cypress/specs/Companies/CompanyOverview/ExportStatusCard.cy.jsx @@ -17,7 +17,7 @@ import { numberOfCurrentExportCountries, numberOfFutureInterestCountries, SUBSEGMENT, -} from '../../../../../../src/apps/companies/apps/company-overview/overview-table-cards/ExportStatusCard' +} from '../../../../../../src/client/modules/Companies/CompanyOverview/TableCards/ExportStatusCard' function convertCountriesListToString(listOfCountries) { let appendValue = Array.from(listOfCountries.values()).map(