Skip to content

Commit

Permalink
feat(j-s): CaseFiles for connected cases
Browse files Browse the repository at this point in the history
  • Loading branch information
unakb committed Jul 16, 2024
1 parent 08a7b97 commit 5960365
Show file tree
Hide file tree
Showing 7 changed files with 70 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -311,7 +311,7 @@ export const include: Includeable[] = [
model: CaseFile,
as: 'caseFiles',
required: false,
where: { state: { [Op.not]: CaseFileState.DELETED }, category: null },
where: { state: { [Op.not]: CaseFileState.DELETED } },
separate: true,
},
{ model: Institution, as: 'court' },
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
import { defineMessages } from 'react-intl'

export const strings = defineMessages({
heading: {
id: 'judicial.system.core:connected_case_files_accordion.heading',
defaultMessage: 'Gögn úr máli {caseNumber}',
description:
'Notaður sem titill fyrir gögn úr sameinuðu ákærumáli á dómara skjá',
},
})
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
import React, { FC } from 'react'
import { useIntl } from 'react-intl'

import { AccordionItem } from '@island.is/island-ui/core'

import { Case } from '@island.is/judicial-system-web/src/graphql/schema'
import { strings } from './ConnectedCaseFilesAccordionItem.strings'

import { IndictmentCaseFilesList } from '@island.is/judicial-system-web/src/components'

interface Props {
connectedCase: Case
}

const ConnectedCaseFilesAccordionItem: FC<Props> = ({ connectedCase }) => {
const { formatMessage } = useIntl()
const { caseFiles, courtCaseNumber } = connectedCase

if (!courtCaseNumber || !caseFiles || caseFiles.length < 1) {
return null
}

return (
<AccordionItem
id="connectedCaseFiles"
labelVariant="h3"
label={formatMessage(strings.heading, {
caseNumber: connectedCase.courtCaseNumber,
})}
>
<IndictmentCaseFilesList
workingCase={connectedCase}
displayHeading={false}
/>
</AccordionItem>
)
}

export default ConnectedCaseFilesAccordionItem
Original file line number Diff line number Diff line change
Expand Up @@ -275,6 +275,7 @@ query Case($input: CaseQueryInput!) {
mergedCases {
id
courtCaseNumber
type
court {
id
name
Expand All @@ -301,6 +302,7 @@ query Case($input: CaseQueryInput!) {
state
key
size
category
}
policeCaseNumbers
indictmentSubtypes
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ import { strings } from './IndictmentCaseFilesList.strings'

interface Props {
workingCase: Case
displayHeading?: boolean
}

interface RenderFilesProps {
Expand Down Expand Up @@ -57,7 +58,10 @@ export const RenderFiles: FC<Props & RenderFilesProps> = ({
)
}

const IndictmentCaseFilesList: FC<Props> = ({ workingCase }) => {
const IndictmentCaseFilesList: FC<Props> = ({
workingCase,
displayHeading = true,
}) => {
const { formatMessage } = useIntl()
const { user } = useContext(UserContext)
const { onOpen, fileNotFound, dismissFileNotFound } = useFileList({
Expand Down Expand Up @@ -93,7 +97,9 @@ const IndictmentCaseFilesList: FC<Props> = ({ workingCase }) => {

return (
<>
<SectionHeading title={formatMessage(strings.title)} />
{displayHeading && (
<SectionHeading title={formatMessage(strings.title)} />
)}
{indictments && indictments.length > 0 && (
<Box marginBottom={5}>
<Text variant="h4" as="h4" marginBottom={1}>
Expand Down
3 changes: 2 additions & 1 deletion apps/judicial-system/web/src/components/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ export {
default as CheckboxList,
type CheckboxInfo,
} from './CheckboxList/CheckboxList'
export { default as ConnectedCaseFilesAccordionItem } from './AccordionItems/ConnectedCaseFilesAccordionItem/ConnectedCaseFilesAccordionItem'
export { default as CommentsAccordionItem } from './AccordionItems/CommentsAccordionItem/CommentsAccordionItem'
export { default as ConclusionDraft } from './ConclusionDraft/ConclusionDraft'
export { default as ContextMenu } from './ContextMenu/ContextMenu'
Expand Down Expand Up @@ -53,7 +54,7 @@ export { default as ParentCaseFiles } from './ParentCaseFiles/ParentCaseFiles'
export { default as PdfButton } from './PdfButton/PdfButton'
export { default as PoliceRequestAccordionItem } from './AccordionItems/PoliceRequestAccordionItem/PoliceRequestAccordionItem'
export { default as ProsecutorSelection } from './ProsecutorSelection/ProsecutorSelection'
export { RenderFiles } from './IndictmentCaseFilesList/IndictmentCaseFilesList'
export { RenderFiles, } from './IndictmentCaseFilesList/IndictmentCaseFilesList'
export { default as RestrictionTags } from './RestrictionTags/RestrictionTags'
export { default as RulingAccordionItem } from './AccordionItems/RulingAccordionItem/RulingAccordionItem'
export { default as RulingInput } from './RulingInput/RulingInput'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ import {
PageLayout,
PageTitle,
useIndictmentsLawsBroken,
ConnectedCaseFilesAccordionItem,
} from '@island.is/judicial-system-web/src/components'
import {
CaseState,
Expand Down Expand Up @@ -103,6 +104,13 @@ const IndictmentOverview = () => {
<IndictmentsLawsBrokenAccordionItem workingCase={workingCase} />
</Box>
)}
{workingCase.mergedCases &&
workingCase.mergedCases.length > 0 &&
workingCase.mergedCases.map((mergedCase) => (
<Box marginBottom={5}>
<ConnectedCaseFilesAccordionItem connectedCase={mergedCase} />
</Box>
))}
{workingCase.caseFiles && (
<Box component="section" marginBottom={10}>
<IndictmentCaseFilesList workingCase={workingCase} />
Expand Down

0 comments on commit 5960365

Please sign in to comment.